老铁们,大家好,相信还有很多朋友对于逐步构建RTSP流媒体服务器和的相关问题不太懂,没关系,今天就由我来为大家分享分享逐步构建RTSP流媒体服务器以及的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
zlmediakit代码云链接:https://gitee.com/xia-chu/zlmediakit
Zlmediakit的github链接:https://github.com/xiongziliang/zlmediakit
zlmediakit源代码图片:
Zlmediakit功能列表:
支持流式RTSP,推到Zlmediak Server,拉动流可以拉出RTSP,RTMP,HLS等。有很多功能,此流媒体服务器支持H265。
1。安装编译器及其插件(如有必要,请安装)
1.1zlmediakit采用C ++ 11语法和库,并要求编译器支持完整的C ++ 11标准,如下:
(1)在Linux上需要GCC版本=4.8(也应支持4.7)。
(2)clang=?在MacOS上(我也不知道,我想其中大多数不会遇到这个问题)。
(3)Windows上的Visual Stuido=2015年(也可以通过VS2013的某些版本进行编译和传递。如果您害怕麻烦,建议直接将VS2017送给VS2017)。
1.2安装编译器
(1)如果您是Debian操作系统(包括Ubuntu用户),则附带的GCC版本通常是新的,您可以像这样安装GCC编译器:
sudo apt-get安装构建必需
(2)安装cmake
Zlmediakit使用CMAKE构建项目。仅通过使用CMAKE可以生成MakeFile(或Xcode/VS项目),因此必须在完成后续步骤之前安装CMAKE。
sudo apt-get安装cmake
(3)依赖库
Zlmediakit可以选择依靠一些第三方库,而这些库不需要;当构建Zlmediakit时,CMAKE可以在系统路径中找到这些库,并根据安装情况选择是否启用相关功能。您可以选择安装这些依赖项并启用相关功能:
安装OpenSSL
玩RTMP时,Flash Player采用复杂的握手模式。如果未安装库,Flash Player将无法播放ZlmediaKit提供的RTMP URL。同时,需要使用OpenSSL打开ZlmediaKit的HTTPS/RTSPS相关功能。
安装FFMPEG
Zlmediakit可以通过FORK FFMPEG进程实现多个协议的流,并且在编译过程中不需要安装FFMPEG。
安装SDL,Avcodec,avutil
这三个库由Zlmediakit的Test_player Test程序使用,通常您不需要安装这3个库。
在Debian系统(包括Ubuntu)系统下安装其他依赖项的方法:
注意:根据您的实际情况进行安装。如果已安装,则无需再次安装它。
sudo apt-get安装libssl-dev
sudo apt-get安装libsdl-dev
sudo apt-get安装libavcodec-dev
sudo apt-get安装libavutil-dev

sudo apt-get安装ffmpeg
2。构建RTSP流媒体服务器
(1)在以下目录路径中,如下:
创建一个文件夹并输入命令:
mkdir zlmediakit_stream_server
(2)在以下目录路径中,如下:
国内用户最好使用代码云连接,这将更快。输入下载命令:
git克隆-Depth 1 https://gitee.com/xia-chu/zlmediakit.git
下载接口如下:
下载完成后,将在此处自动生成以下目录,如下:
输入ZlmediaKit的源代码目录并输入命令:
CD Zlmediakit/
ZlMediaKit源代码目录,如下接口:所示
(3)在以下目录和路径中:
查看分支并输入命令:
git分支-A
接口如下:
(4)在以下目录和路径:中
执行一个非常重要的命令(下载组件),别忘了,如下:
git subsodule Update-开机
克隆完成后,以下接口:
(5)下载的第三方库和组件(例如FFMPEG和RTMP等),输入以下目录和路径:
(6)输入以下命令以查看下载的文件,如以下接口:所示
在这里,如果您需要参考RTP的使用,则可以在以下目录中参考代码。其他代码也可以引用。
其中一些在这里实现了反应堆模型,线程封装(包括线程池)和工具,因此还必须学*和使用与后端相关的知识。
(7)ZlmediaKit提供多平台编译版本,输入以下目录:
检查GCC的版本,然后输入命令如下:
GCC -V
检查版本号,接口如下:
请注意,根据官方网站,只要这里的GCC版本大于4.8,就可以,因为它需要支持C ++ 11版本。同样,也可以编译MacOS和Windows。

(8)查看CMAKE版本:
在以下目录:中使用cmake进行编译
(9)构建项目,输入以下命令:
mkdir构建
CD构建
输入以下目录并执行命令:
cmake .
以下接口:
汇编过程如下:
汇编已完成,如以下接口:所示
(10)在以下目录中输入汇编命令:
制作-j4
进行过程,如以下接口:所示
完成,如以下接口:所示
(11)输入以下目录:
检查与MediaServer相关的命令并输入命令:
./mediaserver -H
以下接口:
(12)在同一目录中,使用前景运行,输入以下命令:
./mediaserver
或守护程序模式启动
./mediaserver -d
成功的操作接口如下:
请注意,如果配置端口,则可以修改配置文件,在以下目录中输入命令,然后对其进行修改:
修改配置文件:
vim config.ini
更改端口号,接口如下:
3。测试
(1)使用RTSP方法按下流命令
推H264

