低レイテンシビデオストリーミングの説明
ストリーミングビデオのコンテキストでは、レイテンシは単に、イベントがキャプチャされてから相手がそれを見るまでの遅延、またはラグの尺度です。この遅延は、伝送チェーンの自然な副産物です。各ステップ (カメラのキャプチャ、エンコード、ネットワーク送信、デコードなど) には時間がかかります。ほとんどの場合、私たちはほんの一瞬のことを話しているのですが、それらはすべて合計されます。画面上でまだ起こっていない勝利のゴールを隣人が応援しているのを聞いたことがありますか? さまざまなネットワーク (衛星とケーブルなど) で視聴している可能性があり、一方のネットワークは他方のネットワークよりもレイテンシが低くなっています。では、なぜレイテンシがそれほど大きな議論のポイントになるのでしょうか? 低レイテンシのビデオストリーミングには、ビデオの品質と金額の両方でコストがかかるためです。
伝送チェーンの各ステップには処理時間が重なり、遅延の原因となります
低レイテンシストリーミングを使用する必要があるケースは?
最初にインターネットで視聴する最高品質のビデオが低レイテンシストリーミングとはほど遠いことを知って驚くかもしれません。NetflixとAmazon Primeの両方を活用するAWSによると、現在のビデオストリーミングの遅延の標準は10秒以下です。インタラクティブストリーミングで許容されるレイテンシがほんのわずかであることを考えるまでは、これは大したことではないように思えるかもしれません。Netflixは、時間と品質を相殺することができます。映画はライブ/リアルタイムの体験ではないため、低レイテンシのストリーミングは必要なく、バッファリングを利用できます。高解像度のコンテンツを提供します。テレビで放映されたスポーツイベントの例を考えてみましょう。隣人の声が聞こえない場合、それが起こってから10秒後にすべてが見えていたことを気にしますか? いいえ、実際には、遅延があったことをまったく知らないでしょう。すべての状況で低レイテンシストリーミングが必要なわけではありません。
ここで、世界中にいる特定のチームのファンが、観戦中に互いに交流できるサービスについて考えてみましょう。10秒の遅延は完全なトラブルになります。ビデオ通話の1人のメンバーだけが顕著な遅延を経験している場合、それがどれほど厳しい状況か考えてみてください。サービス形態によっては、2人以上のパーティ間のリアルタイム通話には400ミリ秒から2000ミリ秒の範囲のレイテンシが目安になります。いくつかの例を示します。
ユースケース
|
典型的な待ち時間/遅延
|
ビデオ オン デマンド (映画、Netflix など)
|
約10~60秒の遅延
|
生放送(インタラクションなし)
|
約6~18秒の遅延
|
視聴者とのやり取りが少ない1対多のライブ ストリーム
|
約2~3秒の遅延
|
頻繁にやり取りをする1対多のライブ ストリーム
|
400ミリ秒以下の遅延
|
画像を扱ったことがある場合は、品質とファイルサイズの相関関係を理解しています。高解像度の写真はより多くの帯域幅を必要とし、高品質のオーディオとビデオについても同じことが言えます。ストリームのサイズが利用可能な帯域幅を超えると、速度が低下し始めます。
リアルタイムのインタラクティブ ストリーミングでは、レイテンシが要因となり、多くの場合、帯域幅の要件を減らしたり、ネットワークを最適化したりする以外に選択肢がありません。これが、ZoomがNetflixと同じビデオ品質を配信できない理由です。すべての状況で、同じレベルのレイテンシ (または品質) が要求されるわけではありません。理想的には、インタラクティブなリアルタイムストリーミングソリューションは、遅延のないライブ ストリーミングが必要な場合でも、ユースケースとネットワークの条件を考慮してわずかな遅延が許容される場合でも、最適なバランスを選択する際にある程度の柔軟性を備えています。また、個々の参加者のさまざまな役割や要件に基づいてストリームをカスタマイズできると便利な場合もあります。
超低レイテンシの実現
ユーザーが使用しているデバイス (電話、タブレットなど) を制御できないため、遅延に影響を与える可能性のある場所は実際には2つしかありません。1つはエンコーディングで、もう1つはネットワークです。
エンコーディング
エンコーディングとは、生のビデオを送信に適したデジタル形式に変換するプロセスです。これはコーデック (エンコーダー/デコーダー) の仕事であり、ストリーミングでは、ビデオ用に1つ、付随するオーディオ用に1つ存在します。ビデオ側では、生のビデオをインターネットに適したサイズに圧縮することがすべてです。人間の知覚範囲外のものを取り除くことで、多くの圧縮を実現できます。ただし、これを超えて、知覚可能な品質、帯域幅の可用性、および遅延要件の間でトレードオフを行うことが重要です。コーデックごとに長所と短所が異なるため、作業に適したコーデックを使用することが重要です。
通信網
ネットワーク側には2つの側面があります。1つはパケット損失の隠蔽 (これもコーデック機能) で、もう1つはネットワークアーキテクチャとルーティングです。
パケット損失隠蔽 (PLC)
スイッチングネットワーク(インターネットなど)で送信される情報は、パケットに分解されます。理想的には、パケットは完全に、送信された順序で受信されますが、必ずしもそうではありません。このような通信障害に対処する方法はいくつか確立されていますが、いずれもバッファリング(時間/遅延)に依存していることが難点です。インターネット上で送信されるほとんどのデータでは、これは重要ではありません。例えば、電子メールの場合、数秒の配信時間の延長は気にならないでしょう。しかし、ストリーミング・メディアでは、パケット損失隠蔽(PLC)の機能に低遅延オプションを含めることが重要であり、特にリアルタイムのインタラクティブ・ストリーミングでは、その傾向が顕著です。この場合も、状況によって、知覚できる品質と遅延の適切なバランスを取るために、さまざまな戦略が必要になり、その柔軟性を持つことが重要です。
ネットワークアーキテクチャとルーティング
公衆インターネットが一般に堅牢な場所では、ネットワークの構造やルーティングはそれほど大きな問題ではないかもしれませんが、グローバルなリアルタイムインタラクションをサポートする場合には、最も重要な問題です。なぜなら、すべての経路が等しく作られているわけではなく、公衆インターネット上のルーティングは効率性よりもインターネットサービスプロバイダー(ISP)間のビジネス上の合意に基づいて決定されるからです。何らかの介入なしに、すべての参加者に一貫して低遅延の接続を実現することは非常に困難です。このため、リアルタイムのインタラクティブなステイミングをグローバルに提供するためには、スケーラブルなマネージドネットワークを使用することが唯一の有効なアプローチとなります。
つまり、低レイテンシストリーミングは簡単な作業ではないということです。特に、WebRTCを使ってゼロから構築する場合はなおさらです。しかし、解決策はあります。それは、確立されたリアルタイム・エンゲージメント(RTE)プラットフォームを利用して、重い仕事をさせることです。RTEプラットフォームは、レイテンシーやリアルタイム通信の課題(しばしば進化する)を克服するための重要なリソースと専門知識を有しています。RTEプラットフォームと連携することで、お客様はビジネスの構築に集中することができ、プラットフォームはお客様に最先端のリアルタイムエンゲージメント体験を提供することができます。
レイテンシのまとめ
ライブ/リアルタイムインタラクションのサポートに関連するレイテンシの問題を簡単に要約してみましょう。
低レイテンシストリーミングの利点
- 可能な限り最高の顧客体験をサポート
- RTC の (ある程度の) 絶対要件をカバー
低レイテンシストリーミングの欠点
- エンコーディングとPLCへのより洗練されたアプローチが必要
- 管理されたネットワークが必要
- より高いコスト
Agoraの低レイテンシストリーミングへのアプローチ
Agoraは、レイテンシ要件に対応するために、ユニークなアプローチをとっています。リアルタイムオーディオとビデオの課題に対応するために特別に設計された独自のコーデックを開発し、ビットレートに対する高品質の比率やパケット損失隠蔽(PLC)に対するハイブリッドアプローチなどが含まれています。さらに重要なのは、すべての状況で超低レイテンシのビデオストリーミングが必要なわけではないことを認識していることです。私たちは、さまざまなレベルのサービスを提供し、要件を評価し、その場で調整するために必要な技術を提供します。私たちは、お客様が必要以上に低遅延のためにお金を払う必要はないと考えています。
Agoraは、低レイテンシ、リアルタイムビデオ、オーディオ、メッセージングのために特別に設計されたグローバルネットワークの構築と最適化に多大な投資と改善を行ってきました。戦略的に配置された250以上の自社データセンターを設立し、すべての主要なISPとサーバーを併設しています。これらのリソースは、独自のSD-RTN(Software Defined Real Time Network)で接続されています。ほとんどの場合、起点となるファーストマイルとラストマイルを除くすべてを制御することができます。このため、リアルタイムの状況に応じてルーティングを最適化することができ、世界平均400msのレイテンシーを安定して提供することができるのです。
レイテンシー(レイテンシ)とは? ネットワークの役割と低遅延の手法
ジッター(ジッタ)とレイテンシー(レイテンシ):違い・原因・解決方法