Communitygithub.com

PrunaAI/pruna-skills

當使用者想要從文字、圖片或匯入的音訊中製作高品質短片時使用 — 1080p B-roll、起始/結束幀動畫,或帶有混合音軌的動態鏡頭。不適用於電影級生成音訊片段或僅有主持人說話的影片。

pruna-skills 是什麼?

此技能專門用於透過 Pruna 的 `p-video-2` 模型,從文字、圖片或匯入音訊生成高畫質(最高1080p)短片。它非常適合製作 B-roll、起始/結束幀動畫,或帶有混合音軌的動態鏡頭。對於需要電影級生成或生成音訊的場景,應使用 `p-video-2-pro`。支援的輸入類型包括純文字、圖片轉影片(I2V),以及帶有音訊條件約束的片段。其獨特之處在於強制應用 `generation-diversity` 的隨機種子儀式、`video-prompting` 的劇本結構,以及一個嚴格的「提示忠實度」檢查,確保最終生成的影片忠於使用者的原始指令。技能包含了詳細的 `curl` 範例、完整的API參數說明(如解析度、幀率、草稿模式等),並明確定義了其邊界:一次調用只能生成一個片段。若使用者的需求超出這個範圍(如多場景、虛擬人像、動態轉移),技能會主動停止並引導至其他相關技能。

相容平台~Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/PrunaAI/pruna-skills/tree/HEAD/skills/video/p-video-2

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

先決條件

在生成之前,請先安裝並載入這些技能(如果已透過 @pruna 在上下文中,則可跳過):

技能描述安裝指令
generation-diversity在撰寫任何生成式提示詞時使用 — 包括種子儀式、明確結構、場景軸線,以及在付費API呼叫前的品質門檻。npx skills add PrunaAI/pruna-skills@generation-diversity -y
video-prompting在為任何生成式模型設計影片或動態提示詞時使用 — 包含劇作、運鏡、物理安全的動態、幀錨點,以及片段串聯。npx skills add PrunaAI/pruna-skills@video-prompting -y
audio-prompting在為任何生成式音訊模型設計 TTS、音樂或背景音提示詞時使用 — 導演風格、歌曲結構,以及後期製作分層。npx skills add PrunaAI/pruna-skills@audio-prompting -y
pruna-api在進行任何 Pruna 或 Replicate HTTP 呼叫前使用 — 憑證、上傳/輪詢/下載、並行批次處理,以及代理安全。npx skills add PrunaAI/pruna-skills@pruna-api -y

或一次性安裝完整套件:npx skills add PrunaAI/pruna-skills@pruna -y

請遵循每個技能的 生成前 / 設計章節 — 不要在此重複指南內容。

代理習慣

路徑選擇: `p-video-2` 是 1080p / 匯入音訊 / 草稿 片段的生成器(文字/圖片/音訊)。`p-video-2-pro` 用於電影級生成,搭配生成音訊(480p / 768p,首尾幀,不支援音訊上傳)。`p-video` 用於更簡單、更快速的片段。僅有主持人說話(無原生場景音訊)→ `p-video-avatar`。對現有片段進行指令編輯 → `p-video-edit`。

在第一次回覆中,用反引號標示 `p-video-2`,確認 PRUNA_API_KEY(若無則停止並提供來自 pruna-api 的註冊連結),然後詢問必要的輸入。開啟接收流程 → 在首次 POST 之前進行 generation-diversity 的釐清接收流程。在撰寫動態提示詞時,請遵循 提示詞設計(動態且忠實) 和 video-prompting(p-video-2-prompting)— 不要貼上技能範例。當不使用時機更合適時,請重新導向。

提示詞設計(動態且忠實)

每個 input.prompt 必須是全新的、具體的,並且必須符合使用者的節奏。多樣性絕不能凌駕於簡報之上。相對於 p-video 的差異設計:參見 video-prompting(p-video-2-prompting)。

要做的不要做的
執行 generation-diversity 的隨機種子儀式;指明它;當簡報允許時,旋轉至少 2 個自由軸(運鏡、光線變化、紋理、節奏)複製此技能中的 curl 範例(sports car,person turns,…)或重用先前會話的提示詞
首先鎖定使用者要求的事實(主體、動作節拍、使用幀錨點時的 OPEN/MID/CLOSE、設定 audio 時的口白同步)為了「更酷」的片段而替換主體或動作,從而忽略請求
使用 video-prompting 的劇作結構來組織 — 每個節拍一個固定動作,I2V 使用穩定的運鏡,物理安全的動態模糊的僅心情字串(cinematic vibe, neon energy)或極端的電影運鏡
當設定了 audio,動態和節奏必須與口白/表演節拍匹配;將說話者控制在一或兩位在 VO 播放時偏離到不相關的動作,或用 3+ 個說話面孔塞滿片段
在使用者尚未鎖定措辭時,在 POST 之前展示草擬的提示詞 + 模式欄位在未經批准的情況下,使用不同的主體或節拍悄悄重新生成

