Crtmp Server 包含了rtsp 服务功能,如果需要一个简单轻量的rtsp服务,Crtmp Server会是不错的选择。

默认情况下,rtsp功能是关闭的,需要在配置文件中打开。window环境下如何搭建crtmp server,前面有

文章介绍,这里不再重复,不清楚的同学,请看 查看前面的博客http://www.cnblogs.com/wanggang123/p/6340653.html。

配置文件修改后的内容如下图所示。

crtmp Server 开启rtsp服务功能

                                                图1  crtmp配置项修改

打开rtsp配置项后,Crtmp Server服务运行后的界面如下图所示

crtmp Server 开启rtsp服务功能

                                        图2,CrtmpServer运行界面

是不是修改了配置文件以后,rtsp服务就可以正常运行起来呢?答案是否顶,还需要修改下stream name。

默认情况下推送rtsp流 到crtmp server的stream name 统一为No Name(有兴趣的同学可以看源码,这里

不详细说明,本文重点不在这里)。为了满足能接收多个rtsp流需要修改下源码,修改后的代码如下图

所示,修改文件basertspappprotocolhandler.cpp。

     crtmp Server 开启rtsp服务功能

                                           图3 修改rtsp stream name

 

stream name 修改以后还有个地方有修改下,否则同时推送音视频流时,取流客户端无法正常播放。

修改处的代码如下图所示,去掉 条件if (_videoLastTs < _audioLastTs)。

crtmp Server 开启rtsp服务功能

                                 图4 音视频同时同流代码修改处

   至此,所有的准备工作已经做好,我们可以开始推流,推流可以用ffmpeg进行。命令格式如下:

ffmpeg -re -i D:\test.ts -vcodec copy -acodec copy -f rtsp  -rtsp_transport tcp rtsp://127.0.0.1:554/live/stream0

  取流端可以用ffpaly进行播放 播放的命令是: ffplay -rtsp_transport tcp rtsp://127.0.0.1:554/live/stream0

通过rtsp推到crtmp server的视频流也可以通过rtmp协议播放,播放的地址是rtmp://127.0.0.1/live/stream0。

 如需要交流请假QQ群流媒体/Ffmpeg/音视频1038388075,127903734,或者QQ350197870.

 

相关文章: