基于客户真实使用场景的云剪辑Timeline问题解答与代码实操

本文为阿里云智能媒体服务IMS「云端智能剪辑」实践指南第6期,从客户真实实践场景出发,分享一些Timeline小技巧(AI_TTS、主轨道、素材对齐),助力客户降低开发时间与成本。

欧叔|作者

故事的开始要从一条客户的真实反馈说起。

 

Round 1:视频比音频长,怎么办?

某天,一位客户加入了智能媒体服务答疑群,想要实现一个短视频效果,发生了以下对话:

上图链接:

https://help.aliyun.com/document_detail/451632.html#p-mwm-lsv-iql

https://help.aliyun.com/document_detail/2252070.html

在阿里云智能媒体服务IMS云剪辑中,客户通常会编辑一个Timeline来提交剪辑任务,合成自己想要的视频。在Timeline中有一个「AI_TTS」功能,方便客户为自己的视频搭配口播讲解。

这个功能在短视频合成中十分常见,比如需要给一个探店视频搭配一段广告词,或是给一个产品外观视频搭配一段产品介绍。使用时,客户只需要在音频轨道添加一个片段,设置上口播的文本内容和口播音色就好了。在实际合成中,引擎会先做语音合成,再把语音合成的结果合成到成片里,整个过程客户只需要调用一次剪辑任务就可以。

但在实际使用中,仍会遇到一些效果问题,例如上面客户遇到的问题:

客户在合成前,不知道口播文案需要读取的时间,在搭配视频时,就不能很好地控制视频轨的时长:

最终合成的成片可能会有结尾黑帧、口播结束但视频还在播的现象,这是客户合成的Badcase效果,口播结束了,视频还在继续播放。

云剪指南第6期示例视频1

Timeline示例:

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f1.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f2.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f3.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f4.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f5.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f6.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f7.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f8.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    }]
  }],
  "AudioTracks": [{
    "AudioTrackClips": [{
      "Type": "AI_TTS",
      "Content": "人们懂得用五味杂陈形容人生,因为懂得味道是每个人心中固守的情怀。在这个时代,每一个人都经历了太多的苦痛和喜悦,人们总会将苦涩藏在心里,而把幸福变成食物,呈现在四季的餐桌之上",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }]
  },{
    "AudioTrackClips": [{
      "MediaUrl": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/music/m1.wav"
    }]
  }]
}

主轨道功能就是来解决这一问题,当客户把一个轨道设置为主轨道后,时间线中的其他轨道就会根据主轨道来截断,在上面的示例中,客户可以把口播轨道设置为主轨道,把视频轨素材填的足够长,最后根据主轨道截断后,就不会有黑帧或结尾不对齐的现象了。

使用了主轨道的效果:

云剪指南第6期示例视频2

Timeline示例(注意MainTrack=true参数):

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f1.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f2.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f3.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f4.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f5.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f6.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f7.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f8.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    }]
  }],
  "AudioTracks": [{
    "MainTrack": true,
    "AudioTrackClips": [{
      "Type": "AI_TTS",
      "Content": "人们懂得用五味杂陈形容人生,因为懂得味道是每个人心中固守的情怀。在这个时代,每一个人都经历了太多的苦痛和喜悦,人们总会将苦涩藏在心里,而把幸福变成食物,呈现在四季的餐桌之上",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }]
  },{
    "AudioTrackClips": [{
      "MediaUrl": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/music/m1.wav"
    }]
  }]
}

Round 2:语音合成时间不精确,咋整?

第二天,客户再次找了过来。

上图链接:

https://help.aliyun.com/document_detail/441169.html

在很多实际场景中,客户需要知道语音合成的精确时长,从而更好的在实际业务中做控制,比如:控制每一句文案对应的视频和贴图。客户可以先调用智能语音接口,把口播和字幕先合出来,再根据每句话的时长给口播搭配素材。

这样整个合成流程由一步变成了两步,还需要自己来拼字幕时间线,会比直接使用AI_TTS复杂一些,但客户控制能更灵活,在真实客户场景中,也是十分常见的。

整个流程实现过程如下:

 

Round 3:精确和降本我都要,求支招!

过了几天,客户又找到技术小哥。

上图链接:

https://help.aliyun.com/document_detail/2507542.html

这回,客户的合成流程是这样的,跟技术小哥之前的建议不太一样。

这回客户遇到的问题是,第一次语音合成的句子时间戳,跟后面AI_TTS合成的结果不一致。由于底层的一些原因,语音合成即便是同样的参数,每一次合成的结果也会有毫秒级的偏差,不建议把上一次的结果作为下一次合成的参考。同时,智能语音任务和AI_TTS都会实际做语音合成,费用也会计两次,费用和效率上都不划算。

这回客户的场景是把视频素材跟口播文案逐句对齐,让视频更有节奏感。

