是否可以不在 javascript 中硬编码 hls 文件的源代码,而是将源代码放在<source>
像常规 mp4 文件一样的标签中?
用例
我正在运行一个基于 html5 的Plyr网站。到目前为止,我已经设法让它运行,并有 4 种分辨率可供选择,用 mp4 文件编码。视频标签如下所示:
<video id="video" controls poster="{URL}/poster.jpg playsinline>
<source src="{URL}/1080.mp4 type="video/mp4" size="1080">
<source src="{URL}/720.mp4" type="video/mp4" size="720">
and so on....
但是问题是,如果我放置一个带有.m3u8
文件扩展名的源,Firefox 会抱怨它无法播放它,因为它不受支持。很公平,除了 github 自述文件上的 hls 演示显示了一个代码笔,其中源代码被硬编码,如下所示:
<video id="video" controls></video>
<script>
var source = 'https://<url-to-m3u8-here
...
这在我的用例中不起作用,因为正如您在上面看到的,我需要多个源来进行分辨率切换,直到 Plyr 可以原生地使用清单来做到这一点。
有没有办法将 hls.js 合并到 Plyr 中,这样我就可以像这样指定一个视频标签?
<video id="video" controls poster="{URL}/poster.jpg playsinline>
<source src="{URL}/index.m3u8" type="application/x-mpegURL" size="Auto">
<source src="{URL}/1080.mp4 type="video/mp4" size="1080">
<source src="{URL}/720.mp4" type="video/mp4" size="720">
(我正在努力包含 Auto 标签)