无法播放HLS播放列表|的Video.js

时间:2017-09-14 12:27:50

标签: wordpress web video.js bandwidth hls

我正在使用WordPress网站,并以编程方式集成了Video.js播放器。屏幕是黑色的,我可以听到音频。最有可能的是,这是由带宽造成的(如附带的屏幕截图所示)。

有时我能够观看视频,但大多数时候都是黑屏。

如何解决此问题。我的代码如下:

<link href="https://unpkg.com/video.js/dist/video-js.css" rel="stylesheet">
<script src="https://unpkg.com/video.js/dist/video.js"></script>
<script src="https://unpkg.com/videojs-contrib-hls/dist/videojs-contrib-hls.js"></script>

</head>
<body>

<?php
    $var_value = $_GET['video_id'];
?>

<video id="my_video_1" class="video-js vjs-default-skin" controls preload="auto" width="640" height="268" data-setup='{}'>
<source src="https://d3eykkkvwlu40v.cloudfront.net/v2/hls/<?php echo $var_value?>/<?php echo $var_value?>.m3u8" type="application/x-mpegURL">

</video>

<script src="http://static.jsbin.com/js/render/edit.js?4.0.4"></script>

请指导。感谢。

enter image description here

1 个答案:

答案 0 :(得分:1)

浏览器中的Media Source Extension (MSE)不支持您在音频/视频和纯音频流之间动态切换,反之亦然。因此,如果播放器以仅音频版本开头,它将无法完全切换或只播放该版本的音频。

理论上,玩家可以通过为每个这样的开关重新初始化MSE来在这些变体之间切换。但我不知道是否有任何球员支持这一点,原因很充分:

  • 开关不会完全无缝
  • 浏览器将删除缓冲的数据

这将是糟糕的用户体验。

所以我认为有三种选择:使用它,删除仅音频变体或查找/构建支持此功能的播放器。我要去除。