ffmpeg -re -i source.200kbps.768x320.flv -vcodec H264 -Acodec AAC AAC -F RTSP -RTSP -RTSP_TRANSPORT TCP RTSP3360 //172.16.204.16.204.139/live/live/test/test/test/test/test/test/test
推H265
ffmpeg -re -i source.200kbps.768x320.flv -vcodec H265 -Acodec AAC AAC -F RTSP -RTSP -RTSP_TRANSPORT TCP RTSP3360 //
(2)使用RTMP按下流命令
如果未安装ffmpeg,您也可以使用obs推动流
ffmpeg -re -i source.200kbps.768x320.flv -vcodec H264 -Acodec AAC AAC -F FLV RTMP: //172.16.204.139/live/live/test
RTMP标准不支持H265,但中国有自我扩展。如果您希望FFMPEG支持RTMP-H265,请按照本文进行编译:
请参阅以下链接:
https://github.com/ksvc/ffmpeg/wiki/hevcpush
此插件源代码也非常值得学*,接口如下:
(3)使用RTP按下流命令
H264推流
ffmpeg -re -i source.200kbps.768x320.flv -vcodec H264 -Acodec AAC AAC -F RTP_MPEGTS RTP: //
H265推动流
ffmpeg -re -i source.200kbps.768x320.flv -vcodec H265 -Acodec AAC AAC -F RTP_MPEGTS RTP: //
总而言之,Zlmediakit支持RTSP,RTP和RTMP推动流。 RTSP和RTP协议都支持H264和H265,而RTMP标准仅支持H264。如果您需要支持H265,则只需添加插件即可。链接地址已在上面给出。
有关其他平台的更详细的施工步骤(这次使用Ubuntn系统),您可以参考官方网站地址:
https://github.com/xia-chu/zlmediakit/wiki/%E5%Bf%AB%E9%80%9F%E5%BC%80%E5%A7%8B
接口如下:
RTSP推流接口如下:
推送流上载后,服务器响应接口:
(4)使用ffplay拉动流进行测试RTSP命令:
FFPLAY -RTSP_TRANSPORT TCP RTSP3360 //172.16.204.139/live/test
流拉测试RTSP结果接口:
(5)使用ffplay拉动流进行测试RTMP命令:
ffplay rtmp: //172.16.204.139/live/test
流拉测试RTMP结果接口:
服务器的接口最终断开:
标题:逐步构建RTSP流媒体服务器
链接:https://www.yaowan8090.com/news/xydt/47611.html
版权:文章转载自网络,如有侵权,请联系删除!
用户评论
终于找到这个教程了!想自己搞个直播平台,一直找不到合适的搭建方案,现在看介绍这教程挺详细的,希望能按着步骤一步一步来成功弄出来一套属于我自己的流媒体系统!
有8位网友表示赞同!
看了几篇教程后还是觉得这篇写的比较清楚,RTSP协议其实有点复杂,以前没怎么接触过,这篇教程把每个步骤都解释得很详细,很有帮助。
有20位网友表示赞同!
我之前看过一篇关于建立RTSP服务器的文章,但感觉太抽象了,这篇文章的步骤讲解很明确,图文并茂,新手也能看得懂。希望最后能顺利搭建出来!
有14位网友表示赞同!
教程写的不错,终于明白RTSP流媒体服务器是怎么运作的了,以前总觉得这个功能背后的原理好神秘啊!希望后续还可以分享一些更高级的配置和应用场景。
有12位网友表示赞同!
还是挺建议大家学*一下RTSP协议和建设自己的流媒体服务器,这样可以更好地理解视频传输技术,也能满足一些个性化的需求,比如搭建家庭监控系统或在线课堂等等。
有17位网友表示赞同!
说实话,教程写的太深了点,我感觉需要一定的编程基础才能完全理解。如果能用更通俗的语言解释一下每个步骤,或者加入更多实例代码,能让入门就更容易些。
有12位网友表示赞同!
这篇文章让我受益匪浅!学*了RTSP协议和流媒体服务器搭建的知识,现在终于可以自己部署一个私有视频平台啦!感谢作者分享这么宝贵的经验!
有14位网友表示赞同!
这个教程确实很详细,但我觉得有些步骤操作比较复杂,对技术水平要求较高。如果能提供一些更为便捷的第三方工具或脚本,会更适合一些新手使用。
有17位网友表示赞同!
搭建RTSP服务器需要配置很多细节,感觉有点头疼。希望以后作者能分享更完善的解决方案和使用技巧,例如如何优化视频编码、调节网络带宽等等。
有19位网友表示赞同!
我个人比较倾向于使用现成的流媒体平台服务,相对来说更简单易用。搭建自己的RTSP服务器虽然可以获得更好的控制权,但也需要投入更多的时间和精力去学*和调试。
有16位网友表示赞同!
最近在搞一个项目需要用到RTSP流媒体服务器,这篇文章正好满足我的需求!
有13位网友表示赞同!
这个教程还是不错的,特别是对一些刚接触RTSP协议的人来说很有帮助。不过个人感觉缺少一些实际应用案例的介绍,可以更加生动地展示RTSP流媒体服务器的强大功能。
有14位网友表示赞同!
搭建RTSP流媒体服务器确实需要一定的技术功底,这款教程虽然比较全面,但对于完全没有编程经验的人来说可能会有些难度。也许可以再附上更多的指导视频或答疑环节,更能帮助新手入门。
有10位网友表示赞同!
看了这篇教程后发现搭建RTSP流媒体服务器并不是那么困难! 我感觉按照它说的步骤来应该可以搞出来。
有13位网友表示赞同!
这个教程比较详细,介绍了从硬件配置到软件安装的各个环节。对于想要自己搭建流媒体服务器的人来说非常有用!不过我觉得在教程里添加一些常见问题解答和故障排除方法会更有帮助。
有10位网友表示赞同!
搭建RTSP流媒体服务器需要了解许多网络协议和技术知识,这篇文章介绍得比较深入,对有一定基础的人来说非常有参考价值。希望能以后作者还能分享更多关于视频编码、传输效率优化等等的专业知识。
有19位网友表示赞同!