【发布时间】:2014-01-21 21:28:05
【问题描述】:
我有一个相当奇怪的问题。
我创建了一个网站,该网站从各种来源传输所有 m3u8 链接(Apple HLS)。我使用 viewright 播放器成功地制作了它,但我想支持移动设备,所以我用 videojs 设置它 - 它运行良好。在目前的设置下,人们必须安装一个 viewright 插件,这很好,但我想通过使用 html5 来避免这种情况并使其更加用户友好。
我已经尝试过使用 CDN 和自托管,如下所述: https://github.com/videojs/video.js/blob/v4.3.0/docs/guides/setup.md 我的videojs相关代码如下:
头:
<link href="//vjs.zencdn.net/4.2/video-js.css" rel="stylesheet">
<script src="//vjs.zencdn.net/4.2/video.js"></script>
主体:
<div class="row">
<div class="span7">
<video id="vid" class="video-js vjs-default-skin"
controls preload="auto" width="640" height="640"
poster="my_video_poster.png"
data-setup="{}">
</video>
</div>
<script>
var myPlayer = _V_('vid');
function changeChannel(url, chanid)
{
myPlayer.src(url);
myPlayer.play();
}
</script>
当然,在正文中还有流列表。当您单击链接时,它会更改为该流。
例子:
<a href="javascript:changeChannel('http://link.to.stream.m3u8', 0);">StreamName</a>
再次 - 代码在我的 android 手机 (chrome) 和 iphone (safari) 上完美运行,所以我对此完全感到困惑。
如果你知道的话,谢谢!
编辑:
在控制台中,加载页面时显示 ReferenceError: V 未定义 当我加载一个流时它说: TypeError: myPlayer 未定义
我尝试将 V 替换为 videojs 和 VideoJS(在其他 SO 帖子中找到),但它只是说当时没有定义 videojs/VideoJS。
【问题讨论】:
标签: google-chrome firefox html5-video video.js