Speex

Speex（スピークス） は、VoIPアプリケーションやポッドキャストで使われるフリーな音声圧縮コーデックである。Speex は、特許によるいかなる制限もなく、三条項BSDライセンスでライセンスされている。Oggコンテナフォーマットと共に使ったり、直接 UDP/RTP 上で転送する形で使う事もできる。
Speex は、汎用的な音声圧縮プロジェクトであった Vorbis を補完するものとされていた。
Speex は非可逆圧縮であり、圧縮によって音質が損なわれ、元の音質に戻すことはできない。
開発元のXiph.OrgはSpeexを廃止しており、新しいコーデックであるOpusがすべての面でSpeexを上回るとして、後継として推奨している。
概要.
他の音声コーデックとは異なり、Speex は携帯電話をターゲットにはせず、VoIP やファイル上の圧縮をターゲットにしている。設計目標は、高品質音声と低ビットレートに最適化されたコーデックであった。このため、このコーデックは複数のビットレートを使い、超広帯域（サンプリング周波数 32kHz）、広帯域（サンプリング周波数 16kHz）、狭帯域（電話レベル、サンプリング周波数 8kHz）をサポートする。携帯電話ではなく VoIP 向けということから、Speex はパケット喪失に耐性があるよう設計されているが、パケットの破損には弱い（UDPはパケットが到達しない可能性はあるが、到達した場合は破損していないことを保証するため）。そのため、Speex の符号化技法としては Code Excited Linear Prediction (CELP) が選択された。CELP が選ばれた理由の1つとして、低ビットレート（DoD CELP では 4.8 kbit/s）から高ビットレート（G.728 では 16 kbit/s）まで利用可能だという点が挙げられる。主な特徴は次の通り。
MIME.
Speex のメディアタイプは Ogg に格納される場合は audio/ogg であり、RTP 経由で転送される場合やコンテナがない場合は audio/speex である。IANA登録前は audio/x-speex であった。
応用.
Speex コーデックの利用は、遠隔会議のようなストリーミングからゲームや音声処理まで広範囲に渡る。例えば、DirectShowフィルタ、Microsoft Windows での NetMeeting、Linux の OpenH323（Ekiga）などがある。Winamp や XMMS プレイヤー向けのプラグインもある。また、foobar2000 も Speex をサポートしている。
Adobe Flash Player は 10.0 からサポートしている。変更可能だが、デフォルトは広帯域(16kHz)の固定ビットレートの20.6kbpsに設定されている。Adobe AIR は 1.5 から利用可能。
マイクロソフトの Xbox Live ではヘッドセットに Speex を使っている。
最新の Half-Life 1 エンジンでは、ゲーム内のVoIP機能として Speex コーデックを使っている。デフォルトでは使われない設定になっており、サーバ管理者による設定が必要である。デフォルトの Miles ビデオコーデックよりも音質がよい。
ジェネラル・ダイナミクス製のアメリカ陸軍の システムでは、レイセオンの設計したEPLRSラジオでのVoIPに Speex を使っている。
シド・メイヤーの Civilization IV では、レナード・ニモイのナレーションを Speex で圧縮している。
VoIPソフト TeamSpeak は3種類のコーデックの1つとして Speex をサポートしている。参加人数に関わらず音質がよいことから、Speex がよく使われる。
Rockbox では音声インタフェースに Speex を使っている。また、Speex ファイルの再生も可能。