文档中心>媒体处理>实践教程>媒体质检能力接入

媒体质检能力接入

最近更新时间:2024-07-04 17:51:11

我的收藏

场景一:点播文件质检

方法1:控制台发起任务

步骤1:创建点播服务编排

登录媒体处理控制台 创建点播服务编排,在服务编排任务配置中插入“媒体质检”编排节点。



添加节点后,单击

根据业务实际场景选择系统预设模板或者创建自定义模板,保存设置。
节点配置完成后,单击页面下方创建按钮,创建服务编排。



服务编排创建完成后返回点播服务编排列表页,在列表页中找到刚创建的编排,单击“启用”按钮,按钮开启后约3 - 5分钟编排生效。




步骤2:发起点播质检任务

待服务编排生效后,即可往编排配置中的触发目录中上传需要质检的点播文件,此时将会按照编排中节点及模板的配置内容对上传的文件进行质检处理。

步骤3:管理点播质检任务

质检任务可以在 点播任务管理 中进行查看。




方法2:调用API处理

步骤1:发起点播质检任务

对 URL 视频链接 或 COS 中的媒体文件发起处理任务,可参见 API 文档 发起媒体处理
请求示例:
POST / HTTP/1.1 Host: mps.tencentcloudapi.com Content-Type: application/json X-TC-Action: ProcessMedia
{ "InputInfo": { "Type": "COS", "CosInputInfo": { "Bucket": "test-<appid>", "Region": "ap-shanghai", "Object": "/video/test.mp4" } }, "AiQualityControlTask": { "Definition": 10 } }
示例说明:
1. Type 可以为 COS 和 URL,根据类型填写源文件路径。
2. Definition 为任务配置模板 ID,模板通过 CreateQualityControlTemplate 生成。
响应示例:
{ "Response": { "TaskId": "26000002-ScheduleTask-8c0bb3a13e10462fc405262c623aeff4tt7" } }
示例说明:TaskId 是唯一任务标记,可用于查询和管理任务。

步骤2:查询任务详情

通过任务 ID 查询任务的执行状态和结果的详细信息,可参见 API 文档 查询任务详情
请求示例:
POST / HTTP/1.1 Host: mps.tencentcloudapi.com Content-Type: application/json X-TC-Action: DescribeTaskDetail
{ "TaskId": "26000002-ScheduleTask-8c0bb3a13e10462fc405262c623aeff4tt7" }
响应示例:
{ "Response": { "WorkflowTask": { "Output": { "QualityControlResultSet": [ { "Type": "BackWhiteEdge", "QualityControlItems": [ { "Confidence": 100, "StartTimeOffset": 12, "EndTimeOffset": 12 } ] } ], "ContainerDiagnoseResultSet": [ { "Category": "StreamAbnormalCharacteristics", "DateTimeSet": [], "SeverityLevel": "Warning", "TimestampSet": [ 11.006 ], "Type": "AudioDuplicatedFrame" } ], "QualityEvaluationScore": 68 } } } }

场景二:直播流质检

方法1:控制台发起任务

步骤1:创建直播服务编排

登录媒体处理控制台 创建直播服务编排,在服务编排任务配置中插入“媒体质检”编排节点。



添加节点后,单击

根据业务实际场景选择系统预设模板或者创建自定义模板,保存设置。
节点配置完成后,单击页面下方创建按钮,创建服务编排。



服务编排创建完成后返回直播服务编排列表页,列表页中可以找到刚创建的直播服务编排。




步骤2:创建直播质检任务

进入 直播任务管理,单击创建任务,在创建任务页面输入要处理的直播流地址,选择前置步骤中创建的直播服务编排(其他配置根据自身业务需要选择填写),单击创建即可完成。




步骤3:管理直播质检任务

质检任务可以在 直播任务管理 中进行查看。

方法2:调用 API 处理

步骤1:发起直播质检任务

对直播流媒体发起处理任务,可参见 API 文档 对直播流发起处理
请求示例:
POST / HTTP/1.1 Host: mps.tencentcloudapi.com Content-Type: application/json X-TC-Action: ProcessLiveStream
{ "Url": "rtmp://tlivecloud.com/live/test", "TaskNotifyConfig": { "NotifyType": "URL", "NotifyUrl": "http://tlivecloud.com/callback" }, "AiQualityControlTask": { "Definition": 10 } }
示例说明:
1. Url 为直播流地址。
2. TaskNotifyConfig 为回调服务地址,当视频流诊断出异常时,将异常信息实时回调给该地址。
响应示例:
{ "Response": { "TaskId": "24000002-live-procedure-813dc41e6fdc22dcf24aa6e9c61cp92" } }
示例说明:TaskId 是唯一任务标记,可用于查询和管理任务。

步骤2:解析直播异常回调

获取到消息后,从消息的 msgBody 字段中解析出 MPS 直播流处理事件通知的内容,可参见 API 文档 解析直播流处理结果
如果发起直播质检任务时配置了 TaskNotifyConfig,当视频流诊断出异常时,会将异常信息实时回调给配置的地址。
回调请求示例:
POST / HTTP/1.1 Content-Type: application/json
{ "NotificationType": "AiQualityControlResult", "TaskId": "24000002-procedure-live-813dc41e6fdc22dcf24aa6e9c61cp92", "AiQualityControlResultInfo": { "QualityControlResults": [ { "Type": "BackWhiteEdge", "QualityControlItems": [ { "Confidence": 100, "StartTimeOffset": 12, "EndTimeOffset": 12 } ] } ], "DiagnoseResults": [ { "Category": "StreamStatusException", "Type": "StreamOpenFailed", "Timestamp": 0, "Description": "Open url failed.", "DateTime": "2023-11-06T06:37:28Z", "SeverityLevel": "Fatal" } ] } }
示例说明:QualityControlResultSet 为内容质检的异常信息,DiagnoseResultSet 为格式诊断的异常信息。