ITU-T G.723.1
原理
5.3kbit/sのACELP(Algebraic CELP:代数CELP)と6.3kbit/sのMP-MLQ(Multi Pulse – Maximum Likelihood Quantizer:最ゆう量子化マルチパルス符号)の デュアル・レートの音声コーデックです。 2つのビットレートがありますが内部の構造はほとんど共通で,フレーム単位にビットレートを切り換える事ができます。
入出力
30msecのフレーム単位の処理になります。 エンコーダでビットレートの指定をします。ビットレート情報は符号データの中に含まれます。 エンコーダのハイ・パス・フィルタとデコーダのポスト・フィルタをそれぞれ有効/無効にする事ができます。 デコーダにはフレーム・エラー情報を入力する事ができます。
(図11)G.723.1の入出力
音声データのフォーマット
- 16ビット・リニアPCM,240サンプル/フレーム
符号データのフォーマット
- 192ビット/フレーム(6.3kbit/s)
- 160ビット/フレーム(5.3kbit/s)
RTPプロトコル
ペイロード・タイプは「4」です。 RTPでは20msec以上のパケット送出間隔が推奨されていますがG.723.1のフレーム長は30msecなので1フレームからパケットを構成できます。 また2フレーム以上の符号データを1つのパケットにまとめる事もできます。 図12と表4に1フレーム分の符号データのフォーマットを示します。
(図10)G.723.1符合データ
(クリックすると大きい画像を開きます。)
A,B,C・・・はそれぞれ1サンプルの符号データです。
()内の数字は各符号データのビット番号です。(0がLSB)
(表4)G.723.1符号データのパラメータ
パラメータ | 内容 |
---|---|
LPC | LSP VQ index |
ACL0 | Adaptive Codebook Lag |
ACL1 | Differential Adaptive Codebook Lag |
ACL2 | Adaptive Codebook Lag |
ACL3 | Differential Adaptive Codebook Lag |
GAINx | Combination of adaptive and fixed gains.(xth subframe) |
MPOS | The 4 MSB of POSx codewords are combined to form a 13-bit index |
POSx | Pulse position index.(xth subframe) |
PSIGx | Pulse sign index.(xth subframe) |
GRIDx | Grid index.(xth subframe) |
UB | Unused bit |
入手方法
ITU-T よりCソースコードが入手できます。
G.723.1の拡張機能
G.723.1にはVAD/DTX/CNG機能を拡張したAnnex Aと,浮動小数点版のAnnex Bがあります。(表5)
(表5)G.723.1拡張機能
ビットレート(kbit/s) | 演算精度 | 特徴 | |
---|---|---|---|
G.723.1 | 5.3/6.3 | 固定小数点 | |
G.723.1 AnnexA | 5.3/6.3(DTX) | 固定小数点 | VAD/DTX/CNG |
G.723.1 AnnexB | 5.3/6.3 | 浮動小数点 | 浮動小数点演算 |
特許
G.723.1を使用するためには次の特許所有者よりライセンスを取得する必要があります。
- Universite de Sherbrooke
- France Telecom
- AudioCodes
- DSP Group
- NTT
- Nokia