- 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/
4.9 KiB
10 — A revisão humana: o que acontece com o seu JSON
Escopo: O que o app faz com o seu JSON na etapa 5 — muda como escrever as ações. Quando: ler antes da Fase 5 — ver a ordem de trabalho em
../SKILL.md.
Leia antes de decidir cortes e zooms. Muda como escrever as ações, não apenas quais.
Seu JSON não vai direto para a timeline. Ele é salvo como plano de revisão e abre no fluxo de revisão humana do painel, na etapa 5 do Assistente, uma tela onde o editor vê cada frase do roteiro com a sua decisão já aplicada e lapida antes de gerar.
Isso tem duas consequências práticas:
- Suas decisões são lidas por uma pessoa, frase a frase. Uma decisão sem motivo explícito parece arbitrária — e será desfeita.
- A tela traduz suas ações para o vocabulário dela. Se você não escrever as ações do jeito que essa tradução espera, a intenção se perde no caminho.
Como cada ação sua é lida
O app quebra a gravação em frases (os segmentos do voice timeline) e projeta suas ações sobre elas.
cut
| O corte cobre… | Vira | Na tela |
|---|---|---|
| ≥ 60% da frase | frase desativada | apagada, riscada, reativável num clique |
| só o começo ou só o fim | trim da frase | a frase fica, aparada nas pontas |
| um pedaço no meio | nada em si | só conta para a regra dos 60% |
O trim é encaixado na fronteira de palavra mais próxima. Você não precisa acertar o frame: mire na palavra onde a frase deve começar ou terminar.
O que isso pede de você: decida se está removendo a linha ou aparando uma ponta, e escreva o corte de acordo.
- Removendo a linha → corte a frase inteira, de ponta a ponta.
- Aparando um falso começo → corte só da borda até a palavra onde a fala engata. Um corte que cobre meia frase é ambíguo: passa de 60% e apaga a linha toda, quando você só queria tirar a hesitação.
zoom e text
Qualquer zoom ou text que toque uma frase marca aquela frase como
ênfase — e ênfase, nesta tela, significa duas coisas:
A frase de ênfase recebe zoom E legenda dinâmica. As demais recebem legenda comum.
O nível vem da sua scale:
scale |
Nível na tela | |
|---|---|---|
| 1,15 | 1 — Leve | |
| 1,3 | 2 — Média | |
| 1,5 | 3 — Forte | |
omitida, ou uma ação text |
2 — Média | padrão |
Sem nenhuma ação sua, a tela deriva o nível do peak_emphasis da frase
(< 0,25 → sem ênfase; < 0,45 → leve; < 0,65 → média; acima → forte). A sua
decisão sempre ganha da derivação automática.
O que isso pede de você: escolher a escala com intenção. Ela não é só "quanto amplia" — é o peso que aquela frase terá no vídeo inteiro, incluindo o tratamento da legenda. Um zoom leve numa frase de apoio não é neutro: promove aquela frase a destaque tipográfico também.
marker
Não altera a frase. Continua sendo o seu recado para o editor conferir uma
emenda — e é a ferramenta certa quando você está em dúvida (ver
03-escolha-da-melhor-tomada.md).
reason aparece na tela
Não é campo de log. O texto que você escreve em reason é exibido para o
editor ao lado da frase selecionada, e é o que ele lê antes de manter ou
desfazer a sua decisão.
Escreva para quem está com pressa e vai decidir na hora:
- Bom:
"fecho, pico em 'devolver' (ênfase 0.34) — escala mais forte por ser o fechamento da peça" - Ruim:
"zoom"·"corte necessário"·"melhor tomada"
A regra prática: se o reason não contém o dado que embasou (a palavra, o
número, a comparação entre tomadas), você provavelmente não tinha critério —
tinha impressão.
O que a tela NÃO desfaz por você
- Tempo errado continua errado. A tela mostra suas ações no eixo da mídia original; se você compensou para pós-corte, tudo aparece no lugar errado e o editor não tem como adivinhar o que você quis dizer.
- Excesso de zoom continua excesso. A tela não impõe o teto de 2–4 por
minuto (
07-ritmo.md) — ela mostra o que você mandou. Efeito demais chega ao editor como trabalho de limpeza. - Frase promovida a ênfase sem querer. Como zoom e legenda dinâmica andam juntos, espalhar zooms "de segurança" enche o vídeo de legenda dinâmica. Na dúvida, deixe sem — o editor promove; é mais barato que despromover.
Depois da revisão
O editor pode, na tela: mudar o nível de ênfase (0–3), desativar ou reativar frases, corrigir o texto, aparar as pontas por palavra, reclassificar entre roteiro e bastidor e acrescentar zooms manuais em trechos arbitrários.
O resultado vira um _phrase_review.json e o _phrase_actions.json derivado —
e é esse que a geração usa. Seu JSON é o ponto de partida da conversa, não a
palavra final. Trabalhe para ser um bom ponto de partida: decisões
defensáveis, motivos legíveis e nenhuma escolha que o editor precise desfazer
antes de começar.