RenderingVideo 文档
Audio 元素
音频 clip 字段、裁剪、循环、淡入淡出与运行时行为
Audio 元素
1. 结构
interface AudioClip extends BaseClip {
type: "audio";
src: string | { $ref: string };
source?: MediaSource;
volume?: number;
loop?: boolean;
playbackRate?: number;
fadeIn?: number;
fadeOut?: number;
pan?: number;
detune?: number;
gainEnvelope?: AudioEnvelopePoint[];
ducking?: AudioDucking;
}
2. 支持的参数
src
- 类型:
string | { $ref: string } - 必填:是
source.start
- 类型:
number - 必填:否
- 单位:秒
source.end
- 类型:
number - 必填:否
- 单位:秒
volume
- 类型:
number - 必填:否
- 默认值:
1
loop
- 类型:
boolean - 必填:否
- 默认值:
false
playbackRate
- 类型:
number - 必填:否
- 默认值:
1
fadeIn
- 类型:
number - 必填:否
- 单位:秒
fadeOut
- 类型:
number - 必填:否
- 单位:秒
pan
- 类型:
number - 必填:否
- 范围:
-1到1
detune
- 类型:
number - 必填:否
- 单位:音分
gainEnvelope
- 类型:
{ time: number; volume: number; easing?: EasingFunction }[] - 必填:否
time应按升序排列
ducking
- 类型:
{ targets: string[]; amount?: number; attack?: number; release?: number } - 必填:否
- 用于在当前音频播放时压低目标音频轨道
3. 当前真实行为
source.start已生效source.end已生效fadeIn/fadeOut已生效loop已生效playbackRate、detune、pan和gainEnvelope可用于控制播放速度、音高、声像和音量自动化transition对音频不生效
4. 示例
{
"type": "audio",
"start": 0,
"duration": 10,
"src": { "$ref": "bgm-main" },
"volume": 0.6,
"fadeIn": 1.2,
"fadeOut": 1.5,
"loop": true
}