欢迎光临
我们一直在努力

SRS流媒体服务二次开发-实现媒体流录制服务

一 概述

        该文章是通过研究srs流媒体服务源代码后,裁剪实现了一个简版的媒体流录制服务,该服务具有的功能有:1.可以做为一个rtmp服务;2.可以实现对rtmp服务接收到的流实现录制(仅支持h264,aac格式);3.视频文件录制成功后可以通知给第三方程序.

二 流程

        该服务从三个方面描述一下流程,实现对该服务的整体把握.

1.服务启动流程

a. 创建/初始化全局实例对象,包括:全局日志对象;全局配置对象;初始化协程;初始化异步回调工作线程;创建全局服务管理对象; 初始化消息队列.

b. 解析配置文件;

c. 设置当前工作目录; 

d. 初始化日志; 

e. 检查配置文件; 

f. 运行服务(实现对全局管理对象接口的调用,通过全局管理对象将服务跑起来).

2.录制mp4文件流程

a. 配置文件中配置录制mp4文件的参数;

vhost __defaultVhost__ {
dvr {
enabled on; #允许录制
dvr_apply all;
dvr_path ./objs/nginx/html/[app]/[stream]/[2006]/[01]/[02]/[stream]-[15].[04].[05].[999].mp4; #mp4文件命名及路径
dvr_plan segment; #分段录制
dvr_duration 300; #300秒一个文件
dvr_wait_keyframe off; #不等待关键帧

}
#配置http勾子,实现完成一个录像文件后,将文件信息发送到指定地方
http_hooks {
enabled on;#允许启用勾子
on_dvr

赞(0)
未经允许不得转载:171主机测评 » SRS流媒体服务二次开发-实现媒体流录制服务
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址