Motion transfer
Transfer the motion of a source video onto a character image (face swap style).
source.urlmedia.provided[] with 1 image (the target character)Build your request
Only the parameters that apply to motion-transfer are shown. Set values on the left, copy the payload on the right.
source.urlrequiredThe source content URL: audio file, video file, YouTube link, Spotify track, article page, or PDF depending on the workflow. http(s) is enforced; bare domains get https:// prepended. For character-swap, the video whose people are replaced (a file URL, or a YouTube, TikTok or Instagram link).
media.typeThe visual engine for the video.
media.qualityConvenience profile that picks imageModel + videoModel for you. Explicit media.imageModel / media.videoModel override it.
media.densityHow many distinct visuals per minute of video. More visuals = livelier video and higher generation cost.
media.animationHow still images are animated. Ignored for other media types.
media.mediaPresetVisual style preset slug (e.g. DEFAULT, ANIME, PIXAR, GHIBLI, REALISM, ...). See the preset list in the docs. A preset can override media.imageModel when it requires a specific model. With media.type motion-graphics it is the motion graphics category instead, the create form's category cards: MOTION_INSPIRATION_AUTO (Auto, default: Let the agent choose the best category and reference for your brief), MOTION_INSPIRATION_CLEAN_WORDMARK (Minimal & type: Spacious layouts, expressive typography and focused graphic reveals), MOTION_INSPIRATION_PRODUCT_DEMOS (Product demos: Interface walkthroughs, cursor actions and clear feature demonstrations), MOTION_INSPIRATION_DARK_SAAS (Immersive SaaS: Layered interfaces, dramatic depth and polished feature launches), MOTION_INSPIRATION_WARM_LAUNCH (Mixed media: Photography, cutouts and textures woven into animated graphics), MOTION_INSPIRATION_FOOTAGE_LED (Footage-led: People, places and product footage with supporting motion graphics), MOTION_INSPIRATION_MASCOT (Mascot: A character mascot that acts and talks over clean product UI), MOTION_INSPIRATION_EDITORIAL (Editorial: Paper collage, archive photos, highlighted documents and maps, like a news explainer), MOTION_INSPIRATION_DIAGRAM (Diagram: Step-by-step schematics and labelled parts that build an idea), MOTION_INSPIRATION_ILLUSTRATED (Illustrated: Flat illustrated scenes and characters that turn each idea into a picture), MOTION_INSPIRATION_DATA_STORY (Data story: Charts, counters, rankings and maps that make numbers mean something), MOTION_INSPIRATION_MAPS (Maps: Animated maps: borders, routes and zooms from the world down to a city). Values match case-insensitively, with or without the MOTION_INSPIRATION_ prefix, or by label ("footage-led", "Minimal & type"); no value, DEFAULT or an image preset sent with motion-graphics means Auto, like the create form.
media.providedrequiredYour own media items. Used as the only visuals when media.type = custom or media.useOnlyProvided = true; otherwise used as references/anchors. Items: { url (required), type, title, ... }.
{
"workflow": "motion-transfer",
"source": {
"url": "https://cdn.revid.ai/uploads/1772035872439-video.mp4"
},
"media": {
"provided": [
{
"url": "https://cdn.revid.ai/uploads/1772035882827-image.jpg",
"type": "image"
}
]
}
}Good to know
- →media.provided[] must contain the target character image. The server does not reject a missing image upfront, but generation fails without it.
- →metadata.duration (seconds of the source video) speeds up processing.