Skip to content

Desuq Cafe

文档菜单

此翻译可能落后于最新的英文版本。 查看英文版

轨道族

本插件提供四种轨道范式。Event Trigger 轨道在播放头经过分段起点时触发离散动作,详情请参阅动作参考文档。本页介绍其余三种轨道(Keyframeable、Continuous State 和 Media Sync),以及共享的轨道架构与分段类型。

轨道架构

范式行为适用场景
Event Trigger播放头经过分段起点时触发动作离散命令(StartRecord、SwitchScene、SaveReplay)
Keyframeable通过曲线编辑器关键帧对数值进行插值平滑动画(音量淡入淡出、变换运动、颜色渐变)
Continuous State播放头位于分段内时持续应用状态临时覆盖(分段内静音、强制可见性、保持转场)
Media SyncOBS 媒体游标跟随 Sequencer 时间轴同步视频播放,拖拽预览时跳转媒体位置

Keyframeable 属性轨道

除事件触发外,本插件还支持 keyframeable 轨道,用于对 OBS 属性进行平滑插值:

轨道类型属性适用场景
OBS Volume音量(dB)音频淡入淡出、闪避、平滑电平变化
OBS Balance平衡(0.0-1.0)立体声声像、左右定位、沉浸式音频
OBS Transform位置 X/Y、缩放 X/Y、旋转、裁剪 L/T/R/B来源动画、画中画、裁剪揭示
OBS Filter Setting任意数值滤镜属性动画化模糊、色彩校正、色度键阈值
OBS Transition Duration时长(ms)动态转场时长、戏剧性场景切换
OBS Color SourceRGBA(每通道 0.0-1.0)动画背景、颜色渲染、氛围灯光
OBS Media Cursor游标位置(ms)时间轴同步、将媒体拖拽预览至特定时刻

主要特性

  • 使用 Unreal 的原生曲线编辑器进行关键帧插值。
  • 增量阈值可防止频繁向 OBS 发送请求(仅在数值发生显著变化时才发送)。
  • 播放停止时恢复动画前状态。
  • 支持按轨道选择目标(音量/平衡使用输入名称,变换使用场景 + 来源)。

注意: 目标(例如 InputName)设置在轨道上,而非分段上,因此同一 keyframeable 轨道上的所有分段均指向同一输入/来源。

增量阈值

每个属性均有经过调优的阈值,以平衡响应性与网络效率:

属性阈值原因
音量0.1 dB人耳几乎无法察觉小于 0.5dB 的变化
平衡0.005范围较小(0.0-1.0),需要高精度以实现平滑声像
位置0.5 px亚像素变化在大多数显示器上不可见
缩放0.001与 OBS 内部精度匹配
旋转0.1°亚度级变化无法感知
裁剪1 px整数像素,OBS 不支持亚像素裁剪
滤镜设置0.01滤镜设置可能较为敏感,使用小阈值以保证精度
转场时长10 ms时长变化是离散步进,在界面中可见
颜色通道0.004约 1/255,最小可见的 8 位颜色变化
媒体游标16 ms约 60fps 下的 1 帧,跳转不可察觉

轨道设置

设置默认值描述
bRestoreStateOnStoptrue序列停止时恢复原始 OBS 数值
bMutedfalse禁用轨道而不删除关键帧

OBS Filter Setting 轨道

Filter Setting 轨道是一种通用实现,可对任意数值滤镜设置进行动画化:

轨道属性描述
SourceName应用了该滤镜的 OBS 来源(例如,“Camera”)
FilterName滤镜实例名称(例如,“Color Correction”)
FilterKind可选。启用验证提示(例如,“color_filter”)
SettingName要动画化的 JSON 键(例如,“brightness”)

