scenario-sonilo

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Scenario Sonilo Audio

Scenario Sonilo 音频

Overview

概述

Sonilo, an audio family on Scenario, splits along two axes: what the sound is (sound effects or instrumental music) and what comes back (a standalone track, or the source video with the generated track muxed in, visuals untouched). Picking the member whose return matches the delivery matters more than any prompt. Discover with
search
and treat
model_schema_get
as the contract.
Connection and the core loop: see the
scenario
skill in this repo; model-agnostic audio work: the
scenario-audio
skill. If a sibling skill named here is missing from your available skills, ask the user to install it (
npx skills add scenario-labs/skills --skill <name>
); unattended, proceed from tool schemas and flag the gap.
Sonilo是Scenario平台上的音频模型系列,按两个维度划分:音效类型(音效或器乐)和返回形式(独立音轨,或混入生成音轨且画面保持不变的源视频)。选择返回形式符合交付需求的模型比任何提示词都重要。可通过
search
查找模型,并将
model_schema_get
视为接口约定。
连接方式与核心流程:参见本仓库中的
scenario
Skill;与模型无关的音频处理:参见
scenario-audio
Skill。如果你的可用Skill中缺少此处提到的同类Skill,请让用户安装(命令:
npx skills add scenario-labs/skills --skill <name>
);若处于无人值守模式,请根据工具schema继续操作并标记缺失的Skill。

Quick reference

快速参考

Member names state the mode; input names come from the live schemas:
MemberKey inputsReturns
Text to SFX
prompt
,
duration
,
audioFormat
one sound effect clip
Text to Music
prompt
,
duration
,
numSamples
instrumental track
Video to SFX
video
, optional
prompt
or
segments
audio track matching the video length
Video to Music
video
, optional
prompt
,
numSamples
,
startOffset
,
duration
music track
Video to Video SFXas Video to SFXthe video with SFX mixed in, plus the track
Video to Video (music)as Video to Music, plus
keepSpeechVocal
the video with music mixed in
At authoring time: text SFX ran 1 to 180 seconds (default 8), text music 1 to 600 (default 90), video inputs took up to 360 seconds,
segments
up to 50,
numSamples
1 to 3, and
startOffset
moved in steps of 10 with
startOffset
plus
duration
capped at the video length.
audioFormat
(aac default, mp3, wav, flac; wav or flac for editing pipelines) exists on the SFX members only, and on the muxed one it formats the separate track: the video's own audio stays AAC. Two music mux members were live with the same schema; prefer the newest hit. Every duration knob carries cost, so
dry_run
before a batch.
模型成员名称标明了其模式;输入参数名称来自实时schema:
模型成员核心输入参数返回结果
Text to SFX
prompt
,
duration
,
audioFormat
一段音效片段
Text to Music
prompt
,
duration
,
numSamples
器乐曲目
Video to SFX
video
,可选
prompt
或
segments
与视频时长匹配的音轨
Video to Music
video
,可选
prompt
,
numSamples
,
startOffset
,
duration
音乐曲目
Video to Video SFX与Video to SFX相同混入SFX的视频,外加对应音轨
Video to Video (music)与Video to Music相同,外加
keepSpeechVocal
混入音乐的视频
在本文撰写时:Text to SFX的时长范围为1至180秒(默认8秒),Text to Music为1至600秒(默认90秒),视频输入最长支持360秒,
segments
最多支持50段,
numSamples
范围为1至3,
startOffset
以10秒为步长调整,且
startOffset
与
duration
之和不得超过视频时长。
audioFormat
(默认aac,支持mp3、wav、flac;编辑流程建议使用wav或flac)仅在SFX类模型中可用;在混流模型中,该参数仅控制独立音轨的格式,视频本身的音频仍保持AAC格式。目前有两个音乐混流模型在线,且schema相同,请优先使用最新版本。所有时长参数都会影响成本,因此批量运行前请先使用
dry_run
测试。

The video is the clock

视频是时间基准

On video-conditioned members the footage decides when sound happens and the prompt only steers what it sounds like; the clip's own audio never steers generation, visuals alone are read. An empty
prompt
is valid and often best: the model captions the clip and covers each scene itself. When one description cannot fit the whole clip,
segments
gives per-range prompts, contiguous by contract: the first
start
is 0, each
end
equals the next
start
, and the last stays within the video. Text to SFX has no timing control at all, so describe one sound event per run, physical words over moods (hollow, muffled, punchy), source then material then space then intensity, with the duration intent in the wording as well as the parameter. No member takes a seed, so archive the takes you like; on the music members
numSamples
buys up to three takes in one run instead of re-rolls.
在以视频为条件的模型中,画面决定了音效的发生时间,
prompt
仅控制音效的听感;视频片段本身的音频不会影响生成结果,系统仅读取画面内容。空的
prompt
是有效的,而且通常效果最好:模型会自动为视频生成描述,并为每个场景匹配音效。当单个描述无法覆盖整个视频时,可使用
segments
实现分段提示。根据约定,分段必须是连续的:第一个
start
为0,每个
end
等于下一个
start
,最后一个分段的结束时间不得超过视频时长。
Text to SFX完全没有时间控制功能,因此每次运行仅描述一个声音事件,多用具象描述而非情绪描述(比如空洞、沉闷、有冲击力),描述顺序为声源→材质→空间→强度,时长意图既要体现在措辞中,也要通过参数设置。
所有模型都不支持种子参数,因此请保存你喜欢的生成结果;音乐类模型支持
numSamples
参数,一次运行最多可生成3个版本,无需重复提交任务。