当有这种简单的不同轨道间素材对齐需求时,可以直接使用素材对齐功能。时间线中,可以为每个素材设置id(ClipId),同时也可以为素材设置要对齐的素材id(ReferenceClipId),比如如下配置,就可以实现客户想要的效果,客户还是只提交一次剪辑任务就可以。

最终的视频效果如下:

云剪指南第6期示例视频3

Timeline示例:

{
  "VideoTracks": [{
    "VideoTrackClips": [{
      "ReferenceClipId": "speech1",
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f1.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "ReferenceClipId": "speech2",
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f2.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "ReferenceClipId": "speech3",
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f3.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "ReferenceClipId": "speech4",
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f4.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "ReferenceClipId": "speech5",
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f5.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    },{
      "ReferenceClipId": "speech6",
      "MediaURL": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/food/f6.mp4",
      "Out": 3,
      "Effects": [{
        "Type":"Volume",
        "Gain":0
      }]
    }]
  }],
  "AudioTracks": [{
    "AudioTrackClips": [{
      "ClipId": "speech1",
      "Type": "AI_TTS",
      "Content": "人们懂得用五味杂陈形容人生",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }, {
      "ClipId": "speech2",
      "Type": "AI_TTS",
      "Content": "因为懂得味道是每个人心中固守的情怀",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }, {
      "ClipId": "speech3",
      "Type": "AI_TTS",
      "Content": "在这个时代,每一个人都经历了太多的苦痛和喜悦",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }, {
      "ClipId": "speech4",
      "Type": "AI_TTS",
      "Content": "人们总会将苦涩藏在心里",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }, {
      "ClipId": "speech5",
      "Type": "AI_TTS",
      "Content": "而把幸福变成食物",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }, {
      "ClipId": "speech6",
      "Type": "AI_TTS",
      "Content": "呈现在四季的餐桌之上",
      "Voice": "zhichu",
      "Effects": [{
        "Type": "AI_ASR",
        "Font": "AlibabaPuHuiTi",
        "Alignment": "TopCenter",
        "Y": 0.9,
        "FontSize": 60,
        "FontColor": "#ffffff",
        "FontFace": {
          "Bold": true,
          "Italic": false,
          "Underline": false
        }
      }]
    }]
  },{
    "AudioTrackClips": [{
      "MediaUrl": "http://ice-public-media.oss-cn-shanghai.aliyuncs.com/test_media/music/m1.wav"
    }]
  }]
}

K.O.省钱&省代码

十分钟后。

经过与客户的几次交流,我们又上线了一些功能。

|根据主轨道整体倍速:“根据主轨道将其他轨道截断”带来的问题是,最后一个片段可能被截取的不完整,如果最后一个片段恰巧被截了几十毫秒,最后一个画面会一闪而过,播放体验也会下降。当视频轨总时长和口播轨时长不等,但客户又想把视频轨素材完整播放时,就可以使用整体倍速的功能,将视频轨道整体倍速,和口播轨首尾对齐。

|单边对齐:在一些产品介绍的场景,口播往往比对应的视频素材短,客户期望口播结束后,把对应的素材视频播放完,再开始下一段产品介绍,在这个场景里,就可以用单边对齐的能力。

具体使用可参考智能媒体服务功能发布记录:

https://help.aliyun.com/document_detail/214274.html

最后,技术小哥想说:剪辑中有个技巧叫对接剪切(butt-cut)或直切(straight-cut),即画面和声音在同一时间点开始和结束。如果处理得当,会非常符合观众的口味,反之,会极大影响观看体验。

前文客户的场景在短视频中很常见,不但避免了黑帧等异常情况,还能让成片在观感和听感上更有节奏,也非常建议各位使用短视频合成的客户能用到。AI_TTS、主轨道、素材对齐等功能都是基于大量客户反馈和真实场景实践不断打磨出来的,在保证效果的前提下,能大大节省客户的开发时间,从而能让客户把更多精力投入在业务中。

很多技术同学第一次接触云剪辑时,并没有剪辑基础,都都会遇到各种各样的坑,云剪指南将会介绍更多云剪辑Timeline的使用小技巧,结合客户的真实场景更方便的使用云剪辑Timeline,欢迎各位加入我们的答疑群交流分享。

智能媒体服务IMS「云端智能剪辑」是基于云计算和人工智能技术的视频剪辑生产服务,能为用户提供直播剪辑、视频剪辑、模版工厂、数字人制作等核心功能,并可使用 AI 辅助剪辑生产。该产品可广泛应用于互联网、文化传媒、广告营销、教育金融等行业,满足企业进行规模、高效、便捷、智能的视频内容生产需求。

欢迎加入官方答疑「钉钉群」咨询交流:48335001108

相关推荐

阿里云 ESA 征文活动投稿指南|六大选题与激励规则,面向所有开发者

阿里云ESA征文活动

阿里云CloudImagine 728

实战揭秘|魔搭社区 + 阿里云边缘云 ENS,快速部署大模型的落地实践

大模型部署流程、配置及效果验证全归纳。

