- copiada a skill editar-por-voz e seus critérios para as skills do projeto - adaptada a skill editar-por-voz para usar o banco SQLite como fonte oficial - corrigida a cópia do JSON do tipo de vídeo para priorizar clipboard Unicode - criado carregador único do contexto de edição por voz a partir do SQLite - criada entrada para registrar planos no SQLite e reaproveitar o mesmo plano na aplicação - habilitado carregamento do plano editorial diretamente do SQLite na interface - corrigido o bloqueio visual da etapa de carregamento do plano salvo - configurado carregamento automático do plano salvo após selecionar a sequência - documentada a sequência como raiz de retomada do fluxo de edição - criada a estrutura local para análise de músicas instrumentais com Essentia Resumo: - 22 arquivos alterados - 11 novos - 11 modificados - 0 removidos 11 files changed, 270 insertions(+), 34 deletions(-) Arquivos: - .jhonny/analises.db - CONTEXT.md - code/cep-plugin/index.html - code/cep-plugin/main.js - code/engine/README.md - code/engine/aplicar_plano_de_edicao.py - code/engine/integracoes/audio/__init__.py - code/engine/persistencia/consultas.py - code/engine/requirements-audio.txt - code/engine/testes/test_consultas_de_persistencia.py - code/tests/cep-tipos-video-encoding.test.ts - code/.jhonny/ - code/engine/carregar_plano_de_edicao.py - code/engine/integracoes/audio/contratos.py - code/engine/integracoes/audio/modelos_de_analise_musical.py - code/engine/integracoes/audio/provider_de_analise_musical_essentia.py - code/engine/preparar_edicao_por_voz.py - code/engine/registrar_plano_de_edicao.py - code/engine/testes/test_analisador_de_musica_essentia.py - code/engine/testes/test_carregar_plano_de_edicao.py - code/engine/testes/test_registrar_plano_de_edicao.py - code/plugins/premiere-pro/skills/editar-por-voz/
2.2 KiB
02 — Triagem: roteiro vs. conversa de bastidor
Escopo: Separar o texto do roteiro da conversa de bastidor — tarefa de texto, nunca de limiar. Quando: Fase 2 — ver a ordem de trabalho em
../SKILL.md.
Primeira coisa a fazer, antes de qualquer decisão de efeito.
Material bruto de gravação quase nunca é uma tomada só. A pessoa lê o roteiro, erra, conversa com a equipe e recomeça.
Por que isso é tarefa sua, e não do sistema
No áudio essa separação é invisível — e pior: o índice de ênfase favorece a conversa, que é mais solta e mais alta que o texto decorado.
Caso real: a fala mais enfática de um vídeo inteiro (energia 1,00, o topo absoluto da gravação) era "Amor, eu tô intacto!", dita para o marido fora de quadro. Três das sete palavras de maior ênfase do vídeo vinham dessa única frase de bastidor.
Nenhum limiar acústico separa isso. O texto separa sem erro.
Atenção: isso também não é diarização. Num caso real, a pessoa da equipe estava fora do microfone — a diarização a ouvia, mas o Whisper não a transcrevia. As falas a descartar eram da própria protagonista: mesma voz, contexto diferente. "Quem fala" e "isso é tomada válida" são perguntas diferentes.
Descartar — conversa com a equipe
Reconhece-se pelo conteúdo:
- vocativo para alguém da sala — "Amor, eu tô intacto!"
- pergunta operacional — "Posso começar da mastopexia?", "E aí, continua?", "Mas eu vou ter que falar tudo de novo?"
- instrução técnica — "Só clica aí agora na tela.", "Aumenta."
- comentário sobre a própria gravação — "Vou falar só a última frase, só um pouquinho, não pegou?"
Descartar — frases interrompidas
Texto que morre no meio, tipicamente em reticências ou emendando numa pergunta:
- "E tudo isso associado à medida..."
- "Aquela mama com um formato mais estruturado, com o colo que..."
- "de pele..."
Sinais estruturais que ajudam
Use take_boundary para achar onde cada tomada recomeça. Num material
real, as fronteiras (gaps de 3,6s a 19,8s) caíam exatamente nos pontos onde
a médica reiniciava o roteiro — inclusive nas duas retomadas da frase de
abertura.