一、概述
为更好的支持用户在各种业务场景下的内容安全风险,对象存储与数据万象在原有静态音视频审核的基础上,进一步提供了流式音视频的审核,当用户直播内容属于违规内容时,可以及时发现并进行处理。
以腾讯云实时音视频产品(Tencent Real-Time Communication,TRTC)为例,整体审核流程如下:
流程如下:
1. TRTC 客户端发起直播请求。
2. TRTC 服务端收到请求后进行直播。
3. 通过 发布音视频流到直播 CDN 可以拿到所需的直播流地址,有 rtmp、flv、hls 三种格式可用。
4. 使用万象直播流审核接口进行直播审核,SDK 封装此接口方便用户下载使用。
5. 客户拿到审核回调进行后续业务处理。
二、步骤1:创建存储桶
·如果你已创建存储桶,可跳过该步骤。
·如果你是首次使用 COS 控制台,可参考 创建存储桶 进行操作。
三、步骤2:创建 TRTC 应用
如果你已创建 TRTC 应用,且能够使用 TRTC 相关功能时,可直接跳转到 步骤4. 开启旁路推流。
1. 登录 TRTC 控制台,单击应用管理,可以看到应用列表,单击创建应用,相关说明可参见 创建应用。
2. 创建应用后,单击应用列表右侧的详情,可以看到应用概览,其中SDKAppID、SDKSecretKey需要在后续流程中用到,可以先记录下来。
3. 完成以上步骤,我们知道了SDKAppID、SDKSecretKey这两个重要数据,切记不要泄漏这些数据。接下来可以开始对 TRTC DEMO 进行搭建了。
四、步骤3:TRTC DEMO 搭建流程
本 DEMO 目的是使客户快速了解直播流程,客户业务需求的具体实现可参考 TRTC 页面使用文档。流程如下:
1. 下载所需平台的 SDK&Demo 源码,直接下载 ZIP 包即可,本次示例使用的是 Android 平台。
2. 配置 TRTC-API-Example 工程文件。找到并打开 LiteAVSDK_TRTC_Android_版本号/TRTC-API-Example/Debug/src/main/java/com/tencent/trtc/debug/GenerateTestUserSig.java 文件。相关参数说明如下:
·BIZID:默认为 PLACEHOLDER ,请设置为实际的 bizid,暂不使用 CDN 时请用 0 替换,以便编译通过。
·APPID:默认为 PLACEHOLDER ,请设置为实际的 appid,暂不使用 CDN 时请用 0 替换,以便编译通过。
·SDKAPPID:默认为 PLACEHOLDER ,请设置为实际的 SDKAppID(上面流程已获取,即SDKAppID)。
·SECRETKEY:默认为 PLACEHOLDER ,请设置为实际的 SecretKey(上面流程已获取,即SDKSecretKey)。
3. 编译运行。使用 Android Studio打开源码工程 TRTC-API-Example,单击运行即可。运行成功后页面如下所示,TRTC DEMO 提供视频通话、录屏直播等多种功能示例。
五、步骤4:开启旁路推流
1. 登录 实时音视频控制台。
2. 在左侧导航栏选择应用管理,单击目标应用右侧的配置。
3. 在旁路转推配置中,单击开启旁路转推右侧的,在弹出的开启旁路转推功能对话框中,单击开启旁路转推功能即可开通。
六、步骤5:云直播 CDN 拉流
可以通过 发布音视频流到直播 CDN 获取到直播流数据,最后生成一条直播流地址,有 rtmp、flv、hls 三种协议可用。
rtmp 协议的播放地址:rtmp://example.myhost.com/AppName_example/StreamName_example flv 协议的播放地址:http://example.myhost.com/AppName_example/StreamName_example.flv hls 协议的播放地址:http://example.myhost.com/AppName_example/StreamName_example.m3u8
我们推荐以 http 为前缀且以 .flv 为后缀的 http – flv 地址,该地址的播放具有时延低、秒开效果好且稳定可靠的特点。
七、步骤6:调用审核接口
获取到直播流后,使用万象的直播流审核接口进行直播审核。
·直播流审核可使用对应语言的 COS SDK。
·直播审核参数说明,请参见 提交直播审核任务。
·直播审核回调内容,请参见 直播审核回调内容。
提交审核时可以设置客户业务信息,审核回调时会原样返回,拿到审核回调后可以得到具体房间或具体用户的违规情况。相关参数说明,请参见 UserInfo 节点说明。
八、步骤7:违规解散房间或踢用户
收到回调后判断是否违规,发现违规后发起解散房间或移出用户等处置操作,其他 API 接口可以参见 客户端 API、服务端 API。
·移出用户
·解散房间