FFmpeg 总结(十二)用 ffmpeg 与 nginx 实现直播多路流并发播放

2,913 阅读1分钟

图:撒哈拉沙漠

下载 nginx 和 nginx-rtmp源码: 
nginx.org/download/ng… 
github.com/arut/nginx-…

编译安装: 
cd nginx-1.5.10 
./configure –with-http_ssl_module –add-module=../nginx-rtmp-module-master 
make 
make install

浏览器输入localhost:8010(默认80,由于其他服务在用,这里用8010),得到如下:

配置nginx支持rtmp,找到nginx.cnf,在http节点结束后加入rtmp节点,如下:

  1. rtmp {    server {

  2.            listen 1935;//监听1935端口

  3.            application yuiop {//为什么叫yuiop?你懂的啦

  4.                    live on;

  5.                    record off;

  6.        }

  7.    }

  8. }

FFmpeg开始推流,先推一个直播流来直播

接下来开始看下服务器流是否可看,开始拉流播放

  1. ffplay rtmp://xxx.xxx.xxx.xxx:1935/yuiop/live

也可以在网页端口写点js代码,也能支持播放,效果如下:

推一个流,拉一个流不过瘾,直播可是,同时有n多个流在推拉,接着来,推拉两个,很自然也成功了。

要是用我之前《Android Multimedia框架总结(二)MediaPlayer框架及播放网络视频案例》的例子,把直播地址,传给mediaplayer,就可以在手机上看直播了。

最后来张全家福,本地电脑和直播服务器同时看直播,有2-3秒延迟

第一时间获得 不止个人原创 android/音视频技术干货,问题深度总结,FrameWork源码解析,插件化研究,FFmpeg研究,直播技术,最新开源项目推荐,还有更多职场思考 ,欢迎关注我的微信公众号,扫一扫下方二维码或者长按识别二维码