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

本文解决前端使用video.js播放RTMP流时遇到的问题,分享如何正确设置流地址及类型,避免常见错误,并提及流媒体管理的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前提:前端网页是不能直接播放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流创建了还是及时销毁掉,否则会引起其他页面的错误,有时间了再补充销毁的文章了,希望对相关问题上的朋友有所帮助。

转载于:https://www.cnblogs.com/wujx9/p/11025915.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值