视频内容分析,即借助 AI 对音视频内容进行智能分析,是一种离线任务。使用音视频内容分析,可以对视频分类、打标签及截取封面等给出智能建议,帮助视频平台准确高效地管理视频。
音视频内容分析包括以下功能:
功能名称 | 说明 |
智能分类 | 对视频所属的分类给出建议,目前有十余个类别,包括: 新闻、娱乐、游戏、科技、美食、体育、旅行、动漫、舞蹈、音乐、影视及汽车等。 |
智能标签 | 对视频可以打上的标签给出建议,目前共有3000余种标签,例如: 游戏、交通工具、音乐家、赛车、宠物、架子鼓、自行车、魔兽世界、电脑、学校及夹克等。 |
智能封面 | 从视频中选出一张或几张截图,作为推荐采用的封面。 |
智能按帧标签 | 为视频逐帧画面,给出打标签的建议,目前共有1000余种标签,例如: 现代舞、水上运动、牛排、宝宝、小猫、一年生植物、驱逐舰、漫画、草坪、婚纱、多功能厅及护照等。 |
音视频内容分析模板
通过音视频内容分析参数,可以控制分析任务具体执行哪几项分析操作。云点播使用音视频内容分析模板来表示智能分析参数集合:
是否启用智能分类。
是否启用智能标签。
是否启用智能封面。
是否启用智能按帧标签。
任务发起
以下是各种方式发起音视频内容分析任务的说明:
调用服务端 API ProcessMedia 发起任务:在请求中的
AiAnalysisTask
参数指定 音视频内容分析模板 的模板 ID。通过控制台对视频发起任务:调用 服务端 API 创建任务流,任务流中配置音视频内容分析任务(
MediaProcessTask.AiAnalysisTask
中指定);在控制台使用该任务流 发起视频处理。服务端上传时指定任务:调用 服务端 API 创建任务流,任务流中配置音视频内容分析任务(
MediaProcessTask.AiAnalysisTask
中指定);申请上传 中的procedure
参数指定为该任务流。客户端上传时指定任务:调用 服务端 API 创建任务流,任务流中配置音视频内容分析任务(
MediaProcessTask.AiAnalysisTask
中指定);在 客户端上传签名 中的procedure
指定该任务流。控制台上传:调用 服务端 API 创建任务流,任务流中配置音视频内容分析任务(
MediaProcessTask.AiAnalysisTask
中指定);通过控制台上传视频,选择 上传的同时对视频进行处理操作 并指定视频上传后执行该任务流。结果获取
发起音视频内容分析任务后,您可以通过异步等待 结果通知 和同步进行 任务查询 两种方式获取视频内分析任务的执行结果。下面是发起内容分析任务后,普通回调方式下结果通知的示例(省略了值为 null 的字段):
{"EventType":"ProcedureStateChanged","ProcedureStateChangeEvent":{"TaskId":"1256768367-Procedure-2e1af2456351812be963e309cc133403t0","Status":"FINISH","FileId":"5285890784246869930","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},"AiAnalysisResultSet":[{"Type":"Classification","ClassificationTask":{"Status":"SUCCESS","ErrCode":0,"Message":"","Input":{"Definition":10},"Output":{"ClassificationSet":[{"Classification":"动物","Confidence":80},{"Classification":"旅行","Confidence":34}]}}},{"Type":"Cover","CoverTask":{"Status":"SUCCESS","ErrCode":0,"Message":"","Input":{"Definition":10},"Output":{"CoverSet":[{"CoverUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/xxx1.jpg","Confidence":79},{"CoverUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/xxx2.jpg","Confidence":70},{"CoverUrl":"http://1256768367.vod2.myqcloud.com/xxx/xxx/xxx3.jpg","Confidence":66}]}}},{"Type":"Tag","TagTask":{"Status":"SUCCESS","ErrCode":0,"Message":"","Input":{"Definition":10},"Output":{"TagSet":[{"Tag":"马","Confidence":34},{"Tag":"鸟","Confidence":27},{"Tag":"植物","Confidence":13},{"Tag":"海滩","Confidence":11}]}}}],"TasksPriority":0,"TasksNotifyMode":""}}
回调结果中,
ProcedureStateChangeEvent.AiAnalysisResultSet
有Type
为Classification
、Cover
和Tag
三种类型的分析结果,分别代表视频智能分类、视频智能封面和视频智能标签。Type
为Classification
的结果显示,Output.ClassificationSet
置信度最高的分类是动物
,其次的分类则是旅行
。Type
为Cover
的结果Output.CoverSet
,给出了3个建议采用的封面,CoverUrl
是对应封面的下载地址。Type
为Tag
的结果Output.TagSet
,给出了4个视频建议采用的标签,按照置信度从高到低排列。