一、服务器端
1、nignx
2、ffmpeg
3、srs
4、livego
5、node-rtsp-rtmp-server
github搜一圈也很多
https://github.com/gwuhaolin/livego
https://github.com/sevenzoe/gortmp
https://github.com/c-bata/rtmp
二、rtmp推流器
1、rtmp发布h264裸数据
H264视频通过RTMP直播
https://blog.csdn.net/firehood_/article/details/8783589
整理了下 https://files.cnblogs.com/files/dong1/rtmp_pusher.zip
2、发布h264 rtmp最省事的还是srs-librtmp
开源srs自带的示例srs_h264_raw_publish.c就很容易用起来
https://www.cnblogs.com/dong1/p/5100792.html
我导出了srs-librtmp项目,做了两个demo,分别跑在x86和arm
附件:https://files.cnblogs.com/files/dong1/srs-librtmp_pusher_demo.zip
3、直接用ffmpeg
https://github.com/Akagi201/ffmpeg-push
整理了下,可以推送文件和url网络实时流
https://files.cnblogs.com/files/dong1/ffmpeg_push.zip
./main source.200kbps.768x320.flv rtmp://182.61.45.149:1935/live/movie
./main rtsp://admin:[email protected]:554/H.264/ch1/main/av_stream rtmp://182.61.45.149:1935/live/movie
4、下面这个有音频和视频两路数据,比较方便
This tool is used to encapsulate H264 and AAC to RTMP
https://github.com/rainfly123/flvmuxer
5、封装成ts也可以
ts muxer
https://github.com/felix-001/tslib
三、拉流
1、ffmpeg
2、python-librtmp
四、测试实例
我这里用的开源livego和rtmp_pusher
https://www.cnblogs.com/dong1/p/9574508.html
https://files.cnblogs.com/files/dong1/rtmp_pusher.zip
libRTMP + livego
./test 往服务器推流,然后ffplay播放
ffplay -i rtmp://localhost:1935/live/movie
ffplay http://127.0.0.1:7002/live/movie.m3u8