Communitygithub.com

alyshadotmd/video-editing

Adiciona legendas embutidas em vídeos verticais (9:16) de pessoas falando: timings exatos de palavras, uma palavra por vez ou pequenos trechos divididos por sentido, fonte Figtree Bold com contorno branco e opção de destaque de cor, posicionadas na área segura sem sobrepor o rosto ou o título. Feito para Claude Code e Runneth. Use após a edição básica e o título, quando for solicitado legendas ou palavras na tela.

O que é video-editing?

Este skill automatiza a criação de legendas que o espectador lê sem esforço, projetadas para vídeos verticais (9:16) com pessoas falando. Ele gera legendas com timings exatos de cada palavra, podendo exibir uma palavra por vez ou pequenos trechos de 1 a 5 palavras divididos por sentido (mantendo juntos nomes, verbos e pensamentos completos). As legendas usam a fonte Figtree Bold, na cor branca com contorno preto, e têm a opção de destacar em outra cor (padrão amarelo brilhante #FFFF3A) a palavra sendo dita em cada momento. O skill posiciona automaticamente as legendas centralizadas na altura do peito (entre y 1260 e 1305 em um quadro 1080x1920), dentro da área segura definida pelo skill post-preview (x 100 a 880, y 290 a 1340), garantindo que nunca cubram o rosto, a boca ou o título principal. Ele funciona no Claude Code e no Runneth, exigindo ferramentas gratuitas de vídeo (ffmpeg, ffprobe, python) e a fonte Figtree Bold. O fluxo inclui transcrição com timings de palavra (usando faster-whisper), divisão em chunks, geração de arquivo ASS com tags de espaçamento e renderização final com x264 (crf 14-18). O skill também inclui uma etapa de verificação automática para garantir que cada palavra aparece no tempo certo, dentro da área segura e sem sobreposição facial, e registra regras personalizadas do editor para aprendizado contínuo.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/alyshadotmd/video-editing/tree/HEAD/skills/captions

Perguntar na sua IA favorita

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

Documentação

Legendas

O objetivo: legendas que o espectador lê sem esforço. Cada uma é um pequeno trecho completo de sentido, com o tempo exato da palavra, posicionado no mesmo local durante todo o vídeo.

Esta é a etapa 5 da ordem de edição: corte do a-roll, b-roll, enquadramento, título, legendas. Executa-se sobre o vídeo enquadrado e com título, para que as legendas não interfiram com o título.

Este skill foi desenvolvido para Claude Code e Runneth.

Antes de começar: as ferramentas

No Runneth, tudo já está instalado: pule esta seção.

No Claude Code, este skill precisa das ferramentas gratuitas de vídeo instaladas pelo skill video-editing-setup. Verifique silenciosamente se ~/.video-editing-tools/bin/ffmpeg -version funciona. Se funcionar, use as ferramentas em ~/.video-editing-tools/bin (ffmpeg, ffprobe, python) onde este skill mencionar ffmpeg, ffprobe ou python3, e continue. Caso contrário, siga primeiro o skill video-editing-setup, depois volte aqui.

A fonte: Figtree Bold, a única fonte usada por este skill. É uma fonte gratuita do Google Fonts. Verifique silenciosamente se ela está no computador ou em uma pasta de fontes ao lado do projeto. Se não estiver, pergunte: "Este skill usa Figtree, uma fonte gratuita do Google. Quer que eu baixe para você?" Em caso positivo, baixe o arquivo Figtree Bold do Google Fonts (fonts.google.com/specimen/Figtree) em uma pasta de fontes ao lado do projeto e continue. Essa verificação também se aplica no Runneth.

O que é necessário

  • O vídeo, enquadrado e com o título (ou seu timing).
  • O roteiro, se houver, para que nomes e nomes de produtos sejam escritos corretamente.
  • Quando o título aparece na tela e onde ele está posicionado.

Passo 0: Pergunte sobre o estilo primeiro

Pergunte um de cada vez, aguardando cada resposta:

  1. "Você quer legendas uma palavra por vez ou algumas palavras por vez?"
  2. Apenas para algumas palavras por vez: "Você quer que a palavra sendo dita fique destacada em uma cor diferente?"
  3. Apenas se sim: "Qual cor?" Ofereça amarelo brilhante (#FFFF3A) como padrão, ou a cor da marca.

Passo 1: Obtenha cada palavra com seu tempo

  1. Transcreva o som do próprio vídeo com timings de palavra (faster-whisper base, word_timestamps=True, vad_filter=False). Os timings devem vir deste vídeo exato, porque cada corte os desloca.
  2. Use a grafia do roteiro para nomes, marcas e nomes de produtos, e mantenha o timing da transcrição.
  3. Cada palavra falada recebe uma legenda. Nada que não foi dito recebe legenda.

Passo 2: Divida em trechos por sentido (apenas para algumas palavras por vez)

  1. Geralmente de 1 a 3 palavras por trecho, no máximo cerca de 5 quando isso mantém uma frase inteira e ainda cabe na largura.
  2. Mantenha juntos: um substantivo com suas palavras descritivas ("uma bebida do sono"), nomes ("skill Claude"), um verbo com suas palavras auxiliares ("ir para a cama") e pensamentos curtos completos ("mas foi assim que me senti").
  3. Cada trecho termina em uma palavra que carrega sentido. Palavras pequenas (o, a, de, para, e, porque, que, eu) começam o próximo trecho.
  4. Cada trecho é exibido desde sua primeira palavra até o início do próximo, para que a tela nunca fique vazia no meio de uma frase.
  5. Leia a lista inteira uma vez como um espectador e corrija qualquer quebra que soe estranha.

Passo 3: A aparência

Cada legenda usa Figtree Bold, branca, com contorno preto. Sem caixa, sem sombra, sem animação de entrada: as legendas simplesmente aparecem. Principalmente minúsculas, com I, nomes e marcas em maiúsculas, e sem pontos finais ou vírgulas no final.

  • Uma palavra por vez: cerca de 140px com contorno de 6px, uma palavra na tela por vez. Cada palavra permanece até a próxima começar. Palavras longas encolhem para caber em cerca de 720px de largura. Pule a divisão em trechos do Passo 2.
  • Algumas palavras por vez: cerca de 60px com contorno de 3px, usando os trechos do Passo 2.
    • Com destaque de cor: a palavra sendo dita muda para a cor escolhida dentro do trecho, estilo karaokê.
    • Sem destaque: o trecho inteiro permanece branco.

Passo 4: Onde posicionar

  1. Centralizado, na altura do peito, cerca de y 1260 a 1305 em um vídeo 1080x1920: abaixo do queixo, acima da legenda do aplicativo e dos botões.
  2. Dentro da área segura: As zonas seguras vêm do skill post-preview: mantenha tudo dentro de x 100 a 880, y 290 a 1340 em um quadro 1080x1920 (a única caixa segura para Reels, Stories, Feed, TikTok e Facebook). Consulte o post-preview para ver áreas cobertas exatas quando algo estiver perto da borda. Legendas centralizadas, portanto, mantêm cada letra (incluindo contorno) dentro de x 200 a 880, que tem cerca de 680px de largura, e acima de y 1340. Meça a largura de cada trecho; um trecho muito largo é dividido.
  3. Sem sobrepor o título. Enquanto o título estiver na tela, as legendas ficam abaixo dele com uma folga clara; quando o título estiver baixo, as legendas descem dentro da área segura em vez de se sobreporem a ele.
  4. O mesmo local em todo o vídeo, para que o olho sempre saiba onde olhar.
  5. As legendas ficam abaixo da boca, nunca sobre o rosto. Cada legenda fica longe dos olhos, nariz e boca. Quando o rosto está tão baixo que o local da legenda o cobriria, o problema é o enquadramento: envie de volta para o enquadramento corrigir (ou mova a legenda para baixo dentro da área segura enquanto isso é corrigido).

Passo 5: Criação e gravação

  1. Escreva as legendas como um arquivo de legenda ASS. Com destaque de cor, use um evento por palavra para que a cor acompanhe a fala. O espaçamento entre letras vai em uma tag inline \fsp.
  2. Aponte o renderizador para uma pasta de fontes contendo apenas o arquivo Figtree Bold, para que o peso correto seja usado: ass=legendas.ass:fontsdir=fonts.
  3. Grave em uma passada a partir do vídeo em qualidade total (x264, slow, crf 14 a 18), som copiado sem alterações.

Passo 6: Verifique antes que alguém veja

  1. Cada palavra, uma vez, no tempo certo: compare a lista de legendas com a transcrição, palavra por palavra.
  2. Um quadro de cada trecho: dentro da área segura, nada cortado, nada sobrepondo o título, e a legenda inteira abaixo da boca. Use um detector de rosto ou leia cada quadro; uma legenda sobre qualquer parte do rosto falha na verificação.
  3. Com destaque de cor, a cor acerta a palavra sendo dita, verifique em alguns pontos ao longo do vídeo.

Passo 7: Aprenda com o editor

Quando o editor alterar uma divisão, uma palavra ou a aparência, pergunte o motivo (a menos que ele tenha explicado). Escreva o motivo como uma regra em "Regras de legendas do editor" abaixo, redigida como o que deve ser verdadeiro. Razões que você mesmo criou são marcadas como "(IA)" e nunca alteram as regras.

Regras de legendas do editor

(Vazio para começar. Adicione cada regra que o editor fornecer.)

Individual skills in this repo

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

alyshadotmd/video-editing

Turn raw talking-head footage full of repeated takes (one long recording, or several recordings of the same script) into a tight rough cut. Find every take of every line, judge each take on its words, sound and picture, pick the keeper for each line, and either show the editor the picks first or go straight to the cut. The cut is checked so no word is chopped and no pause is left in before anyone sees it. Built for Claude Code and Runneth. Use when someone uploads raw talking-head footage and asks to find the takes, pick the best ones, make a cut list or rough cut it. Triggers: "process my a-roll", "find my takes", "pick the best takes", "rough cut this", "cut list", "edit my talking head", "which take is best

alyshadotmd/video-editing

Turn raw b-roll footage into a tagged, searchable library of short clips. Watch each b-roll video once, tag every useful moment with timestamps, pick the moments worth keeping (the editor picks, or the AI picks on its own if the editor says so), cut only those picks with a 1-second buffer, and learn the editor's taste from their reasons. Use when someone uploads b-roll, asks to tag, bank or label b-roll, or asks to find a kind of shot ("find me unboxing b-roll"). Triggers: "process my b-roll", "tag this b-roll", "bank this b-roll", "b-roll library", "find me unboxing b-roll", "do we have b-roll of", "label my b-roll

alyshadotmd/video-editing

Plan and place b-roll on a video from its first cut: go through the cut line by line, decide which lines get b-roll and what kind of shot, pull the best matching moments from a tagged b-roll library, list what still needs filming, and place the b-roll once the editor approves. Use after a first cut exists and someone wants b-roll added, asks what b-roll a video needs, or asks for a b-roll shot list. Triggers: "add b-roll", "what b-roll do I need", "b-roll plan", "place the b-roll", "b-roll for this cut", "what should I film for b-roll", "shot list for this edit

Habilidades Relacionadas