使用avthumb转码命令,将目标视频的音轨提取出来混入源视频的指定时间段
- 最多只能混入一个音频
- 源音视频、混音输入音视频都仅支持单音轨
- 混音的两个音频的channel数必须一致
- 混音会导致音量发生变化
- 音量分配无法控制,有程序自动生成
Cmd | 是否必填 | 说明 |
---|---|---|
/amix/<mix_url> |
N | 期望混音的音视频文件,单音轨,channel数与源音视频音轨一致,url要经过 {{urlsafe_base64_encode}} |
/amixOffset/<amix_offset> |
N | 混音效果起始位置,相对于混音后视频起始位置计算,单位为秒,精确到毫秒,默认取0,即混音后音视频从起始位置起有混音效果 |
/amixStart/<amix_start> |
N | 目标混音文件截取的开始时间,单位为秒,精确到毫秒,默认取0,即目标混音文件从起始开始混入源音视频 |
/amixDuration/<amix_duration> |
N | 目标混音文件截取的时长,单位为秒,精确到毫秒,默认为目标混音文件音轨原始长度,即全部混入源音视频 |
avthumb/mp4/amix/aHR0cDovL3Fib3h0ZXN0LmNvbS9yaW5nLm1wMw==/amixOffset/13.4/amixStart/5/amixDuration/10.0
目前实现了视频淡入淡出的特效,通过avthumb分别为两段视频添加淡出和淡入效果,以及用avconcat将两端添加特效后的视频进行拼接,实现淡入淡出转场效果
- 淡入淡出以亮度变化来实现,不支持其他特效
- 淡入淡出特效只支持变成黑色,不能使用其他颜色
- 仅支持片头淡入,片尾淡出,其他不支持
Cmd | 是否必填 | 说明 |
---|---|---|
/fade/<fade_duration> |
N | fade_duration表示淡入/淡出效果持续时长,其格式为<片头淡入时长>-<片尾淡出时长>,单位为秒,精确到毫秒,默认为0表示无淡入/淡出效果。例如/fade/2.5表示片头添加2.5秒淡入效果;/fade/-1.5表示片尾添加1.5秒淡出效果;/fade/2-3.5表示分别在片头添加2秒淡入效果,片尾添加3.5秒淡出效果。 |
对av001.mp4使用末尾3秒淡出特效
avthumb/mp4/fade/-3.0
对av002.mp4使用开头3秒淡入特效
avthumb/mp4/fade/3.0
使用avconcat拼接两个添加特效后生成的视频
在源视频指定区域、指定时间段生成马赛克
- 一次只能打一个马赛克,不支持单命令多个马赛克
- 不能与改分辨率同用
- 不能控制马赛克颗粒大小
Cmd | 是否必填 | 说明 |
---|---|---|
/mosaic/<isMosaic> |
N | 是否启用马赛克,1表示启用马赛克,默认为0,无马赛克效果;后续参数必须连续紧跟在/mosaci/1后面 |
/mosaicGravity/<Gravity>/ |
N | 打马赛克的位置,默认值为NorthEast,参考水印 https://developer.qiniu.com/dora/manual/1314/video-watermarking |
/mosaicOffsetX/<OffsetX>/ |
N | 马赛克位置的相对横向偏移量,isMosaic=1时必填 |
/mosaicOffsetY/<OffsetY>/ |
N | 马赛克位置的相对纵向偏移量,isMosaic=1时必填 |
/mosaicSize/<Size>/ |
N | 马赛克区域大小,格式为<weight>x<height> ,isMosaic=1时必填 |
/mosaicStart/<Start>/ |
N | 马赛克起始时间,单位为秒,精确到毫秒,默认为0 |
/mosaicDuration/<Duration> |
N | 马赛克持续时间,单位为秒,精确到毫秒,默认直到片尾 |
avthumb/mp4/mosaic/1/mosaicGravity/NorthWest/mosaicOffsetX/100/mosaicOffsetY/200/mosaicSize/30x30/mosaicStart/15.2/mosaicDuration/14.3
avwatermarks是专门用于视频多水印的服务,支持在视频的不同时间段、不同位置,分别打上文字和图片的水印。
avwatermarks/<format>
/r/<FrameRate>
/vb/<VideoBitRate>
/subtitle/<SubtitleURL>
/ab/<BitRate>
/aq/<AudioQuality>
/ar/<SamplingRate>
/ac/<ChannelNum>
/aspect/<Aspect>
/resolution/<Resolution>
/start/<Start>
/duration/<Duration>
/stripmeta/<0|1>
/wmImage/<EncodedRemoteImageUrl>
/wmGravity/<Gravity>
/wmOffsetX/<offsetX>
/wmOffsetY/<offsetY>
/wmPos/<Position>
/wmDuration/<Duration>
/wmText/<EncodedText>
/wmGravityText/<GravityText>
/wmFont/<EncodeFont>
/wmFontColor/<EncodeFontColor>
/wmFontSize/<FontSize>
/wmOffsetX/<offsetX>
/wmOffsetY/<offsetY>
/wmPos/<Position>
/wmDuration/<Duration>
/wmImage
/...
/wmText
/...
/wmImage
/...
/wmText
/...
大部分参数解释可参照 http://developer.qiniu.com/code/v6/api/dora-api/av/video-watermark.html 新增两个参数,类似视频截取.
参数 | 必填 | 说明 |
---|---|---|
<Format> |
是 | 输出的视频格式(mp4)。 |
/r/<FrameRate> |
否 | 视频帧率,每秒显示的帧数,单位:赫兹(Hz),常用帧率:24,25,30 等,一般用默认值。 |
/vb/<VideoBitRate> |
否 | 视频比特率,单位:比特每秒(bit/s),常用视频比特率:128k 1.25m 5m 等。 |
/subtitle/<SubtitleURL> |
否 | 添加字幕,支持:srt格式字幕(uft-8编码和和utf-8 BOM编码)、带有字幕的mkv文件、embed(将原视频的字幕流嵌入目标视频)。基于base64编码。 |
/ab/<BitRate> |
否 | 静态码率(CBR),单位:比特每秒(bit/s),常用码率:320k, 256k, 192k, 128k, 64k 等。 |
/aq/<AudioQuality> |
否 | 动态码率(VBR),取值范围为 0 ~ 9,值越小,码率越高,不得和上面的静态码率 <BitRate> (CBR) 参数合用。 |
/ar/<SamplingRate> |
否 | 音频采样频率,单位:赫兹(Hz),常用采样频率:44100,22050,12050,8000等。 |
/ac/<ChannelNum> |
否 | 音频声道数量,单位:整数值,目前只支持多种声道转为单声道,即为1,其他数值不合法。 |
/start/<Start> |
否 | 指定视频截取的开始时间,以毫秒为单位(精确到小数点后三位,例如1.234秒)。用于视频截取,从一段视频中截取一段视频。 |
/duration/<Duration> |
否 | 指定视频截取的长度,以毫秒为单位(精确到小数点后三位,例如1.234秒)。用于视频截取,从一段视频中截取一段视频。 |
/aspect/<Aspect> |
否 | 指定视频播放时候的宽高比,格式为w:h ,比如16:9 |
/resolution/<Resolution> |
否 | 指定视频分辨率,格式为 wxh 或者预定义值,w取值范围[20,3840],h取值范围[20,2160]。 |
/stripmeta/<0 1> |
否 | 是否清除文件的metadata,1为清除,0为保留 |
<EncodedRemoteImageUrl> <EncodedText> |
否 | 水印的源路径,图片水印目前仅支持远程路径,需要经过urlsafe_base64_encode。注意:至少填写1项,不可超过5项 |
/wmGravity/<Gravity> |
否 | 打水印的位置,参考水印锚点参数表,默认值为NorthEast(右上角) |
/wmGravity/ <GravityText> |
否 | 打水印的位置,参考水印锚点参数表,默认值为NorthEast(右上角) |
/wmOffsetX/<offsetX> |
否 | 视频水印位置的相对横向偏移量,当值为正数时则向右偏移,反之向左 |
/wmOffsetY/<offsetY> |
否 | 视频图片水印位置的相对纵向偏移量,当值为正数时则向下偏移,反之向上 |
/wmFont/<EncodeFont> |
否 | 文本字体(详见支持字体列表),需要经过urlsafe_base64_encode,默认为黑体。注意:中文水印必须指定中文字体 |
/wmFontColor/<EncodeFontColor> |
否 | 水印文字颜色,需要经过urlsafe_base64_encode,RGB格式,可以是颜色名称(例如red)或十六进制(例如 #FF0000),参考RGB颜色编码表,默认为黑色 |
/wmFontSize/<FontSize> |
否 | 水印文字大小,单位: 缇,等于1/20磅,默认值0(默认大小) |
/wmPos/<Postion> |
否 | 指定水印显示的起始时间,单位:秒,不填表示全时长。支持魔法变量$(end)表示视频结束时间点 ,注:需要和wmDuration同时存在 |
/wmDuration/<Duration> |
否 | 指定水印显示的持续时间,单位:秒,正数表示时间增长方向,负数表示时间递减方向。不填表示全时长。注:需要和wmPos同时存在 |
avwatermarks/mp4/wmImage/aHR0cDovL3Rlc3QtMi5xaW5pdWRuLmNvbS9sb2dvLnBuZw==/wmOffsetX/40/wmOffsetY/40/wmPos/10/wmDuration/10/wmText/d2Vsb3ZlcWluaXU=/wmFontColor/cmVk/wmFontSize/59/wmGravityText/North/wmOffsetX/30/wmOffsetY/30/wmPos/5/wmDuration/10/wmImage/aHR0cDovL3Rlc3QtMi5xaW5pdWRuLmNvbS9sb2dvLnBuZw==/wmOffsetX/40/wmOffsetY/40/wmGravity/SouthWest/wmPos/10/wmDuration/10/wmImage/aHR0cDovL3Rlc3QtMi5xaW5pdWRuLmNvbS9sb2dvLnBuZw==/wmOffsetX/40/wmOffsetY/40/wmGravity/South/wmPos/10/wmDuration/10/wmImage/aHR0cDovL3Rlc3QtMi5xaW5pdWRuLmNvbS9sb2dvLnBuZw==/wmOffsetX/40/wmOffsetY/40/wmGravity/SouthEast/wmPos/$(end)/wmDuration/-20