Pré-requisitos
Instale e carregue estes skills antes de gerar (pule se já estiverem no contexto via @pruna):
| Skill | Descrição | Instalação |
|---|---|---|
generation-diversity | Use ao escrever qualquer prompt generativo — semente ritual, estrutura explícita, eixos de cenário e portões de qualidade antes de chamadas de API pagas. | npx skills add PrunaAI/pruna-skills@generation-diversity -y |
video-prompting | Use ao criar prompts de vídeo ou movimento para qualquer modelo generativo — dramaturgia, câmera, movimento seguro fisicamente, âncoras de quadro e encadeamento de clipes. | npx skills add PrunaAI/pruna-skills@video-prompting -y |
audio-prompting | Use ao criar prompts de TTS, música ou som para qualquer modelo generativo de áudio — estilo de diretor, estrutura de música e camadas de pós-produção. | npx skills add PrunaAI/pruna-skills@audio-prompting -y |
pruna-api | Use antes de qualquer chamada HTTP Pruna ou Replicate — credenciais, upload/poll/download, lotes paralelos e segurança do agente. | npx skills add PrunaAI/pruna-skills@pruna-api -y |
Ou instale o pacote completo uma vez: npx skills add PrunaAI/pruna-skills@pruna -y
Siga as seções Antes de gerar / craft de cada skill — não reafirme o conteúdo do guia aqui.
Hábito do agente
Roteamento: `p-video-2-pro` é o clipe de geração cinematográfica (texto / primeiro quadro / primeiro+último quadro) com áudio gerado. Use `p-video-2` quando o briefing precisar de 1080p, áudio importado ou visualizações de rascunho. Use `p-video` para rascunhos mais baratos e rápidos. Apenas apresentador falando (sem áudio de cena nativa) → `p-video-avatar`. Edição por instrução de filmagens existentes → `p-video-edit`.
Na primeira resposta, nomeie `p-video-2-pro` entre crases, confirme PRUNA_API_KEY (ou pare com links de cadastro de pruna-api), depois peça as entradas necessárias. Aceitação aberta → coleta de esclarecimento generation-diversity antes do primeiro POST. Ao redigir prompts de movimento, siga Craft de prompt (dinâmico + fiel) e video-prompting (p-video-2-pro-prompting) — não cole exemplos do skill. Redirecione quando Quando NÃO usar for mais adequado.
Craft de prompt (dinâmico + fiel)
Cada input.prompt deve ser novo e específico, e deve corresponder ao ritmo do usuário. A diversidade nunca substitui o briefing. Crie deltas vs p-video-2: video-prompting (p-video-2-pro-prompting). Escreva som ou diálogo no prompt — este modelo não tem upload de audio.
| Faça | Não faça |
|---|---|
Execute o ritual de semente aleatória generation-diversity; declare-o; gire ≥2 eixos livres (movimento de câmera, mudança de iluminação, textura, ritmo) quando o briefing permitir | Copie exemplos curl deste skill (sports car, person turns, …) ou reutilize o prompt de uma sessão anterior |
| Bloqueie primeiro os fatos exigidos pelo usuário (sujeito, ação, cena; ABERTURA/MEIO/FECHO quando ancorado em quadro; linha falada / efeito sonoro quando o áudio fizer parte do briefing) | Troque o sujeito ou movimento por um clipe “mais legal” que ignore a solicitação |
Estruture com a dramaturgia de video-prompting — sujeito + ação + cena; adicione câmera, iluminação, estilo e intenção de áudio para finais travados | Strings vagas de apenas clima (cinematic vibe, neon energy) ou um prompt silencioso quando o briefing pediu fala ou trilha sonora |
| Mantenha os falantes em um ou dois; nomeie a linha no prompt | Aglomere um clipe com 3+ rostos falantes, ou envie audio / rascunho / fps (não estão nesta API) |
Mostre o prompt redigido + mode / prompt_upsampler / duration / resolution antes do POST quando o usuário não tiver travado a redação | Regeneração silenciosa com sujeito ou ritmo diferente do aprovado |
Verificação de fidelidade (antes de pagar): se você remover o sujeito/ação/cenário nomeado pelo usuário do prompt, o trabalho está errado — reescreva. Os eixos livres só preenchem o que o briefing deixou em aberto.
Ao mostrar um prompt redigido, ainda nomeie `p-video-2-pro` (guias ajudam no craft; esta ferramenta é dona da chamada).
Limite do skill
Este skill = uma previsão p-video-2-pro por invocação.
Fora do escopo (não execute a partir deste skill):
- Montagem multi-cena, concat, orquestração de subagentes ou lotes paralelos de cena
- Áudio importado / VO misto / 1080p / visualizações de rascunho →
p-video-2 - Transferência de movimento a partir de um vídeo modelo →
p-video-animate - Apenas apresentador falando / apresentador com sincronia labial sem áudio de cena nativa →
p-video-avatar - Edição por instrução de filmagens existentes →
p-video-edit
Se a solicitação exceder um clipe, pare e recomende: image-to-video (um beat), visual-transition-reel (multi-cena visual) ou narrated-multi-scene (multi-cena + VO enviado — esse caminho usa p-video-2).
Quando NÃO usar
Use um skill diferente:
| Skill | Descrição | Instalação |
|---|---|---|
p-video-2 | Use quando alguém quiser um clipe curto polido a partir de texto, imagens ou áudio importado — B-roll 1080p, animação de quadro inicial/final ou uma cena com movimento com faixa mista. Não para clipes de áudio gerado cinematográficos ou apresentadores apenas com fala. | npx skills add PrunaAI/pruna-skills@p-video-2 -y |
p-video | Use quando alguém quiser um clipe curto simples a partir de texto ou imagens — B-roll rápido, rascunhos ou animação de quadro inicial/final. Não quando o briefing precisar de geração cinematográfica, maior qualidade, sincronia labial precisa ou áudio importado em 1080p. | npx skills add PrunaAI/pruna-skills@p-video -y |
p-video-avatar | Use quando alguém quiser uma pessoa na câmera falando um roteiro — apresentador com sincronia labial, porta-voz ou avatar narrado a partir de uma foto de retrato. | npx skills add PrunaAI/pruna-skills@p-video-avatar -y |
p-video-animate | Use quando alguém quiser que uma foto se mova como outro vídeo — transferência de movimento, remixes de dança ou variações de performance a partir de um clipe modelo. | npx skills add PrunaAI/pruna-skills@p-video-animate -y |
p-video-replace | Use quando alguém quiser trocar uma pessoa, roupa ou produto dentro de filmagens existentes mantendo o movimento da câmera e o áudio. | npx skills add PrunaAI/pruna-skills@p-video-replace -y |
p-video-edit | Use quando alguém quiser editar um vídeo existente com uma instrução de texto — recolorir, reestilizar, remover ou adicionar objetos, mudar ambiente ou iluminação, atualizar texto na tela ou aplicar edições opcionais de produto e acessórios guiadas por referência. Não para um novo clipe do zero ou montagem ffmpeg. | npx skills add PrunaAI/pruna-skills@p-video-edit -y |
video-editing | Use ao montar ou polir clipes já renderizados com ffmpeg — concat, crossfades, legendas e subtítulos incorporados, sobreposições de texto/logo, controles deslizantes antes/depois, bases de música de fundo, exportação para plataforma — ou ao compor um vídeo combinado HTML multicamada com Hyperframes. Não para geração de vídeo por IA, craft de prompt ou edições de vídeo baseadas em modelo. | npx skills add PrunaAI/pruna-skills@video-editing -y |
HTTP (curl)
Upload para imagem-para-vídeo / âncoras de quadro
curl -X POST "https://api.pruna.ai/v1/files" \
-H "apikey: ${PRUNA_API_KEY}" \
-F "content=@/caminho/para/primeiro-quadro.png"
Passe urls.get como input.image (primeiro quadro) e/ou input.last_frame_image (último quadro). Não envie áudio para este modelo.
Criar (texto-para-vídeo assíncrono — recomendado)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-d '{
"input": {
"prompt": "Um carro esportivo derrapando em uma cidade iluminada por néon à noite, cena aérea cinematográfica",
"duration": 5,
"resolution": "768p",
"aspect_ratio": "16:9"
}
}'
Poll e download: siga pruna-api.
Complete o ritual de semente aleatória de generation-diversity antes de escrever prompts — não passe a string do ritual como seed da API.
A cobrança é por segundo retornado (não pela duration solicitada). Limite de taxa: 250 requisições por minuto.
| Resolução | mode=cost | mode=speed (padrão) | mode=quality |
|---|---|---|---|
| 480p | $0.01 / s | $0.02 / s | $0.04 / s |
| 768p | $0.025 / s | $0.035 / s | $0.075 / s |
cost tem a mesma qualidade de saída que speed, mas é mais barato e lento. prompt_upsampler não altera o preço.
Imagem-para-vídeo (primeiro quadro)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-d '{
"input": {
"prompt": "A câmera lentamente se aproxima, a pessoa vira a cabeça e sorri",
"image": "https://api.pruna.ai/v1/files/PRIMEIRO_ID",
"duration": 5,
"resolution": "768p"
}
}'
Primeiro / último quadro (transição visual)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-d '{
"input": {
"prompt": "Comece no herói do produto parado. A câmera segura, depois um lento aproximar enquanto a luz se move sobre o metal. Termine exatamente no packshot do último quadro, legível, sem adereços extras.",
"image": "https://api.pruna.ai/v1/files/ID_INICIO",
"last_frame_image": "https://api.pruna.ai/v1/files/ID_FIM",
"duration": 8,
"resolution": "768p",
"mode": "speed",
"prompt_upsampler": "turbo"
}
}'
Não há triplo de âncora de cena neste modelo (audio não está exposto). VO / música enviada → p-video-2.
Criar (síncrono — teste rápido apenas)
curl -X POST 'https://api.pruna.ai/v1/predictions' \
-H 'Content-Type: application/json' \
-H "apikey: ${PRUNA_API_KEY}" \
-H 'Model: p-video-2-pro' \
-H 'Try-Sync: true' \
-d '{
"input": {
"prompt": "Um carro esportivo derrapando em uma cidade iluminada por néon à noite, cena aérea cinematográfica",
"duration": 5,
"resolution": "480p",
"mode": "cost"
}
}'
Antes de gerar
- Complete a ordem de leitura do Guia de Pré-requisitos (
generation-diversity→video-prompting). - Semente ritual → redija um prompt de movimento dinâmico + fiel (seção acima) → confirme mode (T2V / I2V / par de quadros),
duration(5–15s, padrão 5),resolution(480p / 768p),mode(cost/speed/quality),prompt_upsamplerepromptcom o usuário. - Notas Pruna: quando
imageoulast_frame_imageestiver definido,aspect_ratioé ignorado (o canvas segue as imagens estáticas). A saída é 24 fps — não enviefps. A saída inclui áudio gerado; escreva som ou diálogo no prompt. Não envieaudio,draft,save_audioouprompt_upsampling. Itere emmode: costquando o preço for a prioridade (mesma qualidade quespeed, mas mais barato e lento) oumode: speedquando o tempo de parede importar (padrão); depois finalize commode: qualityquando a fidelidade importar. Se a solicitação for multi-cena — pare (veja Limite do skill). 4K nativo não é suportado. 1080p / áudio importado / rascunho →p-video-2.
Entrada obrigatória
prompt(string)
Campos opcionais comuns
| Campo | Função |
|---|---|
prompt_upsampler | Expandir o prompt antes da geração: off, turbo (padrão) ou max. Independente de mode |
image | Referência do primeiro quadro; quando definido, aspect_ratio é ignorado (jpg, jpeg, png, webp) |
last_frame_image | Imagem estática opcional do quadro final |
duration | 5–15s (padrão 5) |
resolution | 768p (padrão) ou 480p |
mode | Receita de geração: cost (mesma qualidade que speed, mas mais barato e lento), speed (padrão, mais rápido) ou quality (mais lento, maior fidelidade) |
aspect_ratio | Quando não há imagem de referência: 16:9 (padrão), 9:16, 4:3, 3:4, 3:2, 2:3, 1:1 |
seed | Inteiro para uma reexecução reproduzível; omita para aleatório |
Não envie: audio, draft, fps, save_audio, prompt_upsampling.
Relacionados
Skills relacionados:
| Skill | Descrição | Instalação |
|---|---|---|
p-video-2 | Use quando alguém quiser um clipe curto polido a partir de texto, imagens ou áudio importado — B-roll 1080p, animação de quadro inicial/final ou uma cena com movimento com faixa mista. Não para clipes de áudio gerado cinematográficos ou apresentadores apenas com fala. | npx skills add PrunaAI/pruna-skills@p-video-2 -y |
p-video | Use quando alguém quiser um clipe curto simples a partir de texto ou imagens — B-roll rápido, rascunhos ou animação de quadro inicial/final. Não quando o briefing precisar de geração cinematográfica, maior qualidade, sincronia labial precisa ou áudio importado em 1080p. | npx skills add PrunaAI/pruna-skills@p-video -y |
gemini-3.1-flash-tts | Use quando alguém precisar de narração falada ou voz over — faixas explicativas, linhas documentais ou voz para combinar com vídeo gerado. | npx skills add PrunaAI/[email protected] -y |
image-to-video | Use quando alguém quiser um beat curto de filme a partir de imagens — uma cena narrada, momento de história ou B-roll cinematográfico com voz over opcional. | npx skills add PrunaAI/pruna-skills@image-to-video -y |
visual-transition-reel | Use quando alguém quiser uma montagem com transições entre tomadas — reel de sequência de ação ou peça multi-cena onde a narração é opcional. | npx skills add PrunaAI/pruna-skills@visual-transition-reel -y |
narrated-multi-scene | Use quando alguém quiser uma história em várias partes com voz over — B-roll episódico, promoção em capítulos ou várias cenas de vídeo ligadas sem diálogo em câmera. | npx skills add PrunaAI/pruna-skills@narrated-multi-scene -y |
p-video-avatar | Use quando alguém quiser uma pessoa na câmera falando um roteiro — apresentador com sincronia labial, porta-voz ou avatar narrado a partir de uma foto de retrato. | npx skills add PrunaAI/pruna-skills@p-video-avatar -y |
p-video-animate | Use quando alguém quiser que uma foto se mova como outro vídeo — transferência de movimento, remixes de dança ou variações de performance a partir de um clipe modelo. | npx skills add PrunaAI/pruna-skills@p-video-animate -y |
video-editing | Use ao montar ou polir clipes já renderizados com ffmpeg — concat, crossfades, legendas e subtítulos incorporados, sobreposições de texto/logo, controles deslizantes antes/depois, bases de música de fundo, exportação para plataforma — ou ao compor um vídeo combinado HTML multicamada com Hyperframes. Não para geração de vídeo por IA, craft de prompt ou edições de vídeo baseadas em modelo. | npx skills add PrunaAI/pruna-skills@video-editing -y |