O que Codex GIF Video faz?
Propósito e Seleção de Saída
Esta Skill é especializada na criação de ativos visuais prontos para edição posterior, sem adicionar legendas, títulos, marca d'água, música, locução ou efeitos sonoros. Texto de locução é usado apenas para entender a ação e a divisão de cenas, não sendo convertido em legendas ou áudio. Requisitos de áudio, legendas e produção de vídeos longos presentes nos materiais de estilo de referência não são instruções de execução para esta Skill.
O usuário pode escolher:
- GIF Curto Original: cada cena mantém os bytes originais retornados pelo serviço e o manifesto.
- Um GIF Longo: concatena várias cenas qualificadas em sequência em um único arquivo
.gif; sem loop de preenchimento, executa uma reprodução completa. - Formato de Vídeo: salva como
.mp4(H.264/yuv420p), contendo apenas o fluxo de vídeo, silencioso, sem legendas. - Ambos: reutiliza as mesmas cenas para exportar tanto o GIF longo quanto o MP4, sem regenerar as cenas.
Segue a escolha explícita do usuário; se disser "fazer GIF", entrega GIF; se disser "formato de vídeo", entrega MP4. Quando não especificado, o padrão é gerar ativos GIF e informa a opção MP4. Quando a duração alvo excede a capacidade de uma única cena, primeiro divide em várias cenas e depois exporta um único arquivo longo, não pode entregar apenas fragmentos soltos. Consulte fluxo de exportação.
Limites de Geração e Entrada
A fonte de imagem dinâmica aceita apenas GIFs que o modelo pode retornar nativamente. Usa as ferramentas nativas da sessão atual do Codex ou a API OpenAI Image oficial selecionada pelo usuário; não usa proxies de terceiros, outros modelos de imagem/vídeo, quadros estáticos empilhados, animação por código, I2V ou interpolação de quadros para simular animação nativa. Mantém o GIF original e a evidência de cada solicitação, sem alterar velocidade, repetir em loop ou congelar quadros para preencher duração.
A concatenação de GIFs longos, a codificação MP4 e o redimensionamento proporcional são exportações derivadas, não podem ser chamadas de geração nativa única do modelo, nem adicionam quadros de movimento real. A re-codificação de GIF pode causar alterações na paleta de cores; dá prioridade ao tamanho original da fonte. Conteúdos longos podem optar por MP4 para reduzir o tamanho.
Prioridade de entrada: instrução explícita da rodada atual → preferred_entry do arquivo codex-gif-video.config.json do projeto → sessão do Codex. Mantém a seleção já salva. Se a entrada nativa falhar, não troca automaticamente para uma API paga. credential_file e budget_file são relativos à raiz do projeto; chaves não entram na Skill, prompts ou logs.
API oficial: primeiro lê official-api.md, usa official_api.py; ignora a verificação de chave gif do Codex. Modo Codex: primeiro executa native_gif.py doctor e verifica o schema real da ferramenta na sessão: deve ter o campo gif, não envia sonda estática apenas com prompt, não inventa parâmetros. Diagnóstico em native-entry.md. O modelo e a capacidade GIF são limitados pelo escopo de liberação da conta e do servidor.
O mesmo lote de autorização compartilha orçamento; por padrão, no máximo 8 solicitações GIF e 3 solicitações de referência; falhas e timeouts também contam. Novas tarefas ou remakes explícitos podem criar um livro-razão independente, registrando a quantidade planejada e mantendo o livro-razão antigo. Não pode limpar créditos para contornar falhas; novas tentativas devem ser explícitas, e mudanças de prompt, parâmetros ou referências devem criar um novo pacote.
Da Necessidade à Cena
- Leia protocolo de chamada, decomponha o alvo em
shots, cada cena com "estado inicial → ação → estado final" explícito. Locução mantém o texto original, não inventa timestamps de áudio; fragmentos repetidos fornecem posição de caractere. - Determine formato de saída, proporção de tela e duração total.
prepareconverte a proporção em pixels: padrão 9:16 → 288×512, 16:9 → 512×288, 1:1 → 512×512; este é o padrão conservador local, não o limite do serviço. Pode especificar explicitamente tamanhos que sejam múltiplos de 16 e atendam aos limites de pixel do serviço. - Duração exata por padrão. Quando
frame_counté omitido, escolhe automaticamente um plano que possa dividir a duração alvo com 2–16 quadros; se o número explícito de quadros for incompatível, reporta erro antes da geração. Só defineduration_policy:quantizequando a aproximação for aceita explicitamente, e divulga o erro. 15 segundos podem ser planejados como 5 segmentos × 3 segundos × 15 quadros, cada quadro durando 200ms; não pode chamar 16 quadros × 310ms de 5 segundos. Taxa de quadros baixa é adequada para ações simples, não garante fluidez cinematográfica. - Recomende estilos depois de comparar candidatos e execute
style_router.py guide --style IDpara ler o texto completo do estilo selecionado. Verifique material, personagem, paleta de cores, ação, enquadramento e restrições visuais; ignore requisitos de legenda, áudio e mecanismo de código do material de referência. Consulte styles.md. - Para consistência de personagem entre cenas, mas sem referência principal do usuário, use
style_router.py reference-prompt --style ID --subject-file FILEpara gerar um plano de prompt de referência principal, depois chame o modelo permitido. Primeiro veja a referência principal real, depois reutilize-a em cada cena e bloqueie as características do personagem estyle_lock; não substitua resultados que sofreram drift pela referência principal. - Escreva o JSON da requisição;
preparecongela prompt, tamanho, plano de tempo, hash do texto do estilo e referência. Verifique parâmetros e duração total antes da geração. Mudanças na requisição usam um novo diretório, não sobrescrevem o antigo.
Geração e Evidência de Origem
Modo oficial: prepare → official_api.py generate, não chama native-request para reserva repetida. Após a primeira cena receber um GIF multi-quadro real, parâmetros técnicos estarem corretos e evidência de origem suficiente, continue; se tamanho, número de quadros ou formato estiverem errados, primeiro localize o problema, não tente novamente todo o grupo cegamente.
Modo Codex: prepare → native-request → chame a ferramenta nativa conforme o schema real (mantenha gif) → import-native. Sem arquivo, use finish-attempt para registrar falha ou desconhecido. Não pode usar model/size/output_format não expostos como campos de ferramenta.
model_evidence.reported_modelsó registra o retorno real do serviço; se faltar, mantém null, não adivinha o modelo.- Requisição oficial pode usar endpoint HTTPS fixo oficial, modelo explicitamente permitido, sem redirecionamento, resposta 200, ID da requisição e hash da requisição como
official_request_evidence. Isso prova a origem da requisição oficial, não significa que o serviço informou o modelo executado. - Origem desconhecida do Codex, comprovante oficial incompleto, conflito de modelo reportado ainda assim não passam. Históricos
unknown/unverifiednão são reescritos automaticamente.
Verificação e Entrega
Leia quality.md. Verificação técnica apenas comprova formato, tamanho, número de quadros, delay, decodificação e variação de pixels; não comprova movimento natural. Verificação real: assista a todos os quadros em velocidade normal, registre identidade, estilo, estrutura, movimento, semântica, loop e clean_visual (sem legendas ou sobreposição de texto). Se Jev estiver disponível, use quadro amostra real e referência principal; quadro amostra estático e faixa de reprodução completa devem ser registrados separadamente.
review vincula o hash do arquivo original; só após todos os requisitos de qualidade serem aprovados, export para ready_gif_assets. Exportação derivada só consome pacotes ready por padrão. Se qualidade técnica e de origem estiverem ok, mas faltar verificação de reprodução completa, pode usar explicitamente --review-copy para criar arquivo pendente de revisão, mantendo rendered_pending_review e itens faltantes; falha visual explícita não pode ser aprovada via modo pendente.
Conforme a escolha do usuário, chame compose_movie.py --out assets.gif ou --out assets.mp4, suportando uma única lista de pacotes ou múltiplos pacotes de cenas. Use apenas um ciclo por cena, mantendo a velocidade original; não adicione legendas ou áudio. Exportação MP4 força apenas um fluxo de vídeo; GIF longo verifica delay real total, tamanho, ordem e reprodução única. Ambos exigem verificação real da imagem; verificação de fluxo não detecta texto queimado na imagem.
Entregue o(s) arquivo(s) selecionado(s), GIFs originais, manifesto, recibo de renderização e escopo restante de verificação. Mantenha resultados históricos e versões corrigidas rastreáveis. Quando o caminho de instalação for um link simbólico, atualize o diretório de origem; empacote excluindo chaves e artefatos de execução.