なぜ異なる動画フォーマットが存在するのか?
ウェブ動画の配信には主に3つの配信方法があります。それぞれ異なる問題を解決するために設計されました。これらを理解することで、なぜ一部の動画は簡単にダウンロードでき、他の動画はできないのか、そして各タイプを処理するためにgetvyがバックグラウンドで何を行っているのかを把握できます。
HLS
HTTP Live Streaming
2009年にAppleによって開発されました。現在、インターネット上で最も広く使用されているストリーミングプロトコルです。動画を.m3u8プレイリストにリストされた一連の小さな.tsセグメントファイルとして配信します。Safariではネイティブにサポートされており、ChromeやFirefoxではMedia Source Extensions(MSE)を介してサポートされています。
DASH
Dynamic Adaptive Streaming
MPEGグループによる国際標準規格で、MPEG-DASHとしても知られています。HLSと同様に機能しますが、.mpd形式のXMLマニフェストファイルを使用し、通常は.tsの代わりにフラグメント化されたMP4形式(fMP4)でセグメントを配信します。YouTubeはほとんどのストリームにDASHを使用しています。
MP4
直接ファイル
通常のURLを介して配信される、単一の完全な動画ファイルです。最もシンプルな形式であり、ブラウザは直接ダウンロードして再生します。自社サーバーでホストされている動画、ニュースクリップ、およびアダプティブストリーミングを使用していないサイトでよく見られます。
主な技術的違い
| 項目 | HLS | DASH | MP4 |
| プレイリスト/マニフェスト | .m3u8 | .mpd (XML) | なし |
| セグメント形式 | .ts (MPEG-TS) | fMP4または.ts | 単一ファイル |
| アダプティブビットレート | ✅ あり | ✅ あり | ❌ なし |
| DRMサポート | FairPlay | Widevine / PlayReady | 状況による |
| getvyサポート | 完全対応(ブラウザ内MP4) | ffmpegコマンド | 完全対応(直接ダウンロード) |
アダプティブビットレートストリーミングの解説
HLSとDASHはどちらもアダプティブビットレート(ABR)ストリーミングをサポートしています。これは、サーバーが同じ動画を複数の画質レベル(例:1080p, 720p, 480p, 360p)で提供することを意味します。プレイヤーはネットワーク速度を監視し、再生中に自動的に高画質または低画質のストリームに切り替えて、バッファリングを防ぎます。そのため、接続が遅い場合でも、ストリーミング動画が一時停止することはほとんどなく、単に画質が低下します。
マスタープレイリスト(またはマスターマニフェスト)には、利用可能なすべての画質バリアントがリストされています。getvyはこのマスタープレイリストを読み込み、ダウンロード用に最高画質のストリームを選択します。
DRM保護されたストリームはどうなりますか?
デジタル著作権管理(DRM)は、HLSまたはDASHの上に追加の暗号化レイヤーを追加します。動画セグメントは、ライセンスを持つプレイヤーのみが取得できるキーで暗号化されています。getvyはDRM保護を回避しません。保護されていないストリームでのみ動作します。つまり、DRMを使用しているNetflix、Disney+、Amazonプライム・ビデオ、またはその他の主要なサブスクリプションサービスからコンテンツをダウンロードすることはできません。
動画がどのフォーマットを使用しているかを識別する方法
- Chromeのデベロッパーツール(F12)を開き、Network(ネットワーク)タブに移動します。
- フィルターで「Media」を選択するか、「.m3u8」または「.mpd」を検索します。
- 動画を再生します。.m3u8のリクエストが表示されればHLS、.mpdのリクエストが表示されればDASH、直接的な.mp4のURLが表示されれば通常のファイルです。
- または、getvyをインストールするだけで、検出された各動画がHLS、DASH、MP4のいずれであるかを自動的に識別し、ラベルを表示します。