Communitygithub.com

PrunaAI/pruna-skills

텍스트, 이미지 또는 가져온 오디오로 1080p B-롤, 시작/종료 프레임 애니메이션 또는 믹스 트랙이 포함된 모션 샷을 제작할 때 사용합니다. 영화 같은 생성 오디오 클립이나 헤드만 나오는 호스트에는 사용하지 않습니다.

pruna-skills란 무엇인가요?

이 스킬은 PrunaAI의 `p-video-2` 모델을 사용하여 고품질 쇼트 클립을 생성하는 방법을 안내합니다. 텍스트, 이미지, 시작/종료 프레임 또는 가져온 오디오를 입력으로 사용할 수 있으며, 1080p 해상도와 다양한 종횡비를 지원합니다. 프롬프트 작성 시 `generation-diversity` 스킬의 랜덤 시드 의식을 따르고, `video-prompting` 스킬의 극작법, 카메라 움직임, 물리적으로 안전한 모션을 적용하여 역동적이면서도 사용자 요청에 충실한 결과물을 얻을 수 있습니다. 특히 가져온 오디오 파일을 사용할 경우 클립 길이가 오디오 길이에 맞춰지며(최대 20초), 립싱크 품질을 높이기 위해 `save_audio: true` 설정을 권장합니다. 또한 `p-video-2-pro`, `p-video` 등 다른 스킬과의 차이점을 명확히 구분하여 사용자가 적절한 도구를 선택할 수 있도록 도와줍니다.

지원 대상~Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/PrunaAI/pruna-skills/tree/HEAD/skills/video/p-video-2

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

전제 조건

생성하기 전에 다음 스킬들을 설치하고 로드하세요 (@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-apiPruna 또는 Replicate HTTP 호출 전 사용 — 인증, 업로드/폴링/다운로드, 병렬 배치, 에이전트 안전.npx skills add PrunaAI/pruna-skills@pruna-api -y

또는 전체를 한 번에 설치: npx skills add PrunaAI/pruna-skills@pruna -y

각 스킬의 생성 전 / 제작 섹션을 따르세요 — 여기에 가이드 내용을 다시 설명하지 않습니다.

에이전트 습관

라우팅: `p-video-2`는 1080p / 가져온 오디오 / 초안 클립 생성기입니다 (텍스트 / 이미지 / 오디오). 영화 같은 생성 (생성 오디오 사용, 480p / 768p, 첫/마지막 프레임, 오디오 업로드 불가)은 `p-video-2-pro`를 사용하세요. 더 간단하고 빠른 클립은 `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-롤, 초안 또는 시작/종료 프레임 애니메이션. 영화 같은 생성, 최고 품질, 정밀한 립싱크 또는 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 (마지막 프레임)로 전달하세요. input.audio를 위해 같은 방식으로 TTS/음악을 업로드하세요.

생성 (비동기 텍스트-투-비디오 — 권장)

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 / s$0.015 / s
1080p$0.05 / s$0.03 / s

첫 번째 / 마지막 프레임 (시각적 전환)

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–20s; 비워두면 모델이 프롬프트에서 길이를 선택; audio가 설정되면 무시됨
resolution720p (기본값) 또는 1080p
fps24 (기본값) 또는 48
aspect_ratioimage 없을 때: 16:9 (기본값), 9:16, 4:3, 3:4, 3:2, 2:3, 1:1
drafttrue = 더 저렴하고 빠른 미리보기 ($0.015/s 720p, $0.03/s 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-롤, 초안 또는 시작/종료 프레임 애니메이션. 영화 같은 생성, 최고 품질, 정밀한 립싱크 또는 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-롤.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-롤, 챕터별 프로모션, 카메라 대화 없이 연결된 여러 비디오 장면.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.

관련 스킬