Video Processing
Task progress is available through WebSocket. See Task Progress Query.
Gitruck Cloud video processing APIs provide AI subtitles, rule-based shot segmentation, multimodal shot segmentation, motion-highlight analysis, black border removal, canvas resize, frame interpolation, super resolution, video stabilization, watermark removal, Vaporwave filter effects, project file export, timeline rendering, smart oral cut, video translation dubbing, long-to-short highlights, Character Cut, and B-roll smart arrangement.
General Notes
All video processing APIs use an asynchronous task model:
- Upload file: Call the File Upload API to get a
file_id. - Create task: Call the corresponding processing API (
POST) with thefile_idto create a task and receive atask_id. - Poll for result: Call the query API (
GET) to poll the task status. Results are available whenstatusbecomescompleted.
💡 Tip: Video processing tasks typically take longer. Poll every 5–10 seconds.
API List
| API | Path | Description |
|---|---|---|
| AI Subtitle | /task/video_ai_subtitle | Auto-generate subtitles with translation and style options |
| Video Segment | /task/video_segment | Detect shot boundaries from visual changes and optionally export clips |
| AI Video Segment | /task/video_ai_segment | Split video shots with multimodal semantic understanding and structured grouping |
| Video Motion Cut | /task/video_motion_cut | Detect highlight intervals with obvious motion or camera movement and return structured results only |
| Remove Black Borders | /task/video_blackborder_remove | Auto-detect and remove black borders from video |
| Video Matting | /task/video_matting | Green-screen-free human video matting to a transparent-background video (WebM/VP9 alpha) |
| Canvas Resize | /task/video_canvas_adapt | Resize video to a target canvas size with optional clipping |
| Smart Split-Screen Layout | /task/video_split_screen | Compose 2-16 video clips into one split-screen video with shared layout templates |
| Frame Interpolation | /task/video_interpolate | AI frame interpolation to improve video smoothness |
| Remove Watermark / Remove Subtitles | /task/video_purify | Remove watermarks, logos, or subtitles from video |
| Video Stabilization | /task/video_stabilizer | Anti-shake processing for smoother footage |
| Video Super Resolution | /task/video_upscale | AI upscaling to improve video resolution and clarity |
| Vaporwave Filter | /task/video_vaporwave | Apply a Vaporwave-style color filter to video |
| Project File Export | /task/video_project_struct | Convert a timeline structure into Premiere/FCPX/OTIO/JianYing/CapCut project files (no upload required) |
| Timeline Render | /task/video_timeline_render | Render a timeline structure directly into a final mp4 (shares the timeline model with Project File Export) |
| HTML Animation Render (Layered) | /task/html_animate_render | Composite a long base track + transparent HTML animation particle overlays (not covering the subject) into a final mp4 |
| HTML Animation Render (Simple) | /task/html_render_simple | Composite a video base track + custom HTML animation particles in one pass (full-screen opaque cut-ins / short clips / pure HTML animation) |
| Smart Oral Cut | /task/video_oral_cut | One-click smart editing for talking-head footage: removes retakes and misreads, keeps the last fluent take, shapes pauses by punctuation |
| Video Translation Dubbing | /task/video_translate_dub | Translates the speech in a video or audio file and re-dubs it with the chosen voice, at one consistent speaking rate with subtitles timed to the dub (replaces audio only, picture unchanged) |
| Long-to-Short Highlights | /task/video_long2short | Turn long content into multiple distinct-topic highlight clips: semantic selection + jump cut + word-level cuts (rough cut) |
| Long-to-Short Highlights (Pro) | /task/video_long2short_pro | Rough-cut core plus blurred-background fit / restrained camera moves / pitch-preserving speed / smart subtitles — one-click finished clips |
| Audio-Visual Speaker Detection | /task/video_speaker_detect | Detect visible speakers and fuse ASR, visual tracks, and sentence attribution |
| Character Cut | Available via partnership | Finds a selected person's appearances across a full video while retaining core shots and useful context (partner-only; no API parameters on that page) |
| Video Material Search | /task/video_clip_search | Search editable video clips by description/keywords, returning in-clip time ranges (synchronous, not an async task) |
| B-roll Smart Arrangement | Available via partnership | Arranges your own footage library into B-roll candidate tracks along the script beats: which clip, where, how long; never repeats to fill gaps, footage never leaves your machine (partner-only; no API parameters on that page) |
| External B-roll Search | Available via partnership | Searches public video platforms for B-roll candidates matched to script beats, with low-resolution preview and manual refinement before processing the final selected segments (partner-only; no API parameters on that page) |
Supported File Formats
Video processing APIs currently support mp4, avi, mpg, mov, flv, mxf, mpeg, ogg, 3gp, wmv, h264, m4v, and ts. mkv and webm are not currently supported.
Input Video Specifications
Every video processing API checks the input video before the task is created. If a requirement is not met, the request returns an error code; no task is created and nothing is charged:
- Duration: no longer than 2 hours (otherwise
6019) - Resolution: width and height both 4000 px or less (otherwise
6022). Common 3840×2160 video is accepted; 4096×2160 exceeds the limit - Frame rate: 120 fps or less (otherwise
6023)
Some APIs have stricter limits; see the notes below and each API's documentation. For the complete limits and error codes, see Media File Limits.
Notes
- Frame Interpolation: The current implementation validates that the output side length does not exceed 4000 px.
- Video Segment: Structured shot ranges are returned by default. Set
only_struct=falseto also export clip files. - AI Video Segment: Supports
scene,shot_type,narrative, andsubjectmodes, and automatically chunks long videos before merging results. - Video Motion Cut: The endpoint is currently fixed to the
OpenCVMotionCutengine. No mode selection is exposed, and the API always returns structured results only without exporting clips. - Remove Watermark: Supports two paths: one-shot processing when the target is already known, or detect, review, then process when the user needs to choose and edit candidates. It supports
ffmpegandraft;raftuses neural inpainting and supports videos up to 20 minutes. - Video Super Resolution: The current implementation only supports videos up to 1 minute, and the upscaled output side length must stay within 4000 px.
- Video Matting: input video must be within 10 minutes; longer videos are rejected (error code
6019).
Next Steps
-
Audio-Visual Speaker Detection: The public result returns sampled tracks only. Internal
_frame_tableandframe_detailsare not exposed. Enabledetect_body=trueto include body boxes.