综合技术

rtmp流媒体协议播放遇到的坑


前提:

前端网页是不能直接播放rtmp或rtsp直播流的。

项目中需要播放工场仓储物流的实时监控摄像头。经过各种调研,发现video.min.js+videojs-flash.min.js,再加上浏览器安装了adobe flash播放器,则能完美实时播放rtmp视频了。

但是用video.min.js也踩了个严重的坑,很多Bug都是这样,不大,但愁人!

上次看一有趣的前端Bug,说一个前端开发人员一个Bug找了一个晚上,竟不知啥原因。描述是这样,是个地图项目,却发现地图怎么都出不来,就一个蓝色背景,找了好久的原因百思不得姐阿,结果不小心拿水杯时碰到了鼠标滚轮,发现有了地图区域,于是再滚再滚,地图出来了,原来是后端人员随便给了个定位点(0,0)导致放大定位到了大西洋,全是海,尼玛真是一片蓝!~

言归正传,今天遇到的播放rtmp流的坑,所以记录下来。

上代码:

changeRtmpUrl(data: any) {

let src = data.src;

if(this.player == null){

this.player = window[‘videojs’](‘#asn_video’, {

fill: true

});

}

//$(‘#asn_video source’).attr(‘src’, src);

//this.player.src(src);

this.player.src({ type : "rtmp/mp4", src : src });

this.player.load();

this.player.play();

}

我的是动态切换后台给返回的rtmp流地址,结果怎么切换不能播放,于是发现,看代码红色部分this.player.src(src);直接设置src函数的值为流地址是不行的,src函数中要设置为object,里面需要有流地址的src地址源,再加上type属性则完美呈现。。。

后记:关于流媒体还没有完,rtmp流创建了还是及时销毁掉,否则会引起其他页面的错误,有时间了再补充销毁的文章了,希望对相关问题上的朋友有所帮助。

展开阅读全文

微信扫一扫,分享到朋友圈

rtmp流媒体协议播放遇到的坑
0

Smart Ideas: Revisited

上一篇

Logging with Azure Application Insights – Part 1: Spring-Boot

下一篇

你也可能喜欢

评论已经被关闭。

插入图片
rtmp流媒体协议播放遇到的坑

长按储存图像,分享给朋友