srs流媒体录制视频
配置dvr
之前介绍了如何配置SRS服务,现在需要将摄像头数据存储到硬盘中,作为历史数据方便后续查看。
https://blog.csdn.net/weixin_54514751/article/details/129284337?spm=1001.2014.3001.5502
SRS服务中已经集成了DVR功能,我们可以进行简单的配置来开启服务。
DVR的计划即决定什么时候关闭flv文件,打开新的flv文件,主要的录制计划包括:
- session:按照session来关闭flv文件,即编码器停止推流时关闭flv,整个session录制为一个flv。
- segment:按照时间分段录制,flv文件时长配置为dvr_duration和dvr_wait_keyframe。注意:若不按关键帧切flv(即dvr_wait_keyframe配置为off),所以会导致后面的flv启动时会花屏。
- time_jitter: 时间戳抖动算法。full使用完全的时间戳矫正;zero只是保证从0开始;off不矫正时间戳。
- dvr_path: 录制的路径
示例
vhost __defaultVhost__ {rtc {enabled on;bframe discard;}dvr {enabled on;dvr_path /home/srs/[app]/[stream]/[2006]/[01]/[02]/[15].[04].[05].[999].flv;dvr_plan segment;dvr_duration 30;dvr_wait_keyframe on;}http_remux {enabled on;mount [vhost]/[app]/[stream].flv;}
}
这里dvr_duration设置的是30秒记录一次。当开始推流即在/home/srs目录下生成视频文件。