忠實度檢查(付費前): 如果你從提示詞中移除了使用者指定的主體/動作/場景,那麼工作就是錯的 — 請重寫。自由軸只能填補簡報中未指定的部分。

在展示草擬的提示詞時,仍需指明 `p-video-2`(指南有助於設計;此工具擁有呼叫權)。

技能邊界

此技能 = 每次調用一個 p-video-2 預測。

超出範圍(請勿從此技能執行):

  • 多場景組合、拼接、子代理編排,或平行場景批次
  • 使用生成音訊(無匯入音軌)的電影級生成 → p-video-2-pro
  • 從模板影片進行動態轉移 → p-video-animate
  • 僅有主持人說話 / 無原生場景音訊的唇形同步主持人 → p-video-avatar
  • 對現有片段進行指令編輯 → p-video-edit

如果需求超過一個片段,請停止並推薦:image-to-video(一個有口白的節拍)、visual-transition-reel(多場景視覺)、或 narrated-multi-scene(多場景 + VO)。

何時不使用

請改用其他技能:

技能描述安裝指令
p-video-2-pro當使用者想要從文字或起始/結束幀生成電影級片段時使用 — 產品廣告、紀錄片鏡頭,或帶有生成音訊的對話。不適用於 1080p、匯入音軌,或僅有主持人說話。npx skills add PrunaAI/pruna-skills@p-video-2-pro -y
p-video當使用者想要從文字或圖片生成簡單短片時使用 — 快速 B-roll、草稿或起始/結束幀動畫。不適用於需要電影級生成、最高品質、嚴格唇形同步或在 1080p 下匯入音訊的情況。npx skills add PrunaAI/pruna-skills@p-video -y
p-video-avatar當使用者想要一個人在鏡頭前朗讀腳本時使用 — 唇形同步主持人、發言人,或從肖像照片創建的口白虛擬人像。npx skills add PrunaAI/pruna-skills@p-video-avatar -y
p-video-animate當使用者想要一張照片像另一部影片一樣移動時使用 — 從模板片段進行動態轉移、舞蹈混音或表演變體。npx skills add PrunaAI/pruna-skills@p-video-animate -y
p-video-replace當使用者想要在現有片段中替換人物、服裝或產品,同時保持運鏡和音訊不變時使用。npx skills add PrunaAI/pruna-skills@p-video-replace -y
p-video-edit當使用者想要透過文字指令編輯現有影片時使用 — 重新著色、重新設計風格、移除或添加物體、改變環境或燈光、更新螢幕上的文字,或套用可選的參考導向產品和配件編輯。不適用於從頭開始創建新片段或 ffmpeg 組合。npx skills add PrunaAI/pruna-skills@p-video-edit -y
video-editing當需要使用 ffmpeg 組合或打磨已渲染的片段時使用 — 連接、交叉淡化、燒錄字幕、文字/標誌疊加、前後滑塊、背景音樂、平台匯出 — 或在使用 Hyperframes 構建多層 HTML 組合影片時使用。不適用於 AI 影片生成、提示詞設計或基於模型的影片編輯。npx skills add PrunaAI/pruna-skills@video-editing -y

HTTP (curl)

上傳圖片以進行圖片轉影片 / 幀錨點

curl -X POST "https://api.pruna.ai/v1/files" \
  -H "apikey: ${PRUNA_API_KEY}" \
  -F "content=@/path/to/first-frame.png"

將 urls.get 作為 input.image(第一幀)和/或 input.last_frame_image(最後一幀)傳入。以相同方式上傳 TTS/音樂作為 input.audio。

創建(非同步文字轉影片 — 推薦)

curl -X POST 'https://api.pruna.ai/v1/predictions' \
  -H 'Content-Type: application/json' \
  -H "apikey: ${PRUNA_API_KEY}" \
  -H 'Model: p-video-2' \
  -d '{
    "input": {
      "prompt": "A sports car drifting through a neon-lit city at night, cinematic aerial shot",
      "duration": 5,
      "resolution": "720p",
      "aspect_ratio": "16:9"
    }
  }'

輪詢和下載:請遵循 pruna-api。

在撰寫提示詞之前,請完成 generation-diversity 中的隨機種子儀式 — 不要將儀式字串作為 API seed 傳入。

