本文共 778 字,大约阅读时间需要 2 分钟。
在开发 网页直播多分屏的时候, 产品提出议建说, 能不能在多分屏的时候, 默认静音状态. 因为多分屏界面, 如果声音打开, 好多个直播画面同时发出声音太过嘈杂, 体验不好. 我表示赞同. 心想, 这个应该不难处理吧, 结果踩到一个 的坑, 在这里做下记录.
我原本以为, 只要在原生 video 标签中加入 muted 属性, VideoJS 就能够自动解析, 对视频流静音处理. 然而在测试的过程中发现只有在 html5 模式下有效, flash 模式对这个 muted 属性免疫. 于是去研究 video-js-swf
的源码.
我之前写过一篇博客提到 video-js-swf
官方的版本存在 , 为了解决这个问题, 改用了这个 , 我把它 Fork 到 , 在 src/VideoJS.as
这个入口文件中, 找到问题所在. 应该是 video-js-swf
遗漏了 vjs_muted
这个外部指令的回调, 于是给它补上, 重新编译swf, flash 模式下, muted 属性就生效了.
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1NdJcQSE-1573101055325)(http://oytlksufs.bkt.clouddn.com/videojs/parse-muted-attr.png)]
没有去测试官方版本是不是也存在这个问题, 不过, 我去看了一下官方版本的 src/VideoJS.as
也遗漏了这个回调, 推测也是存在的.
网页直播多分屏效果图:
安防流媒体直播-QQ交流群:
国标GB28181无插件LiveGBS-QQ交流群:
WEB:
TEL: Tel:187-0985-4855 (同微信)
Copyright © LiveQing.com 2016-2019
转载地址:http://lgvvi.baihongyu.com/