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目录下生成视频文件。