直播录制的原理是什么?

腾讯云直播录制相关-LMLPHP

对于一条直播流,一旦开启录制,音视频数据就会被旁路到录制系统。主播的手机推上来的每一帧数据,都会被录制系统追加写入到录制文件中。

一旦直播流中断,接入层会立刻通知录制服务器将正在写入的文件落地,将其转存到点播系统中,并为其生成索引,这样您在点播系统中就会看到这个新生成的录制文件了。同时,如果您配置了录制事件通知,录制系统会将该文件的索引 ID在线播放地址等信息通知给您之前配置的服务器上。

但是,如果一个文件过大,在云端的转出和处理过程中就很容易出错,所以为了确保成功率,我们的单个录制文件最长不会超过120分钟,您可以通过 RecordInterval 参数指定更短的分片。

为什么直播无法进行视频录制呢?

直播录制回看功能依托于腾讯云的云点播服务支撑,如果您想要使用录制功能,首先需要在腾讯云的管理控制台 开通云点播服务。更多直播录制回看相关操作介绍,请参见 录制和回看

直播结束了要多久才能看到录制文件?

预计在直播完成后5分钟左右可获取录制文件,录制完成后会有事件回调,详细以收到回调时间为准,更多详情请参见 回调配置

直播录制后,如何获取录制文件?

录制文件生成后自动存储到云点播系统,需要客户开通点播服务才能存储成功。可通过以下方式获取录制文件:

云点播控制台

录制事件通知

点播 API 查询

直播视频能迁移吗?

目前需要您获取视频的下载地址后自己迁移。

如何设置视频存储时长?

云直播的视频存储目前没有时间限制,您可以通过控制台和 RSET API 接口管理视频文件。

一次直播录制会生成几个录制文件?

录制 MP4、FLV 或 AAC 格式:单个文件时长限制为1分钟 - 120分钟。您可以通过 创建录制模板 接口中的 RecordInterval 参数指定更短的分片。

如果一次直播过程非常短暂,录制模块未启动就结束推流,那么系统会无法生成录制文件。

如果一次直播时间不算长(小于 RecordInterval),且中途没有推流中断的事情发生,那么通常只有一个文件。

如果一次直播时间很长(超过 RecordInterval ),那么会按照 RecordInterval 指定的时间长度进行分片,分片的原因是避免过长的文件在分布式系统中流转时间的不确定性。

如果一次直播过程中发生推流中断(之后 SDK 会尝试重新推流),那么每次中断均会产生一个新的分片。

录制 HLS 格式:最长单个文件时长无限制,如果超出续录超时时间则新建文件继续录制。续录超时时长可设置为0s - 1800s。

如何知道哪些文件属于某一次直播?

准确来说,作为 PAAS 的腾讯云并不清楚您的一次直播是怎么定义的,如果您的一次直播持续了20分钟,但中间有一次因为网络切换导致的断流,以及一次手动的停止和重启,那么这算是一次直播还是三次呢?

对于普通的移动直播场景,我们一般定义如下的界面之间的这段时间为一次直播:

腾讯云直播录制相关-LMLPHP

所以来自 App 客户端的时间信息很重要,如果您希望定义这段时间内的录制文件都属于这次直播,那么只需要用直播码和时间信息检索收到的录制通知即可(每一条录制通知事件都会携带流 ID开始时间结束时间等信息)。

如何把碎片拼接起来?

目前腾讯云支持使用云端 API 接口拼接视频分片,API 详细用法可以参见 视频拼接

只设置了一个录制模板,但是直播录制出现了两路,如何排查?

一般情况下,可能是当前推流域名下并发了两个录制任务。建议根据下列思路依次排查:

1. 检查控制台录制配置信息,确认录制文件类型是否选择只选择一个格式。

若控制台为新版控制台,前往 域名管理,单击推流域名右侧的管理,进入查看模板配置中的录制配置,查看关联模板“录制格式”信息。

若控制台为旧版控制台,前往 直播码接入> 接入配置检查直播录制配置信息。

2. 创建录制任务创建录制模板 为两种录制发起方式,实际使用中按需选择其中一种即可。若同一直播流,配置录制模板的同时创建了录制任务,会导致重复录制。请检查是否已在控制台开启录制任务同时,调用 API 3.0的 CreateRecordTask 接口或 API 2.0的 Live_Tape_Start 接口发起了录制任务。

注意:

若您的直播录制是在旧版控制台开启的,新版控制台中如需关闭,可通过 提交工单 找相关人员协助解决。

若以上方法无法解决您的问题,请 提交工单 解决,会有专人对接。

10-14 19:30