Vídeo de letras
Transforme a gravação do usuário em um vídeo de letras. Trate a precisão da transcrição, a sincronia e o estilo visual como decisões separadas. Preserve a fonte original; renderize revisões em pastas de saída separadas.
Escolha o estilo
Respeite o estilo selecionado ou previamente aprovado pelo usuário. Se nenhum estilo foi definido, faça uma pergunta concisa sobre tipografia, posicionamento e comportamento de revelação antes de definir o visual. Ofereça algumas opções relevantes, como legendas simples, destaque de karaokê ou letras cinéticas ampliadas. Não aplique automaticamente inversão, Impact, maiúsculas, letras esticadas ou margem de 10% em todo vídeo.
Para filmagem invertida dentro de letras ampliadas com revelação progressiva de palavras e linhas dominantes alternadas, leia references/inverted-style.md. Os scripts incluídos implementam esse preset; adapte ou use outro método de renderização para outros estilos, em vez de afirmar que suportam todos os tratamentos.
Use um still representativo e um rascunho curto em movimento quando solicitado. Carregue o estilo aprovado para o vídeo completo; não introduza portões de aprovação repetidos.
Transcreva e revise letras incertas
- Inspecione a duração da fonte, taxa de quadros, dimensões, rotação, espaço/faixa de cores e áudio. Transcreva a gravação e obtenha timestamps acústicos de palavras. Não use palavras uniformemente espaçadas como alinhamento final.
- Verifique reconhecimento incerto, passagens de transcrição conflitantes, frases suspeitas, improvisos e finais cortados. Um segundo modelo pode ajudar, mas concordância não prova exatidão. Diferencie uma letra incerta de um timestamp incerto.
- Se útil, peça referência de música/artista ou letra fornecida. Se a gravação é pessoal, não lançada ou não tem referência disponível, pare de procurar e use a revisão do usuário. Nunca publique a mídia ou letras do usuário com a skill.
- Produza uma transcrição editável com timestamps e uma lista numerada compacta de trechos incertos na ordem de reprodução. Cada item inclui um ID estável, início/fim e palavras circundantes suficientes para localizá-lo. Marque palavras não resolvidas como
[UNCLEAR]em vez de escolher um palpite silenciosamente. Inclua outros erros suspeitos, mesmo que não tenham sido marcados originalmente. Mantenha esta lista inalterada enquanto aguarda correções. - Peça ao usuário para fornecer as palavras faltantes por ID ou nessa ordem. Continue a preparação independente de estilo/exportação. Se autorizado, forneça um corte de revisão com os placeholders e rotule-o claramente; não o chame de versão final.
- Aplique uma resposta ordenada um-para-um aos spans numerados. Verifique se o número de correções corresponde. Se a contagem ou o span pretendido for ambíguo, pergunte apenas sobre esse mapeamento antes de alterar essas palavras. Preserve palavras fornecidas pelo usuário, gírias e letras explícitas. Mencione normalização menor de ortografia; nunca reescreva letras silenciosamente por gramática.
- Expanda correções de múltiplas palavras em palavras individualmente temporizadas e realinhe contra a gravação. Retenha escolhas de layout aprovadas, a menos que a frase precise de reflow. Se a sincronia só puder ser estimada, divulgue isso e mantenha a revisão de sincronia separada da aprovação das palavras. Não force uma frase mais longa em um intervalo minúsculo restante e alegue sincronização precisa. Para um final cortado, explique o que a gravação suporta; pergunte pela continuação ou escolha antes de estender, congelar ou alterar a edição.
- Atualize tanto a transcrição quanto os dados de renderização temporizados, então renderize a partir da fonte original. Verifique todos os spans corrigidos e transições. Pesquise nos dados finais reais de cartão/legenda por
[UNCLEAR], placeholders de interrogação, TODOs e IDs não resolvidos; verifique se cada correção do usuário está presente exatamente uma vez no local pretendido. Não confunda notas de incerteza em um documento de revisão com resquícios na tela. - Quando perguntado se o vídeo está pronto para enviar, reporte separadamente: contagem de placeholders, palavras suspeitas restantes, ressalvas de sincronia e verificação de exportação. Zero placeholders não é prova de transcrição totalmente verificada. Dê uma breve conclusão sem expor raciocínio privado; chame-o de pronto como corte de revisão quando houver problemas não resolvidos.
Sincronia e exportações
Local MLX Whisper com timestamps de palavras é uma rota de transcrição em Apple Silicon. Whisper.cpp DTW pode exigir desabilitar flash attention se retornar t_dtw = -1; rejeite timestamps faltantes. Letras de referência devem ser alinhadas a esta performance específica, incluindo pausas e improvisos.
Renderize a partir da fonte, não de um rascunho comprimido. Preserve o enquadramento da fonte, resolução real, taxa de quadros, interpretação de cores e áudio, a menos que o usuário solicite alterações. Para máxima qualidade, forneça um mestre composto RGB sem perdas e um MP4 compatível de alta qualidade. Upscaling sozinho não recupera detalhes. Verifique restrições de plataforma/codec antes de escolher configurações de exportação.
Verifique duração/contagem de quadros, presença e preservação de áudio, cobertura de início/fim, ajuste de texto, frases parcial e totalmente reveladas, cobertura de correção e o efeito visual escolhido. Forneça links diretos para artefatos e uma prévia inline quando suportado. Mantenha estado de revisão e qualidade de codificação distintos.