web-dev-qa-db-ja.com

HTML5でHLSを再生する

そのため、Flashを使用せずにHTML5でHLSストリームを再生しようとしています。私たちは多くのビデオプレーヤーを試しましたが、それらはすべてフラッシュプレーヤーで中継します。私の質問ですが、Flashを使用せずにHTML5でHLSストリーム(任意)を再生することは可能ですか?

(私は https://github.com/RReverser/mpegts を知っていますが、モバイルでは機能せず、かなり遅れています。)

8
Dallox

HLSはすべてのブラウザでサポートされているわけではありません。フラッシュとHTML5ストリーミングの両方をサポートするjwPlayerを使用しています(利用可能な場合)。残念ながら、HLSストリーミングのサポートは、さまざまなブラウザーで正しく機能するためにFlashに依存する必要があります。 HTML5 HLSブラウザのサポートを参照してください: http://www.jwplayer.com/html5/hls/

6
Sixthpoint

成熟した安定したオープンソースのHLSHTML5プレーヤーAFAIKはありません。ただし、2つの商用製品があります。

  • Viblast Player -非常に安価で比較的使いやすい。これは、最低限のHLSHTML5再生です。開発者はUIを自分で行うか、Video.js/Flowplayer/JWPlayerと統合する必要があります。
  • Theo Player -私はこれについてあまり経験がありません。価格は公開されていません。デモは問題ないように見え、Firefoxのほとんどのバージョンでも機能します。

これらのプレーヤーは両方とも MSE API に依存しており、サポートされていないブラウザー(IE <= 10、Firefox)では機能しません。

5

HLS.jsプロジェクトは、最近では非常に信頼性があります( https://github.com/video-dev/hls.js/tree/master )。最新バージョンのブラウザでサポートされています。 Flashには依存しません。フロープレーヤーで使用できます。 hls.jsは、「video/MP4」入力でMSEをサポートするブラウザと互換性があります。サポート対象:

  • Chrome for Android 34+
  • Chrome for Desktop 34+
  • Firefox for Android 41+
  • デスクトップ42以降用のFirefox
  • Windows8.1以降のIE11 +
  • Edge for Windows 10+
  • デスクトップ用Opera
  • デスクトップ用Vivaldi
  • Safari for Mac 8+(ベータ版)
5
jolumg

ほとんどのブラウザはMPEG2-TSをネイティブにサポートしていないため、基本的にすべてのHTML5プレーヤーはMPEG2-TS(トランスポートストリーム)セグメントをMP4にトランスマックスする必要があります。

実際には、HLSストリームを再生できるHTML5プレーヤーがいくつかあります。一例として、 Bitmovin Player があります。これは、プロフェッショナルなサポートとレガシーブラウザのフォールバックを提供します。これは商用製品ですが、無料プランも提供しています。 hls.js のようなオープンソースプロジェクトも利用できます。

ただし、 Appleの発表 今年のWWDCから、HLSでMP4セグメントを使用することも可能になり、トランスマックスの必要がなくなりました。それを行う方法と利点の詳細は​​、 この記事 でかなりよく概説されています。どのプレイヤーがそれをサポートしているかわからない、少なくともiOS10とmacOSのSafariでのAppleのネイティブ実装。また、Bitmovinはすでにそれをサポートしています。

4
Daniel

THEOplayer この場合は非常に興味深いです。 HLSを使用して、Flashを使用せずにすべての一般的なブラウザとプラットフォームにストリーミングできます。

Internet Explorer、Firefox、Chrome、Opera、Windows、Linux、Mac、iOSのSafari、Android、Windows Phone)をサポートしています。

また、以前の回答とは異なり、機能するためにMSEに依存していません。その結果、このプレーヤーはすべてのプラットフォームで動作し、古いIEバージョン(10以降)およびMSEをサポートしていないブラウザーでも動作します。

1
MrP