P-Video
Premium AI video generation from text, images, and audio by Pruna
P-Video is Pruna's premium video generation model supporting text-to-video, image-to-video, and audio-conditioned generation. It offers up to 1080p resolution at 24 or 48 fps, with configurable duration up to 20 seconds. Built-in prompt upsampling automatically enhances your prompts for better results.
Rate Limit: 250 requests per minute
Category: Video Generation
Pricing:
| Configuration | Price |
|---|---|
| 720p - draft mode is OFF | 0.02$ per second of output video |
| 720p - draft mode is ON | 0.005$ per second of output video |
| 1080p - draft mode is OFF | 0.04$ per second of output video |
| 1080p - draft mode is ON | 0.01$ per second of output video |
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' \ -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" } }'Response:
{ "id": "1zww7deyssrme0csqwr90phzzr", "model": "p-video", "input": { ... }, "get_url": "https://api.pruna.ai/v1/predictions/status/1zww7deyssrme0csqwr90phzzr"}Check status and get results:
curl -X GET 'https://api.pruna.ai/v1/predictions/status/1zww7deyssrme0csqwr90phzzr' \ -H 'apikey: YOUR_API_KEY'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' \ -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", "aspect_ratio": "16:9" } }'Response (if completed within 60 seconds):
{ "status": "succeeded", "generation_url": "/v1/predictions/delivery/xezq/52UGYRrRfqViaKmvYsEnENTh0qLDAWHptQ8jOnEHu7XC6AtKA/output.mp4"}Image-to-Video
Section titled “Image-to-Video”Start with uploading an image
Section titled “Start with uploading an image”curl -X POST "https://api.pruna.ai/v1/files" \ -H "apikey: YOUR_API_KEY" \ -F "content=@/path/to/your/file.jpg"Note: Use -F (form) with @ prefix to upload a file from your local filesystem. The file path should be absolute or relative to your current directory.
Response:
{ "id": "fqadqq42xq", "name": "test.jpg", "content_type": "image/jpeg", "size": 185093, "etag": "\"14e9a51deaac6bee2dd8b5c52d7d0b5f\"", "checksums": { "sha256": "aa10d5d09bcee5cb5d854bd81899308b0cf0c0c50e29d4f00c2c06e51f0e2fe6" }, "metadata": { "content_length": 185093, "width": 1344, "height": 768 }, "created_at": "2025-01-08T18:51:26.729Z", "expires_at": "2025-01-09T18:51:26.729Z", "urls": { "get": "https://api.pruna.ai/v1/files/fqadqq42xq" }}Then pass that image in the "image" field
Section titled “Then pass that image in the "image" field”curl -X POST 'https://api.pruna.ai/v1/predictions' \ -H 'Content-Type: application/json' \ -H 'apikey: YOUR_API_KEY' \ -H 'Model: p-video' \ -d '{ "input": { "prompt": "The camera slowly pushes in, the person turns their head and smiles, gentle wind moves their hair", "image": "https://api.pruna.ai/v1/files/fqadqq42xq", "duration": 5, "resolution": "720p" } }'Note: The image parameter should be a publicly accessible URL. You can upload files using the /v1/files endpoint first. When an input image is provided, the aspect_ratio parameter is ignored.
Audio-Conditioned Video
Section titled “Audio-Conditioned Video”Upload an audio file first
Section titled “Upload an audio file first”curl -X POST "https://api.pruna.ai/v1/files" \ -H "apikey: YOUR_API_KEY" \ -F "content=@/path/to/your/audio.mp3"Then pass the audio URL in the "audio" field
Section titled “Then pass the audio URL in the "audio" field”curl -X POST 'https://api.pruna.ai/v1/predictions' \ -H 'Content-Type: application/json' \ -H 'apikey: YOUR_API_KEY' \ -H 'Model: p-video' \ -d '{ "input": { "prompt": "A musician performing on stage with dramatic lighting", "audio": "https://api.pruna.ai/v1/files/abc123audio", "resolution": "720p", "aspect_ratio": "16:9" } }'Note: When audio is provided, the duration parameter is ignored — the video duration matches the audio length. Supported audio formats: flac, mp3, wav.
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 |
|---|---|---|---|
| image | string (URI) | - | Input image to generate video from (image-to-video). Supports jpg, jpeg, png, webp |
| audio | string (URI) | - | Input audio to condition video generation. Supports flac, mp3, wav |
| duration | integer | 5 | Duration of the video in seconds (1-20). Ignored when audio is provided |
| resolution | string | "720p" | Video resolution: "720p" or "1080p" |
| fps | integer | 24 | Frames per second: 24 or 48 |
| aspect_ratio | string | "16:9" | Aspect ratio of the video. Options: "16:9", "9:16", "4:3", "3:4", "3:2", "2:3", "1:1". Ignored when an input image is provided |
| seed | integer | random | Random seed. Set for reproducible generation |
| draft | boolean | false | Draft mode. Generates a lower-quality preview of the video |
| save_audio | boolean | true | Save the video with audio |
| last_frame_image | string (URI) | - | Reference image for the last frame of the video. Supports jpg, jpeg, png, webp |
| prompt_upsampling | boolean | true | Use prompt upsampling to enhance the prompt |
| disable_safety_filter | boolean | true | Disable safety filter for prompts and input images |
License: https://github.com/Lightricks/LTX-2/blob/main/LICENSE