計費方式是根據回傳的秒數(而非請求的 duration)。速率限制:每分鐘 250 個請求。

解析度draft=falsedraft=true
720p$0.025 / 秒$0.015 / 秒
1080p$0.05 / 秒$0.03 / 秒

首幀 / 尾幀(視覺轉場)

curl -X POST 'https://api.pruna.ai/v1/predictions' \
  -H 'Content-Type: application/json' \
  -H "apikey: ${PRUNA_API_KEY}" \
  -H 'Model: p-video-2' \
  -d '{
    "input": {
      "prompt": "OPEN: hold wide on wet alley, neon flicker. MID: slow dolly in, rain ticks on pavement. CLOSE: settle on end pose.",
      "image": "https://api.pruna.ai/v1/files/START_ID",
      "last_frame_image": "https://api.pruna.ai/v1/files/END_ID",
      "duration": 5,
      "resolution": "720p",
      "fps": 24
    }
  }'

場景錨點三重奏(image + last_frame_image + audio)

curl -X POST 'https://api.pruna.ai/v1/predictions' \
  -H 'Content-Type: application/json' \
  -H "apikey: ${PRUNA_API_KEY}" \
  -H 'Model: p-video-2' \
  -d '{
    "input": {
      "prompt": "Close-up of a singer performing the uploaded track. Natural lip-sync, expressive face, stage lighting, camera holds steady on the performer.",
      "image": "https://api.pruna.ai/v1/files/SCENE_START",
      "last_frame_image": "https://api.pruna.ai/v1/files/SCENE_END",
      "audio": "https://api.pruna.ai/v1/files/SCENE_NARRATION",
      "resolution": "720p",
      "fps": 24,
      "save_audio": true
    }
  }'

當設定了 audio 時,省略 duration。片段長度 = min(音訊長度, 20s) — 將 TTS 保持在 ≤ ~19s(在渲染前使用 ffprobe)。音訊條件作業按音訊長度計費。

創建(同步 — 僅快速測試)

curl -X POST 'https://api.pruna.ai/v1/predictions' \
  -H 'Content-Type: application/json' \
  -H "apikey: ${PRUNA_API_KEY}" \
  -H 'Model: p-video-2' \
  -H 'Try-Sync: true' \
  -d '{
    "input": {
      "prompt": "A sports car drifting through a neon-lit city at night, cinematic aerial shot",
      "duration": 5,
      "resolution": "720p",
      "draft": true
    }
  }'

生成前

  1. 按順序完成先決條件指南(generation-diversity → video-prompting)。
  2. 儀式種子 → 草擬一個動態且忠實的動態提示詞(上節)→ 與使用者確認模式(T2V / I2V / 幀對 / 音訊)、duration(省略以讓模型從提示詞中選擇,或音訊驅動時)、resolution、fps、draft 和 prompt。
  3. Pruna 注意事項: 當設定了 image,aspect_ratio 會被忽略。使用 audio 時,省略 duration 並保持 save_audio: true(預設)以保留口白。對於鏡頭前說話,從 T2V 原生語音開始(save_audio: true,無匯入 audio)— 停頓 / 台詞 / 休息的唇形同步是相對於 p-video 的品質提升。匯入的 audio 能保持更清晰的面部;視位鎖定效果不一 — 不要將混音後的 wav 視為唇形同步的展示。在 draft: true 模式下迭代,最後再用 draft: false 完成。如果請求是多場景 — 停止(參見技能邊界)。不支援原生 4K。

必要輸入

  • prompt (字串)

常見選用欄位

欄位角色
image第一幀 — I2V 錨點;設定後,aspect_ratio 會被忽略(jpg,jpeg,png,webp)
last_frame_image可選的結束狀態靜態圖片
audio音訊條件約束;持續時間跟隨音訊(上限 20s);flac/mp3/wav
duration1–20 秒;留空以讓模型從提示詞中選擇長度;如果設定了 audio 則忽略
resolution720p(預設)或 1080p
fps24(預設)或 48
aspect_ratio當沒有 image 時:16:9(預設),9:16,4:3,3:4,3:2,2:3,1:1
drafttrue = 更便宜、更快的預覽($0.015/秒 720p,$0.03/秒 1080p);false(預設)= 最終版
save_audio在輸出中保留模型生成或上傳的音訊(預設 true)
prompt_upsampling增強提示詞(預設 true)
seed,disable_safety_filter可再現性 / 用戶端政策

相關

相關技能:

