多协议、性能稳定、丰富API的流媒体服务器软件
您现在的位置:首页  >  文档  >  录制与回看

下面我们介绍Ti Top Streamer的录制、回看功能:

一、首先,Ti Top Streamer的管理界面上有录制相关设置,目前它是针对某个Application的设置,也就是说,这个设置在一个Application内全局生效。

这个设置界面,如下图所示:

录制

这几个设置参数,您一看就明白,非常简单:是否要录制、录制文件存储路径、每一个录制文件的时长(默认1000毫秒)、录制文件最大保留天数(过了这个天数会被自动删除)。

这里补充说明一点,在上图的存储根目录下,Ti Top Streamer会继续创建几层子目录,其中第一层子目录和第二层子目录分别是Application的名字和Stream的名字。再往下的子目录,这里不多介绍, 您试一下就知道了。

此外,录制生成的文件是ts文件。目的是为了方便HLS回看。

二、其次,录制生成的文件,如何使用?这里介绍我们支持的两个应用场景:

1、导出mp4文件:

我们提供了Rest API,您只要通过接口提交请求,Ti Top Streamer就可以根据请求中的参数为您生成所需的mp4文件。接口调用举例如下:

http://x.x.x.x:port/v1/nvr/convert2mp4
			
说明一下:

请求采用post方法,端口是Rest服务的端口,传递的消息体为json格式,参数包括如下:

1) app_name是应用的名字,例如live

2) stream_name是流的名字,例如myStream

3) start_time是个Unix时间戳,精确到毫秒(绝对时间),代表开始时间。

4) end_time是个Unix时间戳,精确到毫秒(绝对时间),代表结束时间。

5) duration的单位是毫秒,代表时长。

6) file_name 录制文件的文件名,是可选的,如果没有这个参数,我们会用默认的命名规则生成mp4文件。

注意: end_time 和 duration 只能二选一。如果两个参数同时出现,以end_time为准。

下面是一个消息体的例子:
{
    "app_name":"live",
    "stream_name":"s6",
    "start_time":1682648690000,
    "end_time":1682648724000,
    "file_name":"982FADE09C884D84A874E10034B85FAC_20230613164615038.mp4"
}
			

注意:从录制的ts切片文件导出mp4文件需要一定的时间,时长越长,需要的导出时间越长。所以,Ti Top Streamer收到这个请求后,一旦开始处理mp4文件导出工作,就会立即响应这个请求。 也就是说,这个请求的是异步的。最终生成的mp4文件将生成在录制文件的根目录下(您在管理界面上设置的录制文件存储路径)。 经过我们测试,一般10分钟左右的mp4文件,生成时间大致在5秒左右的时间(实际情况,需要 您根据具体的服务器性能做实际测试后才能明确)。


2、HLS回看

已经录制的文件,可以通过HLS来播放。我们下面以live应用和流myStream为例,为大家介绍HLS回看流的URL格式:

http://x.x.x.x:port/live/myStream/playlist.m3u8&start_time=1661569392519&end_time=1661569452519
或
http://x.x.x.x:port/live/myStream/playlist.m3u8&start_time=1661569392519&duration=60000
			
上面url中的参数,start_time和end_time是个Unix时间戳,精确到毫秒(绝对时间),代表开始时间和结束时间。duration是个精确到毫秒的时长。