Communitygithub.com

Notícias em Vídeo (Broadcast News Video)

Crie vídeos de notícias para TV editáveis, com gráficos de código e narração opcional. Ideal para telejornais, vídeos com barra de rolagem ou explicativos no estilo jornalístico.

O que é Notícias em Vídeo (Broadcast News Video)?

Broadcast News Video é uma skill para gerar vídeos de notícias profissionais estilo telejornal, usando apenas gráficos gerados por código — como globo pontilhado na abertura, fundo azul escuro com detalhes rosa, barras de título brancas e legendas bilíngues animadas. Ela foi projetada para agentes como Claude Code ou Cursor em fluxos de automação de mídia, suportando plataformas como HyperFrames 0.9.23. A skill organiza todo o processo: começa validando os fatos com fontes e links em um arquivo `FACTS.md`, depois cria um projeto a partir de um `brief.json` (baseado em exemplo fictício mas obrigatoriamente personalizado). As legendas são sincronizadas automaticamente com a narração, que pode ser gerada via MiniMax API (com chave externa `MINIMAX_API_KEY`) ou fornecida pelo usuário. Ao final, a skill verifica erros de lint/layout, tira snapshots intermediários e renderiza o vídeo final com FFmpeg, entregando tanto o MP4 quanto o projeto editável. A skill evita gerar avatares ou usar serviços de vídeo com créditos, focando estritamente em conteúdo editorial com transparência sobre fontes e licenças.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Potatolclulu/broadcast-news-video-skill/tree/HEAD/skills/broadcast-news-video

Perguntar na sua IA favorita

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

Documentação

Broadcast News Video (Notícias em Vídeo)

Transforme roteiros de notícias em vídeos de telejornal editáveis. Por padrão, produz gráficos de código puro: globo pontilhado na abertura, fundo azul escuro, detalhes em rosa, barras de título brancas, rolagem de informações e legendas bilíngues. Use os scripts desta skill para gerar um projeto HyperFrames.

Defina o conteúdo primeiro

  • Reaproveite o tema, a proporção e o esquema de voz já fornecidos pelo usuário. Padrão: 1920×1080, 30 fps, narração com aceleração de 1,3× mantendo o tom.
  • Para notícias reais, verifique a fonte original e registre a data de publicação, data do evento e data da verificação; distinga entre opinião da mídia, confirmação oficial, resultado esperado e explicação institucional. Salve os links em FACTS.md ao lado do projeto.
  • Ao citar dados reais nos gráficos, indique a fonte. Para pontos ilustrativos, escreva "ilustrativo" e não deixe que a quantidade pareça um resultado real.
  • Consulte as regras de produção para escrever frases curtas para locução e o plano de cada cena. Legendas não devem conter vírgulas ou pontos finais.
  • A menos que seja solicitado, não use avatares digitais ou serviços de geração de vídeo. Não chame geradores de vídeo que consumam créditos por padrão.

Crie o projeto

No comando, defina SKILL_DIR como o diretório deste arquivo e WORK_DIR como o diretório de saída independente do usuário. Não escreva artefatos no diretório da skill.

python3 -m pip install -r "$SKILL_DIR/scripts/requirements.txt"
python3 "$SKILL_DIR/scripts/setup.py" --output "$WORK_DIR"

Copie assets/example.json como brief.json do projeto e adapte-o conforme as regras de configuração para o conteúdo do usuário. O exemplo deve ser claramente marcado como fictício. Troque o nome do canal, data, título, barras de informação e dados das cenas, sem manter a narrativa do exemplo.

Visualização sem narração:

python3 "$SKILL_DIR/scripts/build.py" --brief "$WORK_DIR/brief.json" --output "$WORK_DIR"

O build.py gera, a partir do JSON, a abertura e as cenas cards, dots, flow e quote, uma única faixa de legendas, SRT, linha do tempo e música de fundo combinada. Todo texto visível passa por escape HTML; as animações são conduzidas por timelines GSAP pausadas.

Narração opcional

Priorize o uso de áudio e legendas por cena já fornecidos e autorizados pelo usuário. Não envie vozes particulares para repositórios públicos. Coloque o áudio em voice/ no diretório de saída. O campo voice de cada cena deve referenciar o caminho relativo ao brief.json; captions usa os segundos do áudio original, que são divididos por speed durante a construção.

Se o usuário solicitar narração via MiniMax, use a variável de ambiente externa MINIMAX_API_KEY e o --voice-id especificado pelo usuário. Não coloque chaves em JSON, scripts, documentação, argumentos de linha de comando, nem imprima chaves ou salve respostas brutas da API. Esta interface pode ser cobrada; execute apenas quando o usuário já tiver autorizado a narração.

python3 "$SKILL_DIR/scripts/voice.py" --brief "$WORK_DIR/brief.json" --output "$WORK_DIR/voice" --dry-run
python3 "$SKILL_DIR/scripts/voice.py" --brief "$WORK_DIR/brief.json" --output "$WORK_DIR/voice" --voice-id "$MINIMAX_VOICE_ID" --execute
python3 "$SKILL_DIR/scripts/build.py" --brief "$WORK_DIR/voice/brief.voiced.json" --output "$WORK_DIR"

Após a geração normal, mantenha a aceleração com preservação de tom; as legendas são sincronizadas com a velocidade alterada; a música toca em 1×. Não acelere novamente na renderização. Pare se a requisição paga falhar ou se o resultado for desconhecido; não tente novamente automaticamente. Se timestamps reais da interface forem retornados, use-os; não estime a precisão das legendas a partir de proporções de caracteres.

Verificação e entrega

Requer Node.js 22+ e FFmpeg/FFprobe. Testado com HyperFrames 0.9.23.

npx --yes [email protected] check "$WORK_DIR" --json
npx --yes [email protected] snapshot "$WORK_DIR" --at 1.5,5,10
npx --yes [email protected] preview "$WORK_DIR" --background
npx --yes [email protected] render "$WORK_DIR" --quality delivery --output "$WORK_DIR/news.mp4"
  • Corrija erros de lint/execução/layout; verifique os snapshots no meio de cada cena e inspecione títulos, fontes, legendas, barras de rolagem e o significado dos pontos.
  • Ajuste os tempos de snapshot --at para os pontos médios reais das cenas em timeline.json.
  • Se o usuário solicitar o vídeo final ou tiver autorizado a execução contínua, prossiga para a renderização após a verificação; caso contrário, forneça uma prévia editável.
  • Use FFprobe para conferir duração, resolução, taxa de quadros e faixas de áudio do MP4; use FFmpeg para verificar erros de decodificação. Ouça a locução e a mixagem; se não ouvir, declare isso honestamente.
  • Entregue o MP4, final.srt, snapshots e o projeto editável, mantendo as verificações de fatos e as licenças dos assets.

Compartilhamento público

Empacote apenas a skill e o exemplo neutro. Exclua áudios pessoais, vídeos originais, credenciais, roteiros particulares, respostas de API, caminhos absolutos da máquina local, assets de marca e IDs de voz privados. Primeiro execute scripts/audit.py para escanear o diretório a ser publicado; depois verifique os arquivos rastreados pelo Git e a identidade dos commits — não dependa apenas do .gitignore.

O conteúdo original desta skill usa assets/LICENSE-MIT.txt; GSAP, fontes e mapas baixados mantêm suas próprias licenças, conforme notas de terceiros.

Habilidades Relacionadas