一、服务器端
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裸数据
librtmp比较常用,但是不好用,还是整理了下
https://blog.csdn.net/firehood_/article/details/8783589
linux版
https://files.cnblogs.com/files/dong1/librtmp_pusher.tar.gz
windows版
https://files.cnblogs.com/files/dong1/librtmp_pusher_win.zip
2、发布h264 rtmp最省事的还是srs-librtmp
开源srs自带的示例srs_h264_raw_publish.c就很容易用起来
我导出了srs-librtmp项目,做了两个demo,分别跑在x86和arm
附件:https://files.cnblogs.com/files/dong1/srs-librtmp_pusher_demo.zip
实际项目都是推送内存,也提供个demo
附件:https://files.cnblogs.com/files/dong1/srs-librtmp_demo.zip
3. PHZ76 写的rtmp也很不错
4、直接用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:12345@172.16.23.142:554/H.264/ch1/main/av_stream rtmp://182.61.45.149:1935/live/movie
5、下面这个有音频和视频两路数据,比较方便
This tool is used to encapsulate H264 and AAC to RTMP
https://github.com/rainfly123/flvmuxer
6、封装成ts也可以
ts muxer
https://github.com/felix-001/tslib
三、拉流
1、ffmpeg
2、python-librtmp
四、测试实例
我这里用的开源livego和libRTMP
https://www.cnblogs.com/dong1/p/9574508.html
https://files.cnblogs.com/files/dong1/librtmp_pusher.tar.gz
ffplay -i rtmp://localhost:1935/live/movie
ffplay http://127.0.0.1:7002/live/movie.m3u8
使用RTMPdump(libRTMP)直播来自v4l2的摄像头数据
https://blog.csdn.net/li_wen01/article/details/71548079
https://files.cnblogs.com/files/dong1/libRTMP_live_v4l2-master.zip