阿里云CloudImagine 1508

轻装踏浪海外|微短剧凭多语言翻译、降本增效与合规体验出圈

短剧出海「 全能力解锁 」

阿里云CloudImagine 1263

解读短剧出海背后的 AIGC 技术力量与发展趋势

AI掀起 短剧出海新曲线

阿里云CloudImagine 618

直播标准权威发布,阿里云RTS获首批卓越级评估认证

近期举办的2024“可信云大会”上,中国信通院正式发布了2024年上半年音视频领域最新评估结果。阿里云超低延时直播,以首批卓越级,通过中国信通院超低延时直播性能及服务质量分级测试。

阿里云CloudImagine 1210

信通院发布首个《大模型媒体生产与处理》标准,阿里云智能媒体服务作为业界首家“卓越级”通过

中国信通院近期正式发布《大模型驱动的媒体生产与处理》标准,阿里云智能媒体服务,以“首批首家”通过卓越级评估,并在 9 大模块 50 余项测评中表现为“满分”。

阿里云CloudImagine 854

解读:以RTC为基,AI为脑的“超拟人”AI实时互动解决方案

10分钟构建企业专属「云上智能体」

阿里云CloudImagine 1799

抢先看:2024云栖大会体验攻略

2024云栖大会干货速览

阿里云CloudImagine 408

2024云栖大会,来了。

免费领票,9.19-21,预见云智未来。

阿里云CloudImagine 519

AIGC图生视频技术下的巴黎奥运高光时刻

图生视频,Powered By「 阿里云视频云 」

阿里云CloudImagine 535

大模型检索X一键成片,巴黎奥运的AI新演绎

巴黎奥运会,AI上演媒体新科技。

阿里云CloudImagine 1202

AI技术修复奥运珍贵历史影像,《永不失色的她》再现百年奥运女性光彩

阿里云以AI技术修复奥运珍贵历史影像。

阿里云CloudImagine 711

巴赫:阿里AI技术将巴黎奥运转播带到新高度

奥运会实现历史性的AI跨越

阿里云CloudImagine 569

剧透:巴黎奥运会用上了AI转播

阿里云AI增强技术登场。

阿里云CloudImagine 494

泛娱乐出海Plus时代,音视频能力基座如何与时俱进?

泛娱乐的音视频技术随着出海在演进,交互和内容的技术是内核,也在融合。

阿里云CloudImagine 1212

加速短剧出海,优秀出海产品技术服务金帆奖颁布

助力短剧出海

阿里云CloudImagine 630

卷爆短剧出海:五大关键,由AIGC重构

短剧高温下,谈谈AIGC的助攻路线。

阿里云CloudImagine 2103

全智能深度演进,一键成片让视频创作颠覆式提效

「一键成片」API已上线

阿里云CloudImagine 1万+

MediaBox音视频终端SDK已适配鸿蒙星河版(HarmonyOS NEXT)

MediaBox已适配鸿蒙星河版

阿里云CloudImagine 1692

AIGC下一步:如何用AI再度重构或优化媒体处理?

LiveVideoStackCon2023深圳站,阿里云视频云演讲分享

阿里云CloudImagine 1921

新年新岁,好运 long long

诸般心愿,全都实现!

阿里云CloudImagine 634

一文深度解读多模态大模型视频检索技术的实现与使用

自然语言视频检索已上线IMS

阿里云CloudImagine 3424

LiveVideoStack人物专访:深耕多媒体二十载,他怎么看未来的视频云?

抓住已知的,迎面未知的。

阿里云CloudImagine 1614

新数智空间:阿里云边缘云持续保持中国公有云市场第一

边缘逆势生长,释放多元价值

阿里云CloudImagine 1402

微短剧市场暴涨267.65%,用微短剧场景AUI Kit精巧入局

微短剧场景AUI Kit集成套件

阿里云CloudImagine 1319

摆脱自研难题,AUI Kit助力企业快速搭建专属互动课堂

最佳实践篇:互动课堂AUI Kit

阿里云CloudImagine 1111

如何在数字世界复刻一个高还原、高拟真的“你”?

打造一个“声形俱佳”的数字分身

阿里云CloudImagine 2798

AI浪潮下,大模型如何在音视频领域运用与实践?

LiveVideoStackCon2023深圳站,阿里云视频云演讲分享

阿里云CloudImagine 1630

ACPM高效C++组件管理让音视频终端SDK性能更好、稳定性更高

技术架构篇:ACPM组件管理

阿里云CloudImagine 1155

IDC最新报告,增速减缓+AI增势,阿里云视频云中国市场第一

IDC中国视频云整体市场第一

阿里云CloudImagine 1922
上一篇: 一文深度解读多模态大模型视频检索技术的实现与使用
下一篇: 新年新岁,好运 long long
Agentic-Imagine
Agentic-Imagine 企业官方账号 企业官方账号
博客等级 码龄6年 1887粉丝 240原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值