RTMP局域网直播环境搭建(ffmpeg+crtmpserver+xampp+jwplayer7)
来源:互联网 发布:淘宝网晚礼服 编辑:程序博客网 时间:2024/05/16 19:25
相关文章链接:
【1】ffmpeg处理RTMP流媒体的命令大全
【2】Win7(Windows 7)下用VS2013(Visual Studio 2013)编译crtmpserver
【3】xampp的安装及使用
【4】JWPlayer 7的正确使用方法及Flash plugin failed to load解决方法
【5】Adobe Media Server 5(AMS)的安装及使用
【6】Adobe Media Server 5(AMS)的简单配置
服务器端:笔记本,Win7 64位,IP—192.168.2.189,需安装IE浏览器(我的是IE11)和ffmpeg+crtmpserver+xampp+jwplayer7,并关闭防火墙,WiFi开不开无所谓。
客户端:台式机,Win7 32位,IP—192.168.2.173,需关闭防火墙。
问题一.Setup took longer than 30 seconds to complete
之前【4】中只是在笔记本上做了本机测试,通过360浏览器地址栏输入http://localhost/jwplayer-7.7.1或者http://127.0.0.1/jwplayer-7.7.1可以调用jwplayer实现点播和直播,但是通360输入http://192.168.2.189/jwplayer-7.7.1却不能播放。后来换了谷歌浏览器,这三个地址都能正常播放。
现在设置jwplayer-7.7.1播放本机视频,即将index.html中的file设置为file:'sample.flv',在台式机浏览器中输入http://192.168.2.189/jwplayer-7.7.1,不管是谷歌还是IE浏览器都会出现提示Setup Timeout Error:Setup took longer than 30 seconds to complete,这是因为JavaScript代码长时间没有响应,导致jwplayer加载失败。
关于这个问题“烈火君”做了优化,不过他优化的是jwplayer-7.0.0,详见链接:JW Player 7 烈火优化版下载。下载后解压到E:\xampp\htdocs,重命名为jwplayer-7.0.0,并将jwplayer-7.7.1中的index.html和sample.flv拷贝到E:\xampp\htdocs\jwplayer-7.0.0中,再次在台式机浏览器中输入http://192.168.2.189/jwplayer-7.0.0,播放成功。需要注意的是,这时只有IE浏览器测试成功。
问题二.Could not connect to server
现在设置jwplayer-7.0.0播放rtmp流,即将index.html中的file设置为file:'rtmp://localhost/vod/sample.flv',此sample.flv的位置参考【2】。在台式机IE浏览器中输入http://192.168.2.189/jwplayer-7.0.0,播放失败,提示Error loading stream:Could not connect to server。
关于这个问题,很可能是防火墙封堵了rtmp服务器的默认端口1935,但是现在防火墙已经关闭,用netstat -ano查看也并未发现端口被其他进程占用。联想到之前搭建web服务器时,出现过本机可以访问,但是其他机器无法访问的情况,应该是xampp没有配置好。
打开xampp中Apache的配置文件E:\xampp\apache\conf\httpd.conf,找到如下两处,做图中所示修改。
然后将index.html中的file设置为file:'rtmp://192.168.2.189/vod/sample.flv',此时完整的index.html代码如下所示。
<html><head><script src="jwplayer.js"></script><script src="jwplayer.flash.swf"></script><script>jwplayer.key="iP+vLYU9H5KyhZeGt5eVuJJIoULUjltoaMeHXg==";</script></head><body><div style="left:0;top:0;width:100%;height:100%;position:absolute;" id='myplayer'></div> <script type='text/javascript'> jwplayer('myplayer').setup({ file: 'rtmp://192.168.2.189/vod/sample.flv', image: 'Logo.jpg', width: '100%', height: '100%', autostart: 'false', }); <!--播放停止后,重新开始-->jwplayer().onIdle(function(){ jwplayer().play(true) });</script></body></html>再次在台式机IE浏览器中输入http://192.168.2.189/jwplayer-7.0.0,播放成功。
现在来试试笔记本上用ffmpeg向rtmp服务器推流,台式机进行播放。如何使用ffmpeg推流,【5】中有说明,这里只记录步骤。
1.将index.html中的file设置为rtmp://192.168.2.189/live/livestream。
2.cd到ffmpeg.exe 所在目录,输入指令ffmpeg -re -i 800600.264 -c copy -f flv rtmp://192.168.2.189/live/livestream,回车。
3.台式机IE浏览器中依然输入http://192.168.2.189/jwplayer-7.0.0,播放成功。
步骤2和3对调也行,只不过此时浏览器中的jwplayer会一直等待,直到ffmpeg开始推流,才有视频画面。
有图有真相
ffmpeg
crtmpserver
xampp
IE浏览器
- RTMP局域网直播环境搭建(ffmpeg+crtmpserver+xampp+jwplayer7)
- CentOS7安装crtmpserver搭建在线直播平台(crtmpserver开机启动、rtmpd、rtmpserver、rtmp直播)
- 用crtmpserver搭建开源rtmp直播服务
- 用crtmpserver搭建开源rtmp直播服务
- nginx rtmp 直播环境搭建
- nginx开发(四)调用ffmpeg,搭建rtmp直播流。
- 使用ffmpeg+crtmpserver搭建文件的伪直播
- ffmpeg + nginx + rtmp 搭建本地直播服务器
- 新 CentOS 6.5 6.9 环境下搭建直播模拟测试环境 ffmpeg+nginx=rtmp (傻瓜式环境搭建)
- 利用crtmpserver搭建rtmp服务器
- RTMP直播点播-基于开源crtmpserver
- RTMP直播点播-基于开源crtmpserver
- 视频直播服务端环境搭建(Nginx+RTMP)
- ffmpeg rtmp直播命令
- crtmpserver搭建直播点播平台
- 直播系列4-使用nginx+nginx-rtmp-module+ffmpeg搭建流媒体服务器笔记(一)
- 直播系列5-使用nginx+nginx-rtmp-module+ffmpeg搭建流媒体服务器笔记(二)
- 搭建nginx rtmp直播服务器,ffmpeg模拟推流
- IIS7.5中对所有请求响应的JSON数据进行GZIP编码
- UIButton中setTitleEdgeInsets和setImageEdgeInsets的使用
- pig语法学习 FOREACH GENERATE group AS
- GitHub提交新建文件
- typedef struct和指针
- RTMP局域网直播环境搭建(ffmpeg+crtmpserver+xampp+jwplayer7)
- Android串口通信
- 每天一个linux命令(33):df 命令
- 根据value值 自动选择相应的radio select
- Android 仪表进度条 自定义View
- android5.1.1中添加led驱动到apk层的一体化接口
- js 信息滚播
- UIViewContentMode各类型效果
- VS堆栈溢出异常