ビデオコーデックの種類と特徴

ビデオコーデックの種類とその特徴をメモしておきます。

H.264(AVC)

H.264 は、AVCとも呼ばれ2003 年に標準化されました。

正式名称は、MPEG-4 AVC/H.264です。

このコーデックは、MPEG と ITU-T VCEG が JVT(Joint Video Team)と呼ばれるパートナーシップのもとに開発したものです。

ちなみに前半のMPEG-4 AVCISOIECにおける呼び名で、後半のH.264というのが国際標準化機関のひとつであるITU-Tにおける呼び名で、三団体が共同で策定したので中身は全く同じ物です。

動画のコーデックを策定した国際機関

これによって世界中で同じ規格の動画が見れるという訳です。

当然ながら日本政府も日本の民間企業も、この規格の策定に関わっています。

ついでにお伝えしますと、MPEGとは、ISO/IECのMoving Picture Experts Groupを指し、 AVCがAdvanced Video Codingの略になります。

このコーデックは、4Kまでしか対応していないものの、現状業界標準とも言える存在です。

得に、ロイヤリティの支払いも比較的容易でなのも魅力です。

H.265(HEVC)

H.265 は、HEVC(High Efficiency Video Encoding)とも呼ばれ、これもMPEG と ITU-T VCEG(JCT-VC と呼ばれるパートナーシップ)による規格です。

正式名称は、MPEG-H HEVC/H.265です。

このコーデックは、2013 年に初めて規格化55され、最終的に 2014 年から 2016 年にかけて拡張されました。

H.265は、同じ品質を維持しながら、H.264 に比べてコンテンツの圧縮率を50% 向上させることを目指しています。

このためH.264は1フレーム(1画面)内で扱う圧縮用ブロックの大きさは16×16ピクセルに固定なのに対して、H.265は最小8×8ピクセルから最大64×64ピクセルまで可変できます。

ソニーのH.264とH.265の画像ブロックの比較

Netflix の調査によると、H.264 との比較では 35~53%、VP9 との比較では 17~21% の改善が見られましたとの事です。

生憎H.265の使用率は低いのですが、その主な理由は、ライセンスやロイヤリティの問題があるためと言われています。

VP9

VP8 の後継となるVP9 は、Google が所有するOn2Technologies が開発しました。

VP9 は 2013 年に標準化され、このコーデックはH.265と似ていますが、ロイヤリティが必要ないのが最大の特徴です。

VP9 は主要なブラウザや Android 端末では広くサポートされていますが、残念ながらApple の端末ではサポートされていないことが問題となっています。

Apple端末では、VP9 の代わりに H.264やH.265 をサポートしています。

AV1

2015 年、Alliance for Open Media(AOMedia)が結成されました。

この間、Google は VP10、Mozilla(Xiph)は Daala、Cisco は Thor の開発に取り組んでいました。

3 つの別々のコーデックを作る代わりに、ロイヤリティの制限に不満を感じていた彼らは AOMedia に参加することを決め、AV1 が誕生しました。

彼らが目指したのは、VP9 に比べて 30% 以上の効率化を実現することと、VP9 と同様にロイヤリティーフリーであることでした。AOMedia のメンバーは全員、関連する特許を提供し、特許防衛プログラムに貢献しました。

AV1 コーデックが完成したとはいえ、まだまだ課題は残っていますが、このコーデックは業界の大手企業に採用され始めており、今後も採用されていくことが予想されます。

VVC

VVC(Versatile Video Coding)は、MPEG の新しい規格です。

VVC は、HEVC と比較して 50% の効率化と、その他の改善を実現することを目指しています。

しかし実際には、HEVC と比較して 30〜40% 程度の効率化を期待する声が多いようです。

VVC では、ゲームや画面共有、360 度動画、動画の解像度切り替えなどのサポートが強化されます。

EVC

EVC(Essential Video Coding)は、MPEG の新しい規格で、HEVC と同等または同程度の効率を達成することを目標としています。

EVC は、リアルタイムでのエンコードとデコードに適しています。

この規格は、VOD のストリーミングや OTT のライブストリーミングのためのオフラインエンコーディングに特化して作られており、「ライセンスフレンドリー」なコーデックを目指しています。

ハイブリッドコーデック

ハイブリッドコーデックとは、基本的に他のコーデックの上で動作するコーデックのことです。プロセスは通常、以下の手順で行われます。

通常の手順

入力ビデオを受け取る
ビデオに独自のダウンスケーラを使用する(例:1080p から 480p への変換)
ダウンスケールされた映像をエンコードする
プレーヤーで映像をデコードする
独自のアップスケーラーを使用して、デコードされた画像をアップスケールする

これにより、多くの場合、20~40% のビットレート削減が可能です。

P+(旧称:PERSEUS Plus)について

V-Nova 社が開発した P+ は、現在も積極的に使用されています。例えば、このハイブリッドコーデックを H.264 コーデックの上に使用した場合、30〜50% の帯域削減が可能となります。

Perseus は、エンコードパイプライン全体をやり直すことなく、HEVC の規模で節約できるというメリットがあり、また iOS や Android でのハードウェアデコードも可能です。

とはいえ、P+ を使ってウェブ上でデコードするのは困難で、バッテリーを消耗します。

また、現在は DRM に対応していませんが、このハイブリッドコーデックは、現在 LCEVC として再ブランド化されており、ハードウェアに統合されれば、今後 DRM にも対応するはずです。

ENHANCEplayer

ENHANCEplayer は、Artomatix と THEO Technologies の共同プロジェクトであり、現在も進行中の技術革新プロジェクトです。

このハイブリッドコーデックは、Artomatix の「Artomatix Enhance AI」を利用して、画像の解像度をアップスケールし、圧縮アーチファクトを取り除き、ノイズを除去します。これは本質的に、ニューラルネットワーク(NN)または AI による「超解像」生成を意味します。

NN は、画像を強化し、圧縮時に失われたディテールを追加するように訓練されています。

ENHANCEplayer は、25fps のフレームレートを得るために 40ms の処理速度を達成することを目指しています。

最大の課題は、圧縮前の画像とエンハンスメント後の画像が同じであること、すなわち再現の忠実度であり、DRM がかかっている状態ではまだ困難です。

 

コーデックの未来

コーデックの現状は、比較的シンプルなものになっています。

オーディオには AAC、より広い範囲で使用するには H.264 が必要です。

H.264 は古いデバイスのためのフォールバックであり、VP9 は iOS をサポートしておらず、AV1 は通常のコンテンツ制作などで実際に使われるようになるまでにはまだ道のりがあります。

では、1 つのコーデックだけでは対応できない場合、どのような解決策があるのでしょうか。

このような状況では、マルチコーデックのアプローチが必要です。

例えば、現在最も人気のあるビデオライブストリーミングサービスである Twitch は、現在 H.264 と VP9 を使用していますが、将来的には AV1 への切り替えを希望しています。

また、Netflix は、Android アプリで AV1 のストリーミング配信を開始したことを発表しましたが、VP9 に比べて 20% の圧縮効率向上を誇っています。

ただし、この機能は、視聴者が 4G でストリーミングする場合など、CPU パワーが帯域幅よりもはるかに安い場合にのみ有効です。

Netflix は、将来的にはすべてのプラットフォームで AV1 を使用することを目指しています。

Loading