ロイヤリティフリーの音声CODECとして、Opusが標準化されていたので、中身を解析したいと思います。

Opusとは?


SILKとCELTを組み合わせた音声CODECです。

Opusはロイヤリティフリーのオーディオフォーマットで、VoIPや電話会議、ライブストリーミングといった「インタラクティブ」な音声や音楽を格納するために設計された。Skypeの採用する音声コーデック「SILK」と、Xiph.Orgが開発する低遅延を特徴とする音声コーデック「CELT」を組み合わせたものとなっている。

フリーのオーディオフォーマット「Opus」がIETF標準に、初の正式版実装もリリースされる


ドキュメント類


仕様書は、OpusCodecDefinition of the Opus Audio Codecにあります。リスニングテストの結果は以下のようになっているようです。全領域で優秀な結果を残しています。

opus

SILKとは?


Skypeのために開発された低遅延の音声CODECです。(Wikipedia線形予測符号化をベースとしており、周波数変換を行わず、時間領域で符号化します。

CELT(Constrained Energy Lapped Transform)とは?


OggVorbisを開発したXiph.Org Foundationが開発した低遅延CODECです。(Wikipedia)AACやVorbisと同様に、周波数変換を行いますが、窓幅を小さくすることで低遅延を実現しています。周波数変換にはMDCTを使用しており、スペクトル崩落を近似した後、係数をベクトル量子化するなど、基本的構成はVorbisと似ています。レンジコーダを使用しており、IMDCT後にポストフィルタが追加されているので、Vorbisをシンプル化してエントロピー符号化を強化したものと考えることができるかと思います。

OpusにおけるSILKとCELTの切り替え


OpusはSILKとCELTを内包しており、そのどちらか、もしくは両方を使用することができます。

ケース使用CODEC対応周波数帯域対応フレーム遅延
Low bitrateSILKNB/MB/WB10ms〜60ms
Mid bitrateHYBRIDSWB/FB10ms〜20ms
Very Low delayCELTNB/WB/SWB/FB2.5ms〜20ms


対応周波数帯域は以下の表に対応します。

Frequency4kHz6kHz8kHz12kHz20kHz
Band typeNBMBWBSWBFB


直感的には、周波数変換を行うCELTの方が遅延が大きそうですが、SILKの方が遅延が大きいのが面白いです。

これより、Opusにおいて、ビットレートが低い場合はSILK、ビットレートが高い場合はSILK+CELT、低遅延が要求される場合はCELTで符号化されるようです。

Hybrid modeとは?


では、SILK+CELTではどのように符号化されるのでしょうか?この場合、8kHz以下の周波数成分はSILK、8kHz以上の周波数成分はCELTで符号化されます。デコーダでは、8kHz以下の周波数成分を単純に0で埋めてIMDCTを行い、SILKの出力に加算することで、音声波形を得ることができます。

他のCODECのアーキテクチャとの比較


低周波成分と高周波成分の符号化方法の観点から、一般的なCODECのアーキテクチャとの比較を表にまとめてみました。

CODEC〜8kHz8kHz〜
MP3/AAC/VorbisMDCTMDCT
HE-AACMDCTSBR(*)
Opus Low bitrateSILK-
Opus Mid bitrateSILKMDCT
Opus Very low delayMDCTMDCT

(*)SBRの開始周波数は8kHzとは限りません

OpusのVeryLowDelayは、特に特筆するところのない普通の構成です。OpusのLowBitrateも、VoIP向けの普通の構成だと思います。

Opusの斬新さは、MidBirateのHybridモードです。Opusでは、低周波成分をSILKの線形予測符号化で、高周波成分をMDCTで作っています。線形予測符号化は、ボイスなど、モデルにうまく当たるものに有効なので、〜8kHzの低周波領域にSILKを使い、それ以外の予測の当たりにくい領域でMDCTを使用します。

まとめ


VoIPに最適なSILKと、一般的な音声に最適なCELT、そして斬新なHybridモードを、自由にエンコーダで選択できるCODEC、それがOpusです。エンコーダで遅延をコントロールでき、ボイスに限らず一般的な楽曲にも適用できるため、ライブ配信や、ワイヤレスオーディオ、ゲームのリモートプレイ、ボイスチャットなど、広く普及していく可能性があります。

Blu-rayディスクなどは、相対的に画像の情報量が多いため、音声はリニアPCMなど、圧縮率よりも音質重視の方向に向かっています。そのため、圧縮率が要求される通信や、現在Vorbisが担っているゲーミング分野などが、メインの市場となっていくのかなと思います。

リファレンス


Opus Codec
Opus 正式リリース - 蒼弓ノート