SkypeやFaceTimeよりも高い品質と少ない遅延でリアルタイムに映像を配信できる「Salsify」
スタンフォード大学は、WebRTC(Web Real-Time Communication)やFaceTime、Skypeといったリアルタイムビデオアプリケーションを遅延と品質の両方で上回る新しいリアルタイムビデオ配信技術「Salsify」を発表しました。Salsifyはビデオコーデックとネットワーク通信プロトコルを共同で制御する技術で、論文・データはオープンアクセスで、Salsifyを実装したエンコーダーとデコーダーもGitHubで公開されています。
Salsify — A New Architecture for Real-time Internet Video
https://snr.stanford.edu/salsify/
Salsify: Low-Latency Network Video through Tighter Integration between a Video Codec and a Transport Protocol
https://www.usenix.org/system/files/conference/nsdi18/nsdi18-fouladi.pdf
GitHub - excamera/alfalfa: Purely functional video codec, used for ExCamera and Salsify
https://github.com/topics/video
以下のグラフは、Salsify、WebRTC、WebRTC(VP9・H.264 SVC利用時)、FaceTime、Skype、ハングアウトのSSIM評価(縦軸)と遅延(横軸)を表したもの。上にあるほど品質が高く、右にあるほど遅延が少ないということを意味していて、Salsifyはどちらにおいても他の技術を上回っていることがわかります。
また、以下のムービーは、Google Chrome上で実際にSalsifyとWebRTCでムービーのリアルタイム配信を比較したもの。ネットワーク状況が悪化すると、SalsifyとWebRTCの両方でカクつきが生まれていますが、Salsifyは映像の回復がWebRTCよりも早いことが、ムービーを見るとよくわかります。
Salsify vs. WebRTC - YouTube
リアルタイムビデオアプリケーションは、ムービーを圧縮するビデオコーデックと、データのパケットを送信してネットワークに負荷をかけずに送信量を推定するトランスポート・プロトコルという主に2つのコンポーネントで構成されています。これらコンポーネントは企業によって個別に設計され、SkaypeやFaceTimeといったアプリケーションに採用されています。
トランスポート・プロトコルにはネットワークの速度を割り出そうとする「輻輳制御」が、ビデオコーデックには圧縮されたムービーをトランスポート・プロトコルの指示と一致させようとする「レートコントロール」アルゴリズムが含まれています。これまでの技術では、輻輳制御とレートコントロールを組み合わせる上で、予測不可能なネットワーク上では満足なパフォーマンスが得られないことがあったとのこと。
そこで、Salsifyでは1つの制御ループで2つの制御を同時に行うことで、ネットワークの通信状況が悪化しても、すぐに映像配信を回復できるようになっているとのこと。こうしたSalsifyの技術を応用すれば、たとえば通信状況にかかわらずスムーズなビデオチャットが可能になることが期待できます。
ただし、記事作成時点では、Salsifyで配信できるのは映像のみで、音声データを一緒に配信することは不可能だとのこと。また、実装自体もLinux用のみであり、Windows・macOSでは実装に至っていないそうです。研究チームは、「発表したプロジェクトはSalsifyの設計の利点を実証し、多くの研究者や企業がその結果を再現できるようにすることに価値がある」と述べ、Salsifyのアイデアを組み込むことで多くのアプリケーションでリアルタイムでの映像配信の品質が向上することを意図しているとしました。
スタンフォード大学の研究チームによるSalsifyの詳しい発表内容は、以下のムービーで見ることが可能です。
Salsify: A New Architecture for Real-time Internet Video - YouTube
なお、Salsifyはもともとアプリケーション層フレーミングを用いるための「ALFalfa」という古いプロジェクトからスタートしたもので、ALFalfaで使われている輻輳制御スキーム「Sprout」をレート制御と共同で制御するように設計したもの。「Salsify」という名前はアルファルファ、スプラウトと同じ食用植物のサルシファイ(西洋ゴボウ)から付けられているそうです。
・関連記事
Firefox 67には次世代コーデック「AV1」の世界最速デコーダーが採用されている - GIGAZINE
次世代コーデックの本命「AV1」の技術仕様をXiph.Orgが解説 - GIGAZINE
幅広く利用される動画圧縮コーデック「H.264/MPEG-4 AVC」はどうやって巨大なサイズのムービーを劇的に圧縮するのか? - GIGAZINE
HEVCより高性能でロイヤリティフリーの新しいAV1デコーダー「dav1d」をVLC Player開発元が発表 - GIGAZINE
より高品質なムービーを多くの人が見られるようになる「VP9」についてYouTubeが解説 - GIGAZINE
無料でH.265以上のクオリティを実現できる次世代ビデオコーデック「Daala」の開発は順調 - GIGAZINE
HTML5の標準を狙うGoogleの動画フォーマット「WebM」のこれまでまとめ - GIGAZINE
・関連コンテンツ