360 Secure SkillHub
360 安全技能中心

Add Audio To Video

接收无声视频(URL 或 UUID,单次最长 10 秒),先分类需求:音效走 Mirelo SFX 1.5 专用模型,经 runware-run 解析 schema 后异步调用 audioInference,返回音画同步的带声视频;旁白与配乐分别交由 voiceover、music 技能。支持提示词偏置、startOffset、seed 等参数,并建议在生成阶段改用原生音频模型。

runware
热度 56.48
最近更新 2026-07-18 22:48:46
分类:创作依赖:第三方 API应用场景:视频编辑 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add runware/add-audio-to-video
Metadata
name
add-audio-to-video
description
Add sound to a silent video - sound effects, narration, or a music bed. Use when the user says "this clip has no audio", "add sound effects to my video", "make it sound like footsteps / rain / an explosion", "give this a soundtrack", or "voice over this clip". Routes sound design to a dedicated SFX model and defers narration and music to their own skills.

Add audio to a silent video

Take a silent clip and give it sound. Three different jobs hide behind that ask: synchronized sound effects (footsteps, rain, impacts that line up with the action), spoken narration, or a music bed. Each routes to a different model, and only one of them is a dedicated SFX model. This skill covers the SFX route directly and hands the other two to their sibling skills.

Inputs to collect

  • The silent video (URL or UUID). For SFX, max 10 seconds per call.
  • What kind of audio: sound effects synced to the action, narration/voiceover, or background music. This decides the route.
  • For SFX: an optional prompt describing the sound to bias toward (e.g. "heavy rain on metal, distant thunder"). Leave it off to let the model read the video and design sound from what it sees.
  • Whether the result must be the video with sound muxed in (SFX route returns this) or a standalone audio file to mix yourself.

Models

  • Sound effects → Mirelo SFX 1.5 (mirelo:1@1) - the one dedicated SFX model. Feed it a video and it returns the same video with synchronized sound effects muxed in. Honest caveat: dedicated SFX coverage is thin (this single model), so set expectations and consider the native-audio route below.
  • Narration / spoken voiceover → use the voiceover skill (text-to-speech). Not this model.
  • Music bed → use the music skill (text-to-music). Not this model.
  • Often the better route: native audio at generation time. Several video models emit incidental sound (ambient, foley, even speech) as part of the original generation. If you still control the generation step, turning that on usually beats bolting SFX on afterward. Check capabilities and the audio flag via runware-models + runware-run before regenerating.

Confirm the live model and its schema via runware-models + runware-run before calling - never hardcode a stale choice.

Workflow

  1. Classify the ask (SFX vs narration vs music) and route. For narration go to voiceover, for music go to music. The rest of this is the SFX route.
  2. Resolve the schema (runware-run) and confirm the input field (inputs.video) and the output-format rule.
  3. Upload the silent clip to inputs.video (URL or UUID). Keep it under 10 seconds.
  4. Run audioInference asynchronously and poll until terminal - audio/video tasks are time-based, do not block a sync call on them.
  5. Read the result and review the sound against the picture (see Quality bar). Retry with a sharper prompt or a different seed if the sync or the sound choice is off.

Technique

  • Two modes, pick one - they are mutually exclusive. Supply either inputs.video (synced SFX over your clip, output is video) or positivePrompt alone (text-to-audio, output is a bare audio file). For adding sound to an existing video you want the video-input mode.
  • Let the picture drive the sound. With a video in, the model watches the action and places effects on it. A prompt is optional and acts as a bias ("rain, thunder, no music"), not a full script. Over-describing fights what the model already sees.
  • Duration follows the video. In video-input mode the result matches the clip length, so duration does not apply (the schema rejects it there). duration only exists for the prompt-only audio mode (1-10s).
  • Align a longer source with settings.startOffset. If your clip's interesting moment starts late, set the offset (in seconds) to begin sound design from that point in the video.
  • Coverage is genuinely thin. One SFX model means limited stylistic range. When the result is weak, the stronger fix is often upstream: regenerate the video on a model that produces native audio, rather than expecting deep SFX variety here.

Parameters that matter

  • inputs.video - the silent clip (URL/UUID), max 10s. Its presence forces video output (MP4/MOV/WEBM) and disables duration.
  • positivePrompt - 2-3000 chars; optional in video mode (a sound bias), required in prompt-only mode.
  • duration - 1-10s, default 10. Prompt-only mode only; not valid alongside a video input.
  • settings.startOffset - 0-10s; where in the video sound design begins. Requires a video input.
  • outputFormat - video (MP4/MOV/WEBM) with a video input, audio (MP3/WAV/FLAC/OGG) without one.
  • steps (5-30, default 25), seed - quality/repeatability knobs. Confirm exact names against the live schema (runware-run); never guess.

Quality bar

  • Effects land on the action - footfalls hit feet down, impacts hit contact, no audible drift across the clip.
  • The sound matches the scene (right material, right space) and the prompt bias if one was given.
  • The returned file is the video with audio, playable, length unchanged from the source.
  • If sync or sound choice is wrong, retry with a tighter prompt or new seed; if range is the limit, route to native-audio regeneration instead.

Related skills

runware-run, runware-models, runware-prompting; voiceover (spoken narration / TTS), music (background music bed), and the video-generation skills when native audio at generation time is the better route.