开发者社区> 问答> 正文

在视频点播有声音播放,全屏后再退出全屏,画面播放声音没了是为什么?

展开
收起
乐天香橙派 2023-08-08 15:16:39 129 0
2 条回答
写回答
取消 提交回答
  • 触发了暂停,解决方式,监听pause,手动调用一次pause,把播放按钮展示出来
    28963076588223c8701151123dd82d56.png
    player.on('pause', function(){ console.log('pause--暂停') player.pause(true); })—此回答来自钉群”阿里云-VOD-视频点播-技术交流(进群先看公告)“

    2023-08-09 10:23:11
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    具体来说:

    你提供的视频地址是 https://play.lanqiangxcx.cn/ 这个域名

    而aliplayer设置页面是 https://player.alicdn.com/ 这个域名

    这两个域名不同,属于不同的域

    浏览器的同源策略不允许一个源中的脚本读取另一个源的数据

    所以aliplayer设置页面无法直接调用你提供视频地址中的音频数据

    只有在全屏时,通过iframe嵌入,能正常播放音频

    但是退出全屏后,aliplayer页面再次获取音频数据时,被浏览器拦截了

    导致退出全屏后就无法再播放音频

    为了解决这个问题,你有几个选择:

    使用视频和音频公共域名
    将视频m3u8地址和音频url放在一个域名下,即可解决跨域问题。

    通过JSONP解决跨域
    在视频源支持JSONP的前提下,可通过JSONP调用音频,绕过同源策略限制。

    为视频源开启CORS跨域
    允许视频源的音频url来自aliplayer域名,实现跨域共享。

    部署aliplayer设置页面到视频源相同域名下
    将aliplayer页面放到video.lanqiangxcx.cn同一个域名下,实现同源。

    以上方法都能有效避免全屏退出后的音频无法播放问题。

    2023-08-08 21:03:53
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
互联网音视频点播业务云上实践 立即下载
《VoD问题排查与实战手册》 立即下载
低代码开发师(初级)实战教程 立即下载