已知含界面提示的滤镜设置:

  • color_filter: brightness, contrast, saturation, gamma, hue_shift, opacity
  • chroma_key_filter: similarity, smoothness, spill, opacity
  • color_key_filter: similarity, smoothness, opacity
  • sharpness_filter: sharpness
  • scroll_filter: speed_x, speed_y
  • gain_filter: db
  • compressor_filter: ratio, threshold, attack_time, release_time, output_gain
  • limiter_filter: threshold, release_time
  • noise_suppress_filter: suppress_level
  • three_band_eq_filter: low_gain, mid_gain, high_gain

未知设置同样有效。轨道接受任意 JSON 键名。

OBS Transition Duration 轨道

对当前转场的时长(50 至 20000ms)进行动画化。无需配置目标,因为此轨道始终作用于当前激活的转场。

注意: 固定时长的转场(例如切割)无法修改其时长。轨道会优雅地处理此情况并记录警告日志。

Continuous State 轨道

Continuous State 轨道在播放头位于分段内时应用固定状态。分段本身没有关键帧,其存在即是触发条件。进入分段时捕获原始状态,退出时恢复。

轨道类型目标应用的状态适用场景
OBS Mute State音频输入静音/取消静音过场动画期间静音麦克风,为配音静音游戏音频
OBS Monitor Type State音频输入监听类型(None/MonitorOnly/MonitorAndOutput)在特定片段启用音频监听
OBS Visibility State场景 + 场景项目可见/隐藏片头显示叠加层,特定镜头隐藏水印
OBS Lock State场景 + 场景项目锁定/解锁直播片段期间防止意外移动
OBS Blend Mode State场景 + 场景项目混合模式(Normal/Additive 等)转场期间应用效果
OBS Filter Enabled State来源 + 滤镜启用/禁用场景转场时启用模糊,切换色彩校正
OBS Studio Mode State全局启用/禁用为预览片段启用工作室模式
OBS Transition State转场名称强制指定转场为特定场景切换使用 Stinger 转场

与 Keyframeable 的主要区别

  • 无曲线编辑器:分段要么”开启”,要么”关闭”。
  • 状态是二元的(轨道配置的数值与原始数值之间切换)。
  • 对于开/关行为,设置更为简单。
  • 动画前状态的恢复是自动进行的。

Media Sync 轨道

Media Sync 轨道将 OBS 媒体源(VLC、Media Source)与 Sequencer 时间轴同步。与其他轨道不同,它同时主动控制播放状态游标位置。

轨道属性

属性默认值描述
InputName(必填)要控制的 OBS 媒体输入
bRestoreStateOnStoptrue序列停止时恢复原始媒体状态
bRestoreCursorPositiontrue序列停止时恢复原始游标位置
bMutedfalse禁用同步而不删除轨道

分段属性

属性默认值描述
StartTimeOffsetMs0分段开始时媒体的偏移量(例如,5000 = 从视频第 5 秒开始)
bControlPlaybacktrueSequencer 播放/暂停控制 OBS 播放/暂停
bSyncOnScrubtrue拖拽预览时间轴时跳转 OBS 媒体位置
bLoopingfalse分段时长超过媒体时长时循环媒体
ExitBehaviorPause退出分段时的动作(Pause/Stop/Continue)

同步行为

  • Sequencer 播放时 → OBS 媒体播放。
  • Sequencer 暂停时 → OBS 媒体暂停。
  • 拖拽预览时 → OBS 媒体跳转至对应位置。
  • 漂移校正在播放过程中自动保持媒体同步。

示例用例

  • 将背景视频与游戏序列同步。
  • 在时间轴的精确位置播放片头视频。
  • 编辑时拖拽预览视频以找到合适的时刻。

分段类型

动作具有不同的触发行为:

类型行为示例
Instant播放头经过分段起点时触发一次StartRecord、SaveReplayBuffer、SplitRecordFile、SaveScreenshot
State进入时触发,可选择在退出时还原SwitchScene、MuteInput、SetVolume

有关 State 类型分段在退出时如何还原的详情,请参阅高级主题 → 退出动作