直播审核

最近更新时间:2024-10-17 20:10:13

我的收藏

简介

本文档提供关于直播审核相关的 API 概览和 SDK 示例代码。
API
操作描述
用于提交一个直播流审核任务。
用于取消一个在进行中的直播审核任务。

提交直播审核任务

功能说明

本接口用于提交一个直播流审核任务。直播流审核功能为异步任务方式,您可以通过提交直播流审核任务审核您的直播流,然后通过查询直播流审核任务接口查询审核结果。

方法原型

public Guzzle\\Service\\Resource\\Model detectLiveVideo(array $args = array());

请求示例

<?php

require dirname(__FILE__, 2) . '/vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'schema' => 'https', // 审核时必须为https
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->detectLiveVideo(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Type' => 'live_video',
'Input' => array(
'Url' => 'rtmp://example.com/live/123', // 直播流地址
// 'DataId' => '',
// 'UserInfo' => array(
// 'TokenId' => '',
// 'Nickname' => '',
// 'DeviceId' => '',
// 'AppId' => '',
// 'Room' => '',
// 'IP' => '',
// 'Type' => '',
// ),
),
'Conf' => array(
'Callback' => '',
// 'CallbackType' => 1,
'BizType' => '07d41bbb5a3a93dca4xxxxxxxxxxx', // 审核策略
),
'StorageConf' => array(
'Path' => 'xxx',
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Type
Request
审核的任务类型,直播流审核固定为 live_video。
String
Input
Request
包含需要审核的直播流信息。
Container
Conf
Request
包含审核规则的配置信息。
Container
StorageConf
Request
包含直播流转存的配置信息。
Container
Container 类型 Input 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Url
Request.Input
需要审核的直播流播放地址,例如 rtmp://example.com/live/123
String
DataId
Request.Input
该字段在审核结果中会返回原始内容,长度限制为512字节。您可以使用该字段对待审核的数据进行唯一业务标识。
String
UserInfo
Request.Input
自定义字段,可用于辅助行为数据分析。
Container
Container 节点 UserInfo 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
TokenId
Request.Input.UserInfo
一般用于表示账号信息,长度不超过128字节。
String
Nickname
Request.Input.UserInfo
一般用于表示昵称信息,长度不超过128字节。
String
DeviceId
Request.Input.UserInfo
一般用于表示设备信息,长度不超过128字节。
String
AppId
Request.Input.UserInfo
一般用于表示 App 的唯一标识,长度不超过128字节。
String
Room
Request.Input.UserInfo
一般用于表示房间号信息,长度不超过128字节。
String
IP
Request.Input.UserInfo
一般用于表示 IP 地址信息,长度不超过128字节。
String
Type
Request.Input.UserInfo
一般用于表示业务类型,长度不超过128字节。
String
ReceiveTokenId
Request.Input.UserInfo
一般用于表示接收消息的用户账号,长度不超过128字节。
String
Gender
Request.Input.UserInfo
一般用于表示性别信息,长度不超过128字节。
String
Level
Request.Input.UserInfo
一般用于表示等级信息,长度不超过128字节。
String
Role
Request.Input.UserInfo
一般用于表示角色信息,长度不超过128字节。
String
Container 类型 Conf 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
BizType
Request.Conf
表示审核策略的唯一标识,您可以通过控制台上的审核策略页面,配置您希望审核的场景,例如涉黄、广告、违法违规等,配置指引: 设置审核策略。您可以在控制台上获取到 BizType。BizType 填写时,此条审核请求将按照该审核策略中配置的场景进行审核。BizType 不填写时,将自动使用默认的审核策略。
String
Callback
Request.Conf
回调地址,以http://或者https://开头的地址。
String
CallbackType
Request.Conf
回调片段类型,有效值:1(回调全部截帧和音频片段)、2(仅回调违规截帧和音频片段)。默认为 1。
Integer
Container 类型 StorageConf 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Path
Request.StorageConf
表示直播流所要转存的路径,直播流的 ts 文件和 m3u8 文件将保存在本桶该目录下。m3u8 文件保存文件名为 Path/{\\$JobId}.m3u8,ts 文件的保存文件名为 Path/{\\$JobId}-{\\$Realtime}.ts,其中 Realtime 为17位年月日时分秒毫秒时间。
String

返回结果示例

响应参数具体含义参考 直播审核API文档
GuzzleHttp\\Command\\Result Object
(
[RequestId] => NjEzYTA4YTlfZmNjYTNiMGFfNGM2MV8zMTM1ODQ=
[ContentType] => application/xml
[ContentLength] => 322
[JobsDetail] => Array
(
[JobId] => avd61e00d8116f11ec953452540024deb5
[State] => Submitted
[CreationTime] => 2021-09-09T21:14:17+08:00
)


[Bucket] => examplebucket-1250000000
[Location] => examplebucket-1250000000.ci.ap-guangzhou.myqcloud.com/video/auditing
)

取消直播审核任务

功能说明

本接口用于取消一个在进行中的直播审核任务,成功取消后将返回已终止任务的 JobID。

方法原型

public Guzzle\\Service\\Resource\\Model cancelLiveVideoAuditing(array $args = array());

请求示例

<?php

require dirname(__FILE__, 2) . '/vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'schema' => 'https', // 审核时必须为https
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->cancelLiveVideoAuditing(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => '', // jobId
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Bucket
String
存储桶名称,格式:BucketName-APPID。
Key
String
任务 ID。

返回结果示例

响应参数具体含义参考 直播审核API文档
GuzzleHttp\\Command\\Result Object
(
[RequestId] => NjEzYTA4YTlfZmNjYTNiMGFfNGM2MV8zMTM1ODQ=
[ContentType] => application/xml
[ContentLength] => 322
[JobsDetail] => Array
(
[JobId] => avd61e00d8116f11ec953452540024deb5
[CreationTime] => 2021-09-09T21:14:17+08:00
)


[Bucket] => examplebucket-1250000000
[Location] => examplebucket-1250000000.ci.ap-guangzhou.myqcloud.com/video/cancel_auditing
)