技能描述安裝指令
p-video-2-pro當使用者想要從文字或起始/結束幀生成電影級片段時使用 — 產品廣告、紀錄片鏡頭,或帶有生成音訊的對話。不適用於 1080p、匯入音軌,或僅有主持人說話。npx skills add PrunaAI/pruna-skills@p-video-2-pro -y
p-video當使用者想要從文字或圖片生成簡單短片時使用 — 快速 B-roll、草稿或起始/結束幀動畫。不適用於需要電影級生成、最高品質、嚴格唇形同步或在 1080p 下匯入音訊的情況。npx skills add PrunaAI/pruna-skills@p-video -y
gemini-3.1-flash-tts當使用者需要口白或畫外音時使用 — 解說音軌、紀錄片台詞,或與生成影片搭配的聲音。npx skills add PrunaAI/[email protected] -y
image-to-video當使用者想要從圖片製作一個短片節拍時使用 — 有口白的場景、故事片段,或可選畫外音的電影級 B-roll。npx skills add PrunaAI/pruna-skills@image-to-video -y
visual-transition-reel當使用者想要一個帶有鏡頭間轉場的蒙太奇時使用 — 動作序列短片或多場景作品,口白為可選。npx skills add PrunaAI/pruna-skills@visual-transition-reel -y
narrated-multi-scene當使用者想要一個帶有畫外音的多部分故事時使用 — 章節式 B-roll、章節式宣傳片,或幾個沒有鏡頭前對話的連結影片場景。npx skills add PrunaAI/pruna-skills@narrated-multi-scene -y
p-video-avatar當使用者想要一個人在鏡頭前朗讀腳本時使用 — 唇形同步主持人、發言人,或從肖像照片創建的口白虛擬人像。npx skills add PrunaAI/pruna-skills@p-video-avatar -y
p-video-animate當使用者想要一張照片像另一部影片一樣移動時使用 — 從模板片段進行動態轉移、舞蹈混音或表演變體。npx skills add PrunaAI/pruna-skills@p-video-animate -y
video-editing當需要使用 ffmpeg 組合或打磨已渲染的片段時使用 — 連接、交叉淡化、燒錄字幕、文字/標誌疊加、前後滑塊、背景音樂、平台匯出 — 或在使用 Hyperframes 構建多層 HTML 組合影片時使用。不適用於 AI 影片生成、提示詞設計或基於模型的影片編輯。npx skills add PrunaAI/pruna-skills@video-editing -y

Individual skills in this repo

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

PrunaAI/pruna-skills

Use when someone needs spoken narration or voiceover — explainer tracks, documentary lines, or voice to pair with generated video.

PrunaAI/pruna-skills

Use when someone wants an original AI song with vocals — sung lyrics, a style prompt track, or source audio for a music video.

PrunaAI/pruna-skills

Use when someone needs word-level timestamps from audio — lyric alignment, cut-safe line boundaries, or caption source timing before burn-in with video-editing.

PrunaAI/pruna-skills

Use before any Pruna or Replicate HTTP call — credentials, upload/poll/download, parallel batches, and agent safety.

PrunaAI/pruna-skills

Use when assembling or polishing already-rendered clips with ffmpeg — concat, crossfades, burned captions and subtitles, text/logo overlays, before/after sliders, background music beds, platform export — or when composing a multi-layer HTML combination video with Hyperframes. Not for AI video generation, prompt craft, or model-based video edits.

PrunaAI/pruna-skills

Use when crafting video or motion prompts for any generative model — dramaturgy, camera, physics-safe motion, frame anchors, and clip chaining.

PrunaAI/pruna-skills

Use when someone wants to edit an existing photo — change outfits or backgrounds, compose from reference images, or apply prompt-driven edits.

PrunaAI/pruna-skills

Use when someone explicitly wants the fastest, cheapest photo generation — mood boards, bulk panels, or quick iterations — not when controlled photoreal or in-image text is needed.

PrunaAI/pruna-skills

Use when someone wants virtual try-on — dress a person in clothes from reference photos for fashion or ecommerce.

PrunaAI/pruna-skills

Use when installing the full Pruna generative media suite — all guides, tools, and workflows in one package.

PrunaAI/pruna-skills

Use when someone wants a cinematic clip from text or start/end frames — product ads, documentary shots, or dialogue with generated audio. Not for 1080p, imported audio tracks, or talking-head-only hosts.

PrunaAI/pruna-skills

Use when someone wants to edit an existing video with a text instruction — recolor, restyle, remove or add objects, change environment or lighting, update on-screen text, or apply optional reference-guided product and accessory edits. Not for a new clip from scratch or ffmpeg assembly.

PrunaAI/pruna-skills

Use when someone wants a simple short clip from text or images — quick B-roll, drafts, or start/end frame animation. Not when the brief needs cinematic generation, highest quality, tight lip-sync, or imported audio at 1080p.

相關技能