Communitygithub.com

Comparação de Edição de Vídeo

Use quando uma entrega de edição 'cut-as-code' precisa de uma revisão estrita lado a lado com sua fonte original, incluindo cortes, variação de velocidade, correção de cor e gráficos.

O que é Comparação de Edição de Vídeo?

Esta skill automatiza a comparação lado a lado entre um vídeo finalizado e sua fonte original, garantindo que todas as edições (cortes, velocidade variável, correção de cor e gráficos) estejam corretamente aplicadas. Ela gera um modo de comparação V1 chamado 'original-vs-final-source-time', onde o painel esquerdo exibe o original continuamente e o painel direito projeta os pixels finais da entrega sobre o relógio da fonte original. Intervalos descartados aparecem em preto, enquanto os mantidos são esticados para a duração original. A skill suporta plataformas como Claude Code, Cursor e Codex, e depende de `ffmpeg`/`ffprobe` e Python com Pillow. O processo inclui verificação automática de duração, largura, amostras pretas, correspondência de quadros e continuidade de áudio, gerando um resumo de verificação e atualizando a estrutura do projeto.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/WhiteTowerAI/cut-as-code/tree/main/skills/video-edit-compare

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Comparação de Edição de Vídeo faz?

Renderize o modo de comparação V1 único: original-vs-final-source-time.

O painel esquerdo reproduz o original continuamente. O painel direito projeta os pixels reais da entrega final de volta no relógio da fonte original. Intervalos descartados são pretos, intervalos finais mantidos são esticados para sua duração original, e o áudio é copiado do original.

Dependências

Requer ffmpeg/ffprobe no PATH e Python com Pillow. Verifique-os antes de processar a mídia.

Entradas

  • work/timeline.json: mapeamento cronológico canônico de fonte para programa
  • input/original-video.mp4: fonte original
  • final/final-video.mp4: entrega real após todas as edições selecionadas

Não compare com um plano de corte ou uma renderização intermediária. Os pixels finais são necessários para que a revisão inclua correção de cor e cartelas.

Renderização

python scripts/make_compare.py TIMELINE.json SOURCE.mp4 FINAL.mp4 OUT.mp4 [--filter-only]

Exemplo de projeto:

python skills/video-edit-compare/scripts/make_compare.py `
  work/timeline.json `
  input/original-video.mp4 `
  final/final-video.mp4 `
  review/04-edit-compare/original-vs-final-source-time.mp4

O script sempre escreve o durável work/edit-compare/compare-plan.json. Ele escreve imagens de rótulo PIL e o filtergraph gerado sob o descartável work/cache/. --filter-only cria o plano e os arquivos de cache inspecionáveis sem renderizar o vídeo.

Regras de Mapeamento

  • Mantenha os clipes de origem cronológicos, sem sobreposição e de fonte única.
  • Corte o program_range de cada clipe do vídeo final.
  • Estique-o pela velocidade do clipe para recuperar sua duração source_range.
  • Insira preto para cada lacuna de tempo da fonte.
  • Mapeie o áudio original sem reajustá-lo.
  • Derive o quadro inicial e final de cada parte a partir de seus limites absolutos de tempo da fonte, depois corte para essa contagem de quadros e reconstrua o PTS no FPS racional da linha do tempo. Nunca arredonde cada duração de parte independentemente; a concatenação cumulativa com arredondamento causa desvio no tempo da fonte.

Linhas do tempo reordenadas, duplicadas, sobrepostas, com velocidade não linear ou com múltiplas fontes não são suportadas no V1 e devem falhar na validação.

Verificação

Após a renderização, o script verifica automaticamente a saída completa:

  • duração igual a source_duration_s dentro de um quadro;
  • largura da saída igual ao dobro da largura da fonte;
  • toda amostra de intervalo descartado é preta no lado direito;
  • amostras de intervalo mantido correspondem aos quadros do programa final correspondentes;
  • áudio original permanece contínuo e no relógio da fonte.

Em caso de sucesso, ele escreve review/04-edit-compare/comparison-summary.md com um resultado de verificação aprovado. Quando work/project.json existe, ele também adiciona ou atualiza o nó de revisão original-vs-final-source-time, registra as revisões exatas das operações ativas em based_on e atualiza START-HERE.md. Não crie um manifesto de verificações separado.

Esta comparação é uma entrega de revisão, não uma pré-visualização padrão. Gere-a após a renderização final existir.

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

Habilidades Relacionadas