What survives a music pass

音乐混流的保留规则

The music mux members replace the whole original track by default.
keepSpeechVocal: true
isolates human voice (dialogue, narration, singing, crowds) and ducks the music under it; everything non-voice (engines, footsteps, ambience, prior foley) is replaced regardless. So never score a clip after muxing foley into it: when a video needs both, take standalone tracks from Video to SFX and Video to Music and mix in post. Music comes back instrumental.
音乐混流模型默认会替换整个原始音轨。设置
keepSpeechVocal: true
可识别人声(对话、旁白、歌声、人群声),并将音乐音量压低在人声之下;所有非人声内容(引擎声、脚步声、环境音、之前添加的foley)都会被替换。
因此,切勿在已经混入foley的片段上使用音乐混流:如果视频同时需要foley和音乐,请分别从Video to SFX和Video to Music模型获取独立音轨,在后期制作中混合。生成的音乐均为器乐版本。

Worked example: foley for a silent gameplay clip

实操示例:为无声游戏片段制作foley

  1. search
    with
    target="models"
    ,
    query="sonilo"
    ,
    public=true
    . Members list
    txt2audio
    ,
    video2audio
    , or
    video2video
    capabilities; e.g.
    model_sonilo-v1-1-video-to-video-sound-effects
    (a live hit at authoring time: re-discover each session).
  2. model_schema_get
    with that id: fields and caps before anything else.
  3. upload_asset
    the clip (see the
    scenario
    skill) to get its asset id.
  4. model_run
    with that
    model_id
    ,
    dry_run=true
    , and
    parameters={"video": "asset_x", "segments": [{"start": 0, "end": 4, "prompt": "footsteps on wet metal, close and sharp"}, {"start": 4, "end": 12, "prompt": "plasma rifle shots, hollow hangar reverb"}]}
    : cost scales with clip length.
  5. Repeat
    model_run
    with
    wait=false
    , then
    jobs_wait
    with the returned job id, re-called with
    pending_job_ids
    on timeout, never a second
    model_run
    .
  6. asset_display
    the muxed video, then
    asset_download
    it and the separate track.
  1. 使用
    search
    查找模型,参数为
    target="models"
    、
    query="sonilo"
    、
    public=true
    。模型成员会列出
    txt2audio
    、
    video2audio
    或
    video2video
    能力;例如
    model_sonilo-v1-1-video-to-video-sound-effects
    (本文撰写时的在线模型:每次会话请重新查找)。
  2. 使用该模型ID调用
    model_schema_get
    :先了解字段和能力再进行后续操作。
  3. 调用
    upload_asset
    上传视频片段(参见
    scenario
    Skill),获取其资产ID。
  4. 调用
    model_run
    ,传入
    model_id
    、
    dry_run=true
    ,以及
    parameters={"video": "asset_x", "segments": [{"start": 0, "end": 4, "prompt": "footsteps on wet metal, close and sharp"}, {"start": 4, "end": 12, "prompt": "plasma rifle shots, hollow hangar reverb"}]}
    :成本随视频时长递增。
  5. 再次调用
    model_run
    并设置
    wait=false
    ,然后使用返回的任务ID调用
    jobs_wait
    ;若超时,使用
    pending_job_ids
    重新调用,切勿重复提交
    model_run
    。
  6. 调用
    asset_display
    查看混流后的视频,然后调用
    asset_download
    下载视频和独立音轨。

Common mistakes

常见错误

  • Muxing when the edit needs a bare track, or the reverse: Video to SFX returns audio only; Video to Video SFX returns the finished clip. Pick by delivery.
  • Scoring a clip that already carries foley with a music mux member: non-voice sound is replaced and the foley is gone.
  • Leaving
    keepSpeechVocal
    off (the default) on a talking-head clip: the narration vanishes with the rest of the track.
  • Gapped or overlapping
    segments
    : the contract wants contiguous ranges from 0.
  • Packing sequenced events into one Text to SFX prompt: it has no timing control; one event per run.
  • Asking any member for speech or vocals: no member produces dialogue, narration, or singing; SFX and instrumental music are the whole surface.
  • 当编辑需要独立音轨时使用了混流模型,反之亦然:Video to SFX仅返回音频;Video to Video SFX返回成品视频。请根据交付需求选择。
  • 对已经包含foley的视频片段使用音乐混流模型:非人声内容会被替换,foley会丢失。
  • 在人物访谈类视频中未开启
    keepSpeechVocal
    (默认关闭):旁白会和其他音轨一起被清除。
  • segments
    分段存在间隔或重叠:约定要求从0开始的连续时间范围。
  • 将多个连续事件塞进同一个Text to SFX的
    prompt
    中:该模型没有时间控制功能,每次运行仅生成一个事件的音效。
  • 要求任何模型生成语音或人声:所有模型都不生成对话、旁白或歌声,仅支持SFX和器乐音乐。