# PixVerse C1 Reference to Video PixVerse C1 Fusion composes videos from multiple reference images by combining subjects and environments into a single cohesive scene, supporting structured prompts, multi-image storytelling, and synchronized audio with smooth visual consistency. ## API Information - **Model Slug:** pixverse-c1-reference-to-video - **Branded URL:** https://www.eachlabs.ai/pixverse/pixverse-c1/pixverse-c1-reference-to-video - **Provider:** PixVerse - **Category:** Reference to Video - **Output Type:** video - **Status:** active - **Version:** 0.0.1 - **Base Cost:** Per-second pricing scales with quality and audio:• 360p — $0.030 / $0.040 (no audio / with audio)• 540p — $0.040 / $0.050• 720p — $0.050 / $0.065• 1080p — $0.095 / $0.120Example: a 5-second 720p video with no audio = $0.25. - **Estimated Processing Time:** 220 seconds - **Last Updated:** 2026-04-27 - **Interactive Demo:** https://www.eachlabs.ai/ai-models/pixverse-c1-reference-to-video ## Pricing - **Charge Type:** dynamic - **Pricing Details:** Per-second pricing scales with quality and audio:• 360p — $0.030 / $0.040 (no audio / with audio)• 540p — $0.040 / $0.050• 720p — $0.050 / $0.065• 1080p — $0.095 / $0.120Example: a 5-second 720p video with no audio = $0.25. ### Pricing Rules | Condition | Pricing | | --- | --- | | Rule 1 | Per-second pricing scales with quality and audio:• 360p — $0.030 / $0.040 (no audio / with audio)• 540p — $0.040 / $0.050• 720p — $0.050 / $0.065• 1080p — $0.095 / $0.120Example: a 5-second 720p video with no audio = $0.25. | ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | Yes | - | - | Describe the desired video. Reference an image by its ref_name with @, e.g. '@cat plays at @room'. A space must follow each @ref_name. Max 2048 characters. | | image_references | array | Yes | - | - | Up to 7 reference images. Each item has type (subject or background), an image_url, and a unique ref_name used in the prompt with @ref_name. | | aspect_ratio | string | Yes | 16:9 | 16:9,4:3,1:1,3:4,9:16,2:3,3:2,21:9 | Aspect ratio of the output video. C1 supports: 16:9, 4:3, 1:1, 3:4, 9:16, 2:3, 3:2, 21:9. Default: 16:9. | | duration | string | Yes | 5 | 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 | Duration of the output video in seconds. Range: 1-15 seconds (integer). Default: 5. | | quality | string | Yes | 720p | 360p,540p,720p,1080p | Output video resolution. Options: 360p, 540p, 720p, 1080p. Default: 720p. | | generate_audio_switch | boolean | No | false | - | Enable automatic audio generation for the video. Default: false. | | seed | integer | No | - | 1–2147483647 | Random seed for reproducible results. Range: 1-2147483647. If not provided, a random seed is chosen. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "pixverse-c1-reference-to-video", "input": { "prompt": "Using the @reference image as the environment and composition: a cinematic video of a young @person entering the scene and walking slowly across the grassy field during sunset. The camera follows her gently from behind, slightly handheld. She looks around calmly, then lies down on the grass, staring up at the sky. As time passes, the sunlight fades and the sky gradually transitions from sunset colors into deep blue night. Stars begin to appear, and a shooting star crosses the sky. Soft wind moving the grass and her hair. Emotional, peaceful atmosphere, ultra realistic, smooth motion, cinematic lighting.", "image_references": [ { "type": "background", "ref_name": "reference", "image_url": "https://cdn-us.eachlabs.ai/uploads/1ff21b98-2301-4e38-a53e-2c92582fdde4.png" }, { "type": "subject", "ref_name": "person", "image_url": "https://cdn-us.eachlabs.ai/uploads/13d9d359-796c-4998-9be4-5f3af0680e42.png" } ], "aspect_ratio": "16:9", "duration": "10", "quality": "1080p" } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "string (URL of generated video)", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "X-API-Key: YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `X-API-Key` | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **PixVerse | C1 | Reference to Video Overview** PixVerse | C1 | Reference to Video is an advanced AI model from PixVerse that composes dynamic videos by fusing multiple reference images, such as subjects and backgrounds, into cohesive scenes. Users reference each image by name in the prompt, like "@dog plays at @room," enabling precise control over composition and motion. This **reference-to-video** capability stands out for its film production focus, including action effects, storyboard-to-video conversion, and reference-guided consistency, solving the challenge of maintaining subject fidelity across complex scenes. Developed by PixVerse, a Singapore-based platform founded in 2023, the C1 model targets professional creators needing up to 1080p videos lasting 1 to 15 seconds with synchronized audio. Available via the **PixVerse | C1 | Reference to Video API** on platforms like each::labs, it excels in multi-panel storyboard-to-video workflows, delivering cinematic quality without stitching artifacts. This makes it ideal for efficient video prototyping on eachlabs.ai. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `X-API-Key: YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.