使用HTML5播放HLS

时间:2015-05-21 11:56:05

标签: html5 video streaming hls

所以我试图在不使用Flash的情况下在HTML5上播放HLS流。我们已经尝试了很多视频播放器,但它们都在闪存播放器上播放。 我的问题是,是否可以在不使用Flash的情况下在HTML5上播放HLS流(任何)?

(我知道https://github.com/RReverser/mpegts但它在移动设备上不起作用且非常迟钝。)

5 个答案:

答案 0 :(得分:6)

所有浏览器都不支持HLS。我使用的jwPlayer支持flash和HTML5流媒体(如果可用)。不幸的是,对HLS流的支持仍然需要依赖Flash才能在各种浏览器中正常工作。请参阅HTML5 HLS浏览器支持:http://www.jwplayer.com/html5/hls/

答案 1 :(得分:5)

没有成熟稳定的开源HLS HTML5播放器AFAIK。但是有两种商业产品:

  • Viblast Player - 非常便宜且相对容易使用。这只是一个最低限度的HLS HTML5播放。开发人员必须自己完成UI或将其与Video.js / Flowplayer / JWPlayer集成。
  • Theo Player - 我对这个经历并不多。定价不公开。该演示看起来很好,它甚至适用于大多数版本的Firefox。

这两个玩家都依赖MSE API而不适用于不支持的浏览器(IE< = 10,Firefox)。

答案 2 :(得分:5)

HLS.js项目现在非常可靠(https://github.com/video-dev/hls.js/tree/master)。它支持最新版本的浏览器。它不依赖于Flash。它可以用在流媒体中。 hls.js与支持MSE的浏览器兼容,具有'视频/ MP4'投入。支持:

  • Chrome for Android 34 +
  • Chrome for Desktop 34 +
  • Firefox for Android 41 +
  • Firefox for Desktop 42 +
  • IE11 + for Windows 8.1 +
  • Edge for Windows 10 +
  • Opera for Desktop
  • Vivaldi for Desktop
  • Safari for Mac 8+(测试版)

答案 3 :(得分:4)

基本上所有HTML5播放器都需要将MPEG2-TS(传输流)段转换为MP4,因为大多数浏览器本身不支持MPEG2-TS。

实际上有一些HTML5播放器可以播放HLS流。一个例子是Bitmovin Player,它提供专业支持以及旧版浏览器的后备。它是一种商业产品,但它们也提供免费的计划。 此外,还提供了hls.js等开源项目。

然而,通过今年WWDC的Apple's announcement,现在也可以将MP4段与HLS一起使用,从而消除了对transmux的需求。有关如何做到这一点和优势的更多细节在this article中得到了很好的概述。不确定哪些播放器支持它,至少Apple在iOS 10和macOS上的Safari本机实现; Bitmovin也支持它。

答案 4 :(得分:1)

对于这种情况,

THEOplayer非常有趣。它们允许使用HLS流式传输到所有流行的浏览器和平台,而无需使用Flash。

他们在Windows,Linux,Mac,iOS,Android和Windows Phone上支持Internet Explorer,Firefox,Chrome,Opera和Safari。

此外,与之前的答案相反,他们不依靠MSE来运作。因此,该播放器适用于所有平台甚至旧的IE版本(10及更高版本)以及不支持MSE的浏览器。