有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
视频合成,是对云点播中的视频进行裁剪、拼接、重叠以及翻转等复杂操作,是一种离线任务。使用视频合成,可以达到以下效果:
画面旋转:对视频、图片的画面旋转一定角度,或按照某个方向翻转。
声音控制:升高降低视频、音频中声音的音量,或者对视频静音。
画面叠加:将视频、图片中的画面依序叠加在一起,如实现“画中画”的效果。
声音混合:将视频、音频中的声音混合在一起(混音)。
声音提取:将视频中的音频提取出来(不保留画面)。
裁剪:对视频、音频裁剪出指定时间段。
拼接:对视频、音频、图片按时间顺序前后拼接。
转场:将多段视频或图片拼接时,可以在段落之间添加转场效果。
倍速:将视频或音频素材做快进或者慢放处理。
合成后生成的媒体封装格式是 MP4(视频)或 MP3(音频)。

任务发起

视频合成任务,通过 服务端 API 方式发起。调用 API 的返回结果中包含任务 ID,用于关联 结果获取 时对应的任务结果。

结果获取

发起任务后,您可以通过异步等待 结果通知 和同步进行 任务查询 两种方式获取视频合成的执行结果。下面是发起视频合成任务后,普通回调方式下结果通知的示例(省略了值为 null 的字段):
{
"EventType": "ComposeMediaComplete",
"ComposeMediaCompleteEvent": {
"TaskId": "ComposeMedia-f5ac8127b3b6b85cdc13f237c6005d8",
"Status": "FINISH",
"ErrCode": 0,
"Message": "SUCCESS",
"Input": {
"Tracks": [{
"Type": "Video",
"TrackItems": [{
"Type": "Video",
"SourceMedia": "5285485487985271487",
"AudioOperations": [{
"Type": "Volume",
"VolumeParam": {
"Mute": 1
}
}]
}]
},
{
"Type": "Audio",
"TrackItems": [{
"Type": "Empty",
"EmptyItem": {
"Duration": 5
}
},
{
"Type": "Audio",
"AudioItem": {
"SourceMedia": "5285485487985271488",
"Duration": 15
}
},
{
"Type": "Audio",
"AudioItem": {
"SourceMedia": "5285485487985271489",
"SourceMediaStartTime": 2,
"Duration": 14
}
}
]
}
],
"Output": {
"FileName": "视频合成效果测试",
"Container": "mp4"
}
},
"Output": {
"FileType": "mp4",
"FileId": 5285485487985271490,
"FileUrl": "http://125676836723.vod2.myqcloud.com/xxx/xxx/xxx.mp4"
}
}
}
回调结果中,Input.Tracks包含两个元素,Type分别是 Video 和 Audio,表示合成的视频包含一个视频轨和音频轨。
视频轨道:来源视频 ID 是5285485487985271487,对其做了静音处理。
音频轨道:包含5秒的静音,以及15秒和14秒的两个配音。
Output.FileId是视频合成后生成的新视频 FileId,视频播放 URL 是FileUrl中的值。