API Documentation
Qubico/mmaudio API Reference
Complete API documentation for the MMAudio model supporting video-to-audio generation, creating synchronized audio from video content.
Quick Start
Get started with MMAudio model in minutes
Base URL
https://api.qubico.ai/v1/inference
Header Params
x-api-key: YOUR_API_KEY
Model ID
Qubico/mmaudio
Video-to-Audio Generation
Generate synchronized audio from video content
Request Example
POST https://api.qubico.ai/v1/inference Content-Type: application/json x-api-key: YOUR_API_KEY { "model": "Qubico/mmaudio", "input": { "video": "https://example.com/input-video.mp4", "prompt": "Natural outdoor sounds with birds chirping", "negative_prompt": "music, speech, artificial sounds", "steps": 25, "seeds": 48511119825268 }, "config": { "webhook_config": { "endpoint": "https://your-webhook.com/callback", "secret": "your_webhook_secret" } } }
Response Example
{ "task_id": "task_12345678", "status": "pending", "model": "Qubico/mmaudio", "created_at": "2024-01-15T10:30:00Z", "estimated_time": 45 }
Parameters Reference
Complete list of available parameters for MMAudio model
Required Parameters
model
string
required
Model identifier. Must be "Qubico/mmaudio"
input.prompt
string
required
Prompt text for audio generation. Maximum 500 characters.
input.video
string
required
Base64 or URL of the input video (mp4 only). Maximum duration: 60 seconds.
Optional Parameters
input.negative_prompt
string
optional
Negative prompt text for audio generation. Maximum 200 characters.
input.steps
integer
optional
Number of steps for audio generation. Range: 20-50, Default: 25
input.seeds
integer
optional
Random seed for reproducible results. Usually random and could be selected optional (e.g., 48511119825268)
Configuration Parameters
config.webhook_config
object
optional
Webhook configuration for async notifications
endpoint
- Webhook URLsecret
- Webhook secret for verificationResponse Format
Understanding API responses and status codes
Initial Response (202 Accepted)
{ "task_id": "task_12345678", "status": "pending", "model": "Qubico/mmaudio", "created_at": "2024-01-15T10:30:00Z", "estimated_time": 45 }
Completed Response (GET /v1/tasks/task_id)
{ "task_id": "task_12345678", "status": "completed", "model": "Qubico/mmaudio", "created_at": "2024-01-15T10:30:00Z", "completed_at": "2024-01-15T10:31:15Z", "results": [ { "url": "https://cdn.qubico.ai/results/audio_1.wav", "duration": 10.0, "format": "wav", "sample_rate": 16000, "channels": 1 } ], "usage": { "credits_used": 1, "processing_time": 75.2 } }
Status Values
pending
Task is queuedprocessing
Task is being processedcompleted
Task completed successfullyfailed
Task failed with errorError Handling
Common error codes and how to handle them
400 Bad Request: Invalid parameters or malformed request body
401 Unauthorized: Invalid or missing API key
413 Payload Too Large: Video file exceeds maximum size limit
429 Too Many Requests: Rate limit exceeded
500 Internal Server Error: Server error, please retry
Error Response Format
{ "error": { "code": "INVALID_VIDEO_FORMAT", "message": "Video format not supported. Please use MP4, AVI, or MOV format.", "details": { "provided_format": "webm", "supported_formats": ["mp4", "avi", "mov"] } } }
Code Examples
Ready-to-use code snippets in popular languages
curl -X POST https://api.qubico.ai/v1/inference \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY" \ -d '{ "model": "Qubico/mmaudio", "input": { "video": "https://example.com/input-video.mp4", "prompt": "Natural outdoor sounds with birds chirping", "negative_prompt": "music, speech, artificial sounds", "steps": 25, "seeds": 48511119825268 }, "config": { "webhook_config": { "endpoint": "https://your-webhook.com/callback", "secret": "your_webhook_secret" } } }'
Rate Limits & Pricing
Usage limits and cost information
Rate Limits
Requests per minute:
20
Concurrent tasks:
5
Daily requests:
500
Pricing
Video-to-Audio:
$0.05/second
Free trial credits:
200 seconds