p-video-2-pro
p-video-pro video generation from text and first/last-frame images by Pruna
p-video-2-pro is Pruna's video generation model. It supports text-to-video and first/last-frame conditioning at 480p and 768p. Duration is 5–15 seconds (default 5). Output is 24 fps and includes generated audio. Audio input is not exposed.
mode selects the generation recipe: speed (default, faster), quality, or cost. prompt_upsampler is independent: off, turbo (default), or max.
Rate Limit: 250 requests per minute
Category: Video Generation
Pricing: billed per second of the video returned.
| Configuration | Price |
|---|---|
| 480p, mode=cost | $0.01 per second |
| 480p, mode=speed | $0.02 per second |
| 480p, mode=quality | $0.04 per second |
| 768p, mode=cost | $0.025 per second |
| 768p, mode=speed | $0.035 per second |
| 768p, mode=quality | $0.075 per second |
The length is measured from the finished video rather than from the request, so the final price is known once generation completes. Omitted mode is billed as speed. prompt_upsampler does not change the price. The table shows list prices; until October 13, 2026 the billed rate is 50% off.
Quickstart
Section titled “Quickstart”Text-to-Video (Asynchronous)
Section titled “Text-to-Video (Asynchronous)”curl -X POST 'https://api.pruna.ai/v1/predictions' \ -H 'Content-Type: application/json' \ -H 'apikey: YOUR_API_KEY' \ -H 'Model: p-video-2-pro' \ -d '{ "input": { "prompt": "A sports car drifting through a neon-lit city at night, cinematic aerial shot", "duration": 5, "resolution": "768p", "aspect_ratio": "16:9" } }'Text-to-Video (Synchronous)
Section titled “Text-to-Video (Synchronous)”curl -X POST 'https://api.pruna.ai/v1/predictions' \ -H 'Content-Type: application/json' \ -H 'apikey: YOUR_API_KEY' \ -H 'Model: p-video-2-pro' \ -H 'Try-Sync: true' \ -d '{ "input": { "prompt": "A sports car drifting through a neon-lit city at night, cinematic aerial shot", "duration": 5, "resolution": "480p", "mode": "speed" } }'Image-to-Video (first frame)
Section titled “Image-to-Video (first frame)”curl -X POST "https://api.pruna.ai/v1/files" \ -H "apikey: YOUR_API_KEY" \ -F "content=@/path/to/your/file.jpg"curl -X POST 'https://api.pruna.ai/v1/predictions' \ -H 'Content-Type: application/json' \ -H 'apikey: YOUR_API_KEY' \ -H 'Model: p-video-2-pro' \ -d '{ "input": { "prompt": "The camera slowly pushes in, the person turns their head and smiles", "image": "https://api.pruna.ai/v1/files/fqadqq42xq", "duration": 5, "resolution": "768p" } }'Parameters
Section titled “Parameters”Required Parameters
Section titled “Required Parameters”| Parameter | Type | Description |
|---|---|---|
| prompt | string | Text prompt for video generation |
Optional Parameters
Section titled “Optional Parameters”| Parameter | Type | Default | Description |
|---|---|---|---|
| prompt_upsampler | string | "turbo" | Expand the prompt before generation: "off", "turbo", or "max". Independent of mode |
| image | string (URI) | — | First-frame reference image |
| last_frame_image | string (URI) | — | Last-frame reference image |
| duration | integer | 5 | Video duration in seconds (5-15) |
| resolution | string | "768p" | "480p" or "768p" |
| mode | string | "speed" | Generation recipe: "quality", "speed", or "cost" |
| aspect_ratio | string | "16:9" | "16:9", "9:16", "4:3", "3:4", "3:2", "2:3", "1:1". Reference images determine the canvas when provided |
| seed | integer | random | Random seed for reproducible generation |