添加水印是在视频转码或截图时,将特定的图片或文字附加在画面指定位置的过程,是一种离线任务。云点播支持以下类型的水印:
静态图片水印:PNG 格式的图片水印,可以是版权方的 LOGO、台标等,常用于表明视频的版权归属。
动态图片水印:APNG 格式的动态图片水印,可以实现水印图片动态变化的效果。
文字水印:多语言的文字形式水印,可以是用户昵称等,常用于短视频中标识视频制作者。
云点播支持为视频或截图添加多个水印,并可以指定各个水印在画面中的大小和位置。
水印模板
水印的目标规格包含了水印类型、宽高和位置等参数。云点播使用水印模板表示水印参数集合,通过水印模板,可以指定以下水印相关参数。
参数 | 说明 |
水印类型(Type) | 可以添加图片和文字两种类型的水印: 图片水印:静态图片和动态图片。 文字水印:支持多种语言的文字。 |
水印位置(Position) | 水印在视频画面中的相对位置。 |
图片大小(ImageSize) | 图片水印占视频画面的大小。 |
图片内容(ImageContent) | 图片水印中图片的二进制内容。 |
字体大小(FontSize) | 文字水印中字体的大小。 |
字体类型(FontType) | 文字水印中文字的字体类型(如宋体)。 |
字体颜色(FontColor) | 文字水印中文字的颜色(0xRRGGBB)。 |
文字透明度(FontAlpha) | 文字水印中文字的透明度(0 - 100%)。 |
任务发起
以下是各种方式发起带水印的转码任务说明:
调用服务端 API ProcessMedia 发起任务:在请求中的
MediaProcessTask.TranscodeTaskSet
参数指定 水印模板 的模板 ID。控制台上传:在控制台 添加任务流,任务流中设置转码时所添加水印的目标规格;通过控制台上传视频,选择“上传的同时对视频进行处理操作”并指定视频上传后执行该任务流。
结果获取
发起添加水印的转码任务后,您可以通过异步等待 结果通知 和同步进行 任务查询 两种方式获取截图任务的执行结果。下面是发起带有水印的转码任务后,普通回调方式下结果通知的示例(省略了值为 null 的字段):
{"EventType":"ProcedureStateChanged","ProcedureStateChangeEvent":{"TaskId":"1256768367-Procedure-2e1af2456351812be963**********03t0","Status":"FINISH","FileId":"52858**********9930","FileName":"动物世界","FileUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/AtUCmy6gmIYA.mp4","MetaData":{"AudioDuration":60,"AudioStreamSet":[{"Bitrate":383854,"Codec":"aac","SamplingRate":48000}],"Bitrate":1021028,"Container":"mov,mp4,m4a,3gp,3g2,mj2","Duration":60,"Height":480,"Rotate":0,"Size":7700180,"VideoDuration":60,"VideoStreamSet":[{"Bitrate":637174,"Codec":"h264","Fps":23,"Height":480,"Width":640}],"Width":640},"MediaProcessResultSet":[{"Type":"Transcode","TranscodeTask":{"Status":"SUCCESS","ErrCode":0,"Message":"","Input":{"Definition":220,"WatermarkSet": [{"Definition": 23120}]},"Output":{"Url":"http://1256768367.vod2.myqcloud.com/xxx/xxx/v.f20.m3u8","Size":63120997,"Container":"mov,mp4,m4a,3gp,3g2,mj2","Height":1086,"Width":1920,"Bitrate":513402,"Md5":"084d403c73930ca2f8**********7bd3","Duration":60,"VideoStreamSet":[{"Bitrate":473101,"Codec":"h264","Fps":24,"Height":480,"Width":640}],"AudioStreamSet":[{"Bitrate":48581,"Codec":"aac","SamplingRate":44100}],"Definition":220}}}],"TasksPriority":0,"TasksNotifyMode":""}}
回调结果中,
ProcedureStateChangeEvent.MediaProcessResultSet
有一个Type
为Transcode
类型的转码结果:转码的规格Definition
为220,转码的同时添加了一个水印,水印的规格Definition
为23120。