{"servers":[{"url":"https://api.modellix.ai/api/v1/skywork/segmented-camera-motion"}],"post":{"description":"**[Core Function]** SkyReels Segmented Camera Motion (audio-to-video) generates a talking-avatar video with directed camera movement across time segments. **[Strengths]** Combines an audio-driven avatar with per-segment camera trajectories such as push, pan, crane and rotation. **[Best For]** Dynamic presenter clips and cinematic avatar shots with controlled camera motion. **[Limitations]** Do NOT use this when you need a completely static camera (use single-actor-avatar). It requires first_frame_image and one audio segment; use camera_control_pro for multi-segment or compound moves. mode=std outputs 720p, mode=pro outputs 1080p. **[Routing]** Set a single traj_type plus camera_control_strength for a simple move, or supply camera_control_pro (a list of per-segment {start_time, end_time, traj_type, ...}) for compound motion; choose mode=pro for 1080p.","operationId":"segmentedCameraMotionAsync","requestBody":{"content":{"application/json":{"examples":{"compound":{"summary":"Per-segment compound motion","value":{"audios":["https://example.com/voice.wav"],"camera_control_pro":[{"camera_control_strength":0.7,"end_time":2,"start_time":0,"traj_type":"push_in"},{"camera_control_strength":0.5,"end_time":-1,"start_time":2,"traj_type":"static"}],"first_frame_image":"https://example.com/portrait.png","prompt":"A woman singing in a studio"}},"simple":{"summary":"Single trajectory","value":{"audios":["https://example.com/voice.wav"],"camera_control_strength":0.8,"first_frame_image":"https://example.com/portrait.png","prompt":"A woman singing in a recording studio","traj_type":"push_in"}}},"schema":{"description":"SkyReels segmented camera-motion request (image + audio + camera trajectories).","properties":{"audios":{"description":"Exactly one audio URL (mp3/wav, each segment <=200s).","example":["https://example.com/voice.wav"],"items":{"minLength":1,"type":"string"},"maxItems":1,"minItems":1,"type":"array"},"camera_control_pro":{"description":"Per-segment compound camera motion. When provided, overrides the single traj_type.","items":{"description":"A single camera-motion segment. start_time/end_time ranges must not overlap; end_time=-1 keeps the motion to the end of the clip.","properties":{"camera_control_strength":{"default":0.8,"description":"Strength of the primary trajectory.","example":0.7,"maximum":1,"minimum":0,"type":"number"},"camera_control_strength_2":{"description":"Strength of the second trajectory.","example":0.4,"maximum":1,"minimum":0,"type":"number"},"end_time":{"description":"Segment end time in seconds; -1 means to the end of the clip.","example":2,"type":"number"},"start_time":{"description":"Segment start time in seconds.","example":0,"type":"number"},"traj_type":{"description":"Primary camera trajectory for this segment.","enum":["static","push_in","push_out","pan_left","pan_right","crane_up","crane_down","swing","left_rotation","right_rotation"],"example":"push_in","type":"string"},"traj_type_2":{"description":"Optional second trajectory to combine (dual-motion).","enum":["static","push_in","push_out","pan_left","pan_right","crane_up","crane_down","swing","left_rotation","right_rotation"],"example":"crane_up","type":"string"}},"required":["start_time","end_time","traj_type"],"type":"object"},"type":"array"},"camera_control_strength":{"default":0.8,"description":"Strength of the single camera trajectory.","example":0.8,"maximum":1,"minimum":0,"type":"number"},"first_frame_image":{"description":"Portrait image URL (jpg/jpeg/png/gif/bmp).","example":"https://example.com/portrait.png","minLength":1,"type":"string"},"mode":{"default":"std","description":"Output mode: std returns 720p, pro returns 1080p.","enum":["std","pro"],"example":"std","type":"string"},"prompt":{"description":"Text description of the video (max 512 tokens).","example":"A woman singing in a recording studio","minLength":1,"type":"string"},"traj_type":{"description":"Single camera trajectory; omit to leave unspecified. Takes effect together with camera_control_strength when camera_control_pro is not used.","enum":["static","push_in","push_out","pan_left","pan_right","crane_up","crane_down","swing","left_rotation","right_rotation"],"example":"push_in","type":"string"}},"required":["prompt","first_frame_image","audios"],"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"example":{"code":0,"data":{"get_result":{"method":"GET","url":"https://api.modellix.ai/api/v1/tasks/task-skyreels-camera-001"},"model_id":"skyreels/segmented-camera-motion","status":"pending","task_id":"task-skyreels-camera-001"},"message":"success"},"schema":{"properties":{"code":{"description":"Response code, 0 indicates success","example":0,"type":"integer"},"data":{"description":"Detailed data about the submitted asynchronous task.","properties":{"get_result":{"description":"API information to query the task result","properties":{"method":{"example":"GET","type":"string"},"url":{"example":"https://api.modellix.ai/api/v1/tasks/task-abc123","type":"string"}},"type":"object"},"model_id":{"description":"Model ID in `provider/model` format","example":"skyreels/skyreels-i2v","type":"string"},"status":{"description":"Task status","enum":["pending","processing"],"example":"pending","type":"string"},"task_id":{"description":"Unique task identifier for polling","example":"task-abc123","type":"string"}},"required":["status","task_id","model_id"],"type":"object"},"message":{"description":"Response message","example":"success","type":"string"}},"required":["code","message","data"],"type":"object"}}},"description":"Task submitted successfully"},"400":{"content":{"application/json":{"example":{"code":400,"message":"Invalid parameters: parameter 'prompt' is required"},"schema":{"properties":{"code":{"example":400,"type":"integer"},"message":{"example":"Invalid parameters: parameter 'prompt' is required","type":"string"}},"required":["code","message"],"type":"object"}}},"description":"Invalid request parameters"},"401":{"content":{"application/json":{"example":{"code":401,"message":"Authentication failed: invalid API key"},"schema":{"properties":{"code":{"example":400,"type":"integer"},"message":{"example":"Invalid parameters: parameter 'prompt' is required","type":"string"}},"required":["code","message"],"type":"object"}}},"description":"Unauthorized - Invalid or missing API Key"},"429":{"content":{"application/json":{"example":{"code":429,"message":"Rate limit exceeded: 100 requests per minute, retry after 60 seconds"},"schema":{"properties":{"code":{"example":400,"type":"integer"},"message":{"example":"Invalid parameters: parameter 'prompt' is required","type":"string"}},"required":["code","message"],"type":"object"}}},"description":"Too many requests - Rate limit exceeded","headers":{"X-RateLimit-Limit":{"description":"Maximum requests per minute","schema":{"example":100,"type":"integer"}},"X-RateLimit-Remaining":{"description":"Remaining quota in current window","schema":{"example":0,"type":"integer"}},"X-RateLimit-Reset":{"description":"Rate limit window reset time (Unix timestamp)","schema":{"example":1704067260,"type":"integer"}}}},"500":{"content":{"application/json":{"example":{"code":500,"message":"Internal server error"},"schema":{"properties":{"code":{"example":400,"type":"integer"},"message":{"example":"Invalid parameters: parameter 'prompt' is required","type":"string"}},"required":["code","message"],"type":"object"}}},"description":"Internal server error"}},"summary":"SkyReels Segmented Camera Motion","x-mint":{"href":"skyreels/segmented-camera-motion"}}}