P-Video-Animate

P-Video-Animate is a motion-transfer video model that animates a single reference image using a source video as the motion driver. It preserves the original acting, timing, camera movement, and scene structure from the driving clip while restyling the output around the supplied image. It is well suited to UGC ad variations, meme remixes, character or avatar recasting, and other high-volume creative workflows that need fast, repeatable image-to-video animation with strong motion fidelity.

API Reference
INTEGRATE
Complete technical specification for integration
RequestResponse
Examples4
CODE
Ready-to-use code snippets for common workflows
Guides1
LEARN
Step-by-step tutorials for advanced use cases
Ceramic Fox Workout Coach
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'prunaai:p-video@animate',
positivePrompt: 'Recast the motion from the driving clip onto the ceramic fox workout coach. Preserve the exact workout timing, footwork, arm punches, spin, facial attitude, and camera push-in from the source video while keeping the fox character glossy, hand-painted, charming, and fully consistent. Bright upbeat fitness promo look, crisp studio lighting, clean background, smooth commercial animation, playful athletic energy.',
resolution: '720p',
fps: 24,
seed: 68647,
settings: {
preserveAudio: true
},
inputs: {
referenceImages: [
'https://assets.runware.ai/assets/inputs/b937d869-c730-4ff3-9643-ce59189c86ff.jpg'
],
referenceVideos: [
'https://assets.runware.ai/assets/inputs/875b769c-fd36-4ae7-8e67-f20e86efdd16.mp4'
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "prunaai:p-video@animate",
"positivePrompt": "Recast the motion from the driving clip onto the ceramic fox workout coach. Preserve the exact workout timing, footwork, arm punches, spin, facial attitude, and camera push-in from the source video while keeping the fox character glossy, hand-painted, charming, and fully consistent. Bright upbeat fitness promo look, crisp studio lighting, clean background, smooth commercial animation, playful athletic energy.",
"resolution": "720p",
"fps": 24,
"seed": 68647,
"settings": {
"preserveAudio": True
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/b937d869-c730-4ff3-9643-ce59189c86ff.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/875b769c-fd36-4ae7-8e67-f20e86efdd16.mp4"
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "af99899c-f6c2-461a-b7e3-7f5d6b026613",
"model": "prunaai:p-video@animate",
"positivePrompt": "Recast the motion from the driving clip onto the ceramic fox workout coach. Preserve the exact workout timing, footwork, arm punches, spin, facial attitude, and camera push-in from the source video while keeping the fox character glossy, hand-painted, charming, and fully consistent. Bright upbeat fitness promo look, crisp studio lighting, clean background, smooth commercial animation, playful athletic energy.",
"resolution": "720p",
"fps": 24,
"seed": 68647,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/b937d869-c730-4ff3-9643-ce59189c86ff.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/875b769c-fd36-4ae7-8e67-f20e86efdd16.mp4"
]
}
}
]'runware run prunaai:p-video@animate \
positivePrompt="Recast the motion from the driving clip onto the ceramic fox workout coach. Preserve the exact workout timing, footwork, arm punches, spin, facial attitude, and camera push-in from the source video while keeping the fox character glossy, hand-painted, charming, and fully consistent. Bright upbeat fitness promo look, crisp studio lighting, clean background, smooth commercial animation, playful athletic energy." \
resolution=720p \
fps=24 \
seed=68647 \
settings.preserveAudio=true \
inputs.referenceImages.0=https://assets.runware.ai/assets/inputs/b937d869-c730-4ff3-9643-ce59189c86ff.jpg \
inputs.referenceVideos.0=https://assets.runware.ai/assets/inputs/875b769c-fd36-4ae7-8e67-f20e86efdd16.mp4{
"taskType": "videoInference",
"taskUUID": "af99899c-f6c2-461a-b7e3-7f5d6b026613",
"model": "prunaai:p-video@animate",
"positivePrompt": "Recast the motion from the driving clip onto the ceramic fox workout coach. Preserve the exact workout timing, footwork, arm punches, spin, facial attitude, and camera push-in from the source video while keeping the fox character glossy, hand-painted, charming, and fully consistent. Bright upbeat fitness promo look, crisp studio lighting, clean background, smooth commercial animation, playful athletic energy.",
"resolution": "720p",
"fps": 24,
"seed": 68647,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/b937d869-c730-4ff3-9643-ce59189c86ff.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/875b769c-fd36-4ae7-8e67-f20e86efdd16.mp4"
]
}
}{
"taskType": "videoInference",
"taskUUID": "af99899c-f6c2-461a-b7e3-7f5d6b026613",
"videoUUID": "fc2fae28-7f9f-42a9-bd85-11a2ad41881b",
"videoURL": "https://vm.runware.ai/video/os/a04d20/ws/5/vi/fc2fae28-7f9f-42a9-bd85-11a2ad41881b.mp4",
"seed": 68647,
"cost": 0.1813
}Plush Pangolin Snack Pitch
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'prunaai:p-video@animate',
positivePrompt: 'Animate the reference image as a plush pangolin snack spokesperson, driven exactly by the source clip: match the presenter’s hand raises, pointing beats, head nods, lean-in, product reveal, thumbs-up, and slight handheld camera sway. Keep the teal bomber jacket, soft stitched texture, rounded snout, friendly expression, and snack pouch details from the image. Cheerful UGC commercial energy, clean bright kitchen set, crisp detail, natural motion, stable face, consistent body shape, no extra limbs.',
resolution: '720p',
fps: 48,
seed: 50308,
settings: {
preserveAudio: true
},
inputs: {
referenceImages: [
'https://assets.runware.ai/assets/inputs/3e5e74e2-e9b6-4f28-8ed1-9a6214573d02.jpg'
],
referenceVideos: [
'https://assets.runware.ai/assets/inputs/43cc47b8-3cfa-4ca7-8575-d2874eb7b6bc.mp4'
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "prunaai:p-video@animate",
"positivePrompt": "Animate the reference image as a plush pangolin snack spokesperson, driven exactly by the source clip: match the presenter’s hand raises, pointing beats, head nods, lean-in, product reveal, thumbs-up, and slight handheld camera sway. Keep the teal bomber jacket, soft stitched texture, rounded snout, friendly expression, and snack pouch details from the image. Cheerful UGC commercial energy, clean bright kitchen set, crisp detail, natural motion, stable face, consistent body shape, no extra limbs.",
"resolution": "720p",
"fps": 48,
"seed": 50308,
"settings": {
"preserveAudio": True
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/3e5e74e2-e9b6-4f28-8ed1-9a6214573d02.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/43cc47b8-3cfa-4ca7-8575-d2874eb7b6bc.mp4"
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "e56f969b-8402-4cb3-a792-45a566c91399",
"model": "prunaai:p-video@animate",
"positivePrompt": "Animate the reference image as a plush pangolin snack spokesperson, driven exactly by the source clip: match the presenter’s hand raises, pointing beats, head nods, lean-in, product reveal, thumbs-up, and slight handheld camera sway. Keep the teal bomber jacket, soft stitched texture, rounded snout, friendly expression, and snack pouch details from the image. Cheerful UGC commercial energy, clean bright kitchen set, crisp detail, natural motion, stable face, consistent body shape, no extra limbs.",
"resolution": "720p",
"fps": 48,
"seed": 50308,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/3e5e74e2-e9b6-4f28-8ed1-9a6214573d02.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/43cc47b8-3cfa-4ca7-8575-d2874eb7b6bc.mp4"
]
}
}
]'runware run prunaai:p-video@animate \
positivePrompt="Animate the reference image as a plush pangolin snack spokesperson, driven exactly by the source clip: match the presenter’s hand raises, pointing beats, head nods, lean-in, product reveal, thumbs-up, and slight handheld camera sway. Keep the teal bomber jacket, soft stitched texture, rounded snout, friendly expression, and snack pouch details from the image. Cheerful UGC commercial energy, clean bright kitchen set, crisp detail, natural motion, stable face, consistent body shape, no extra limbs." \
resolution=720p \
fps=48 \
seed=50308 \
settings.preserveAudio=true \
inputs.referenceImages.0=https://assets.runware.ai/assets/inputs/3e5e74e2-e9b6-4f28-8ed1-9a6214573d02.jpg \
inputs.referenceVideos.0=https://assets.runware.ai/assets/inputs/43cc47b8-3cfa-4ca7-8575-d2874eb7b6bc.mp4{
"taskType": "videoInference",
"taskUUID": "e56f969b-8402-4cb3-a792-45a566c91399",
"model": "prunaai:p-video@animate",
"positivePrompt": "Animate the reference image as a plush pangolin snack spokesperson, driven exactly by the source clip: match the presenter’s hand raises, pointing beats, head nods, lean-in, product reveal, thumbs-up, and slight handheld camera sway. Keep the teal bomber jacket, soft stitched texture, rounded snout, friendly expression, and snack pouch details from the image. Cheerful UGC commercial energy, clean bright kitchen set, crisp detail, natural motion, stable face, consistent body shape, no extra limbs.",
"resolution": "720p",
"fps": 48,
"seed": 50308,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/3e5e74e2-e9b6-4f28-8ed1-9a6214573d02.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/43cc47b8-3cfa-4ca7-8575-d2874eb7b6bc.mp4"
]
}
}{
"taskType": "videoInference",
"taskUUID": "e56f969b-8402-4cb3-a792-45a566c91399",
"videoUUID": "71eeaa46-b8a5-44c8-922c-4b86d39576b1",
"videoURL": "https://vm.runware.ai/video/os/a07dlim3/ws/5/vi/71eeaa46-b8a5-44c8-922c-4b86d39576b1.mp4",
"seed": 50308,
"cost": 0.1806
}Photoreal Paramedic Safety Briefing
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'prunaai:p-video@animate',
positivePrompt: 'Real photorealistic person-led emergency safety briefing, preserve the exact body motion, facial timing, hand gestures, pacing, and subtle camera push from the source video. The person should remain a believable live-action paramedic with natural skin detail, realistic uniform fabric, grounded room lighting, accurate shadows, stable identity, and documentary-style realism.',
resolution: '720p',
fps: 24,
seed: 3156,
settings: {
preserveAudio: true
},
inputs: {
referenceImages: [
'https://assets.runware.ai/assets/inputs/9f5ec6f8-4eb2-4028-89ff-f9d16b44d55d.jpg'
],
referenceVideos: [
'https://assets.runware.ai/assets/inputs/de8139b8-5ba0-4d68-a3a7-ffab9f5c799e.mp4'
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "prunaai:p-video@animate",
"positivePrompt": "Real photorealistic person-led emergency safety briefing, preserve the exact body motion, facial timing, hand gestures, pacing, and subtle camera push from the source video. The person should remain a believable live-action paramedic with natural skin detail, realistic uniform fabric, grounded room lighting, accurate shadows, stable identity, and documentary-style realism.",
"resolution": "720p",
"fps": 24,
"seed": 3156,
"settings": {
"preserveAudio": True
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/9f5ec6f8-4eb2-4028-89ff-f9d16b44d55d.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/de8139b8-5ba0-4d68-a3a7-ffab9f5c799e.mp4"
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "1577a131-9c78-45ba-8688-16b3c55231a6",
"model": "prunaai:p-video@animate",
"positivePrompt": "Real photorealistic person-led emergency safety briefing, preserve the exact body motion, facial timing, hand gestures, pacing, and subtle camera push from the source video. The person should remain a believable live-action paramedic with natural skin detail, realistic uniform fabric, grounded room lighting, accurate shadows, stable identity, and documentary-style realism.",
"resolution": "720p",
"fps": 24,
"seed": 3156,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/9f5ec6f8-4eb2-4028-89ff-f9d16b44d55d.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/de8139b8-5ba0-4d68-a3a7-ffab9f5c799e.mp4"
]
}
}
]'runware run prunaai:p-video@animate \
positivePrompt="Real photorealistic person-led emergency safety briefing, preserve the exact body motion, facial timing, hand gestures, pacing, and subtle camera push from the source video. The person should remain a believable live-action paramedic with natural skin detail, realistic uniform fabric, grounded room lighting, accurate shadows, stable identity, and documentary-style realism." \
resolution=720p \
fps=24 \
seed=3156 \
settings.preserveAudio=true \
inputs.referenceImages.0=https://assets.runware.ai/assets/inputs/9f5ec6f8-4eb2-4028-89ff-f9d16b44d55d.jpg \
inputs.referenceVideos.0=https://assets.runware.ai/assets/inputs/de8139b8-5ba0-4d68-a3a7-ffab9f5c799e.mp4{
"taskType": "videoInference",
"taskUUID": "1577a131-9c78-45ba-8688-16b3c55231a6",
"model": "prunaai:p-video@animate",
"positivePrompt": "Real photorealistic person-led emergency safety briefing, preserve the exact body motion, facial timing, hand gestures, pacing, and subtle camera push from the source video. The person should remain a believable live-action paramedic with natural skin detail, realistic uniform fabric, grounded room lighting, accurate shadows, stable identity, and documentary-style realism.",
"resolution": "720p",
"fps": 24,
"seed": 3156,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/9f5ec6f8-4eb2-4028-89ff-f9d16b44d55d.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/de8139b8-5ba0-4d68-a3a7-ffab9f5c799e.mp4"
]
}
}{
"taskType": "videoInference",
"taskUUID": "1577a131-9c78-45ba-8688-16b3c55231a6",
"videoUUID": "b09661e7-19ae-4f9a-8ca8-073ee746c786",
"videoURL": "https://vm.runware.ai/video/os/a09dlim3/ws/5/vi/b09661e7-19ae-4f9a-8ca8-073ee746c786.mp4",
"seed": 3156,
"cost": 0.1813
}Photoreal Woman Product Pitch
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'prunaai:p-video@animate',
positivePrompt: 'Animate the real photorealistic woman from the reference image to follow the source video\'s exact speaking rhythm, facial expressions, hand gestures, head turns, posture shifts, and camera framing. Preserve her realistic identity, natural skin texture, hairstyle, wardrobe, accurate fingers, believable eye contact, and smooth human motion. Create a polished vertical UGC-style product pitch with crisp detail and natural lighting.',
resolution: '1080p',
fps: 24,
seed: 78646,
settings: {
preserveAudio: true
},
inputs: {
referenceImages: [
'https://assets.runware.ai/assets/inputs/b228e58a-1bec-4402-98f2-2e97502ce763.jpg'
],
referenceVideos: [
'https://assets.runware.ai/assets/inputs/3b2add90-90a6-4fb2-ba28-c413c76d0275.mp4'
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "prunaai:p-video@animate",
"positivePrompt": "Animate the real photorealistic woman from the reference image to follow the source video's exact speaking rhythm, facial expressions, hand gestures, head turns, posture shifts, and camera framing. Preserve her realistic identity, natural skin texture, hairstyle, wardrobe, accurate fingers, believable eye contact, and smooth human motion. Create a polished vertical UGC-style product pitch with crisp detail and natural lighting.",
"resolution": "1080p",
"fps": 24,
"seed": 78646,
"settings": {
"preserveAudio": True
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/b228e58a-1bec-4402-98f2-2e97502ce763.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/3b2add90-90a6-4fb2-ba28-c413c76d0275.mp4"
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "videoInference",
"taskUUID": "b06bd806-3cd7-4ccc-ab1b-04ae66d76104",
"model": "prunaai:p-video@animate",
"positivePrompt": "Animate the real photorealistic woman from the reference image to follow the source video's exact speaking rhythm, facial expressions, hand gestures, head turns, posture shifts, and camera framing. Preserve her realistic identity, natural skin texture, hairstyle, wardrobe, accurate fingers, believable eye contact, and smooth human motion. Create a polished vertical UGC-style product pitch with crisp detail and natural lighting.",
"resolution": "1080p",
"fps": 24,
"seed": 78646,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/b228e58a-1bec-4402-98f2-2e97502ce763.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/3b2add90-90a6-4fb2-ba28-c413c76d0275.mp4"
]
}
}
]'runware run prunaai:p-video@animate \
positivePrompt="Animate the real photorealistic woman from the reference image to follow the source video's exact speaking rhythm, facial expressions, hand gestures, head turns, posture shifts, and camera framing. Preserve her realistic identity, natural skin texture, hairstyle, wardrobe, accurate fingers, believable eye contact, and smooth human motion. Create a polished vertical UGC-style product pitch with crisp detail and natural lighting." \
resolution=1080p \
fps=24 \
seed=78646 \
settings.preserveAudio=true \
inputs.referenceImages.0=https://assets.runware.ai/assets/inputs/b228e58a-1bec-4402-98f2-2e97502ce763.jpg \
inputs.referenceVideos.0=https://assets.runware.ai/assets/inputs/3b2add90-90a6-4fb2-ba28-c413c76d0275.mp4{
"taskType": "videoInference",
"taskUUID": "b06bd806-3cd7-4ccc-ab1b-04ae66d76104",
"model": "prunaai:p-video@animate",
"positivePrompt": "Animate the real photorealistic woman from the reference image to follow the source video's exact speaking rhythm, facial expressions, hand gestures, head turns, posture shifts, and camera framing. Preserve her realistic identity, natural skin texture, hairstyle, wardrobe, accurate fingers, believable eye contact, and smooth human motion. Create a polished vertical UGC-style product pitch with crisp detail and natural lighting.",
"resolution": "1080p",
"fps": 24,
"seed": 78646,
"settings": {
"preserveAudio": true
},
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/b228e58a-1bec-4402-98f2-2e97502ce763.jpg"
],
"referenceVideos": [
"https://assets.runware.ai/assets/inputs/3b2add90-90a6-4fb2-ba28-c413c76d0275.mp4"
]
}
}{
"taskType": "videoInference",
"taskUUID": "b06bd806-3cd7-4ccc-ab1b-04ae66d76104",
"videoUUID": "4e8f631c-7008-41e3-9664-56c48c25107c",
"videoURL": "https://vm.runware.ai/video/os/a06dlim3/ws/5/vi/4e8f631c-7008-41e3-9664-56c48c25107c.mp4",
"seed": 78646,
"cost": 0.1088
}