(57)【要約】  所定の区間の入力音響信号に由来するサンプル列のサンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数と、所定の配分ビット数Ｂと、の差が大きいほど、更新前の利得と更新後の利得との差が大きくなるように利得の値を更新し、得られた利得に対応する利得符号と、サンプル列の各サンプルを利得で除算して得られる整数値サンプルによる列を符号化して得られる整数信号符号とを得る。
2013180164.tif 000002
【特許請求の範囲】
【請求項１】
所定の区間の入力音響信号に由来するサンプル列の符号化方法であって、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数と、所定の配分ビット数Ｂと、の差が大きいほど、更新前の利得と更新後の利得との差が大きくなるように利得の値を更新する利得拡大縮小ステップを含んで、利得を得る利得更新ループ処理ステップと、
上記利得更新ループ処理ステップにより得られた利得に対応する利得符号と、上記サンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を符号化して得られる整数信号符号とを得る符号出力ステップと、
を有する符号化方法。
【請求項２】
所定の区間の入力音響信号に由来するサンプル列について、利得をループ処理により求める利得更新ループ処理ステップにより得られた利得に対応する利得符号と、上記サンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を符号化して得られる整数信号符号とを得る符号化方法であって、
上記利得更新ループ処理ステップは、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、上記所定の配分ビット数Ｂより多い場合に、上記更新前の利得を利得の下限値ｇｍｉｎとして設定し、上記ビット数または推定ビット数を下限設定時消費ビット数ｃＬとして設定する利得下限値設定ステップと、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、上記所定の配分ビット数Ｂより少ない場合に、上記更新前の利得を利得の上限値ｇｍａｘとして設定し、上記ビット数または推定ビット数を上限設定時消費ビット数ｃＵとして設定する利得上限値設定ステップと、
上記配分ビット数Ｂと下限設定時消費ビット数ｃＬと上限設定時消費ビット数ｃＵとに少なくとも基づく重みを、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎとの少なくとも何れかに与えた、利得の上限値と利得の下限値の重み付き平均を更新後の利得とする利得更新ステップと、
を含む符号化方法。
【請求項３】
請求項２記載の符号化方法であって、
上記利得更新ステップにおける重み付き平均は、
【数７】
2013180164.tif 000009
もしくは、Ｃを所定の正の定数として、
【数８】
2013180164.tif 000010
である符号化方法。
【請求項４】
所定の区間の入力音響信号に由来するサンプル列の符号化方法であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化ステップと、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化ステップと、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新ステップと、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新ステップと、
上記利得の更新回数が予め定めた回数の場合は上記利得と上記サンプル列符号とを出力し、上記利得の更新回数が予め定めた回数未満かつ上記サンプル列符号のビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新ステップを行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に利得縮小更新ステップを行わせる判定ステップと、
を有し、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記量子化正規化済サンプル列の一部または全てのサンプル数Ａから、上記消費ビット数の上記配分ビット数に対する上回り分に対応する切り捨て符号を上記サンプル列符号から取り除くことで得られる残りの切り捨て済サンプル列符号に対応する量子化正規化済サンプルのサンプル数Ｔ、を減算して得られる値Ａ−Ｔが大きいほど、上記利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得拡大ステップと、
を含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少ない場合に上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得縮小ステップと、
を含む符号化方法。
【請求項５】
所定の区間の入力音響信号に由来するサンプル列の符号化方法であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化ステップと、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新ステップと、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新ステップと、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化ステップと、
上記利得の更新回数が予め定めた回数の場合は可変長符号化ステップを行わせ、上記利得の更新回数が予め定めた回数未満かつ上記量子化正規化済サンプル列に対応する符号の推定ビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新ステップを行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に上記利得縮小更新ステップを行わせる判定ステップと、
を有し、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記量子化正規化済サンプル列の一部または全てのサンプル数Ａから、上記消費ビット数の上記配分ビット数に対する上回り分に対応する切り捨て符号の対象となる量子化正規化済サンプルを上記量子化正規化済サンプル列から取り除いた残りのサンプル数Ｔ、を減算して得られる値Ａ−Ｔが大きいほど、上記利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得拡大ステップと、
を含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少ない場合に、上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得縮小ステップと、
を含む符号化方法。
【請求項６】
所定の区間の入力音響信号に由来するサンプル列の符号化方法であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化ステップと、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化ステップと、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新ステップと、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新ステップと、
上記利得の更新回数が予め定めた回数の場合は上記利得と上記サンプル列符号とを出力し、上記利得の更新回数が予め定めた回数未満かつ上記サンプル列符号のビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新ステップを行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に上記利得縮小更新ステップを行わせる判定ステップと、
を有し、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記消費ビット数から上記配分ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得拡大ステップと、
を含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少ない場合に、上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得縮小ステップと、
を含む符号化方法。
【請求項７】
所定の区間の入力音響信号に由来するサンプル列の符号化方法であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化ステップと、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新ステップと、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新ステップと、
上記利得の更新回数が予め定めた回数の場合は可変長符号化ステップを行わせ、上記利得の更新回数が予め定めた回数未満かつ上記量子化正規化済サンプル列に対応する符号の推定ビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新ステップを行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に上記利得縮小更新ステップを行わせる判定ステップと、
を有し、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記消費ビット数から上記配分ビット数を減算して得られる値が大きいほど、利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得拡大ステップと、
を含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少ない場合に、上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定ステップと、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化ステップを行わせる利得縮小ステップと、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化ステップと、
を含む符号化方法。
【請求項８】
請求項４から７の何れかの符号化方法であって、
上記利得下限値設定ステップは、上記消費ビット数が上記配分ビット数よりも多い場合に、さらに上記消費ビット数を下限設定時消費ビット数として設定するステップであり、
上記利得上限値設定ステップは、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定するステップであり、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数、上記下限設定時消費ビット数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第１利得更新ステップ
をさらに含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、上記配分ビット数、上記下限設定時消費ビット数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第２利得更新ステップ
をさらに含む符号化方法。
【請求項９】
請求項４から７の何れかの符号化方法であって、
上記利得下限値設定ステップは、上記消費ビット数が上記配分ビット数よりも多い場合に、さらに上記消費ビット数を下限設定時消費ビット数として設定するステップであり、
上記利得上限値設定ステップは、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定するステップであり、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記下限設定時消費ビット数ｃＬ、上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、および上記利得の上限値ｇｍａｘについての
【数９】
2013180164.tif 000011
を、上記利得の新たな値とする第１利得更新ステップ
をさらに含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数１０】
2013180164.tif 000012
を、上記利得の新たな値とする第２利得更新ステップ
をさらに含む符号化方法。
【請求項１０】
請求項４から７の何れかの符号化方法であって、
上記利得下限値設定ステップは、上記消費ビット数が上記配分ビット数よりも多い場合に、さらに上記消費ビット数を下限設定時消費ビット数として設定するステップであり、
上記利得上限値設定ステップは、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定するステップであり、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記下限設定時消費ビット数ｃＬ、上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、上記利得の上限値ｇｍａｘ、および正の定数Ｃについての
【数１１】
2013180164.tif 000013
を、上記利得の新たな値とする第１利得更新ステップ
をさらに含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数１２】
2013180164.tif 000014
を、上記利得の新たな値とする第２利得更新ステップ
をさらに含む符号化方法。
【請求項１１】
請求項４または５の符号化方法であって、
上記利得上限値設定ステップは、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定するステップであり、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第１利得更新ステップ
をさらに含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、上記配分ビット数、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第２利得更新ステップ
をさらに含む符号化方法。
【請求項１２】
請求項４または５の符号化方法であって、
上記利得上限値設定ステップは、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定するステップであり、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数Ｔｒ、および上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、上記利得の上限値ｇｍａｘ、および係数γについての
【数１３】
2013180164.tif 000015
を、上記利得の新たな値とする第１利得更新ステップ
をさらに含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数１４】
2013180164.tif 000016
を、上記利得の新たな値とする第２利得更新ステップ
をさらに含む符号化方法。
【請求項１３】
請求項４または５の符号化方法であって、
上記利得上限値設定ステップは、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定するステップであり、
上記利得拡大更新ステップは、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数Ｔｒ、および上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、上記利得の上限値ｇｍａｘ、係数γ、および正の定数Ｃについての
【数１５】
2013180164.tif 000017
を、上記利得の新たな値とする第１利得更新ステップ
をさらに含み、
上記利得縮小更新ステップは、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数１６】
2013180164.tif 000018
を、上記利得の新たな値とする第２利得更新ステップ
をさらに含む符号化方法。
【請求項１４】
所定の区間の入力音響信号に由来するサンプル列の符号化装置であって、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数と、所定の配分ビット数Ｂと、の差が大きいほど、更新前の利得と更新後の利得との差が大きくなるように利得の値を更新する利得拡大縮小部を含んで、利得を得る利得更新ループ処理部と、
上記利得更新ループ処理部により得られた利得に対応する利得符号と、上記サンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を符号化して得られる整数信号符号とを得る符号出力部と、
を有する符号化装置。
【請求項１５】
所定の区間の入力音響信号に由来するサンプル列について、利得をループ処理により求める利得更新ループ処理部により得られた利得に対応する利得符号と、上記サンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を符号化して得られる整数信号符号とを得る符号化装置であって、
上記利得更新ループ処理部は、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、上記所定の配分ビット数Ｂより多い場合に、上記更新前の利得を利得の下限値ｇｍｉｎとして設定し、上記ビット数または推定ビット数を下限設定時消費ビット数ｃＬとして設定する利得下限値設定部と、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、上記所定の配分ビット数Ｂより少ない場合に、上記更新前の利得を利得の上限値ｇｍａｘとして設定し、上記ビット数または推定ビット数を上限設定時消費ビット数ｃＵとして設定する利得上限値設定部と、
上記配分ビット数Ｂと下限設定時消費ビット数ｃＬと上限設定時消費ビット数ｃＵとに少なくとも基づく重みを、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎとの少なくとも何れかに与えた、利得の上限値と利得の下限値の重み付き平均を更新後の利得とする利得更新部と、
を含む符号化装置。
【請求項１６】
請求項１５記載の符号化装置であって、
上記利得更新部における重み付き平均は、
【数１７】
2013180164.tif 000019
もしくは、Ｃを所定の正の定数として、
【数１８】
2013180164.tif 000020
である符号化装置。
【請求項１７】
所定の区間の入力音響信号に由来するサンプル列の符号化装置であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化部と、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化部と、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新部と、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新部と、
上記利得の更新回数が予め定めた回数の場合は上記利得と上記サンプル列符号とを出力し、上記利得の更新回数が予め定めた回数未満かつ上記サンプル列符号のビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新部の処理を行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に利得縮小更新部の処理を行わせる判定部と、
を有し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定部と、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記量子化正規化済サンプル列の一部または全てのサンプル数Ａから、上記消費ビット数の上記配分ビット数に対する上回り分に対応する切り捨て符号を上記サンプル列符号から取り除くことで得られる残りの切り捨て済サンプル列符号に対応する量子化正規化済サンプルのサンプル数Ｔ、を減算して得られる値Ａ−Ｔが大きいほど、上記利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得拡大部と、
を含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少ない場合に上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定部と、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得縮小部と、
を含む符号化装置。
【請求項１８】
所定の区間の入力音響信号に由来するサンプル列の符号化装置であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化部と、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新部と、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新部と、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化部と、
上記利得の更新回数が予め定めた回数の場合は可変長符号化部の処理を行わせ、上記利得の更新回数が予め定めた回数未満かつ上記量子化正規化済サンプル列に対応する符号の推定ビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新部の処理を行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に上記利得縮小更新部の処理を行わせる判定部と、
を有し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定部と、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記量子化正規化済サンプル列の一部または全てのサンプル数Ａから、上記消費ビット数の上記配分ビット数に対する上回り分に対応する切り捨て符号の対象となる量子化正規化済サンプルを上記量子化正規化済サンプル列から取り除いた残りのサンプル数Ｔ、を減算して得られる値Ａ−Ｔが大きいほど、上記利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得拡大部と、
を含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少ない場合に、上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定部と、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得縮小部と、
を含む符号化装置。
【請求項１９】
所定の区間の入力音響信号に由来するサンプル列の符号化装置であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化部と、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化部と、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新部と、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新部と、
上記利得の更新回数が予め定めた回数の場合は上記利得と上記サンプル列符号とを出力し、上記利得の更新回数が予め定めた回数未満かつ上記サンプル列符号のビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新部の処理を行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に上記利得縮小更新部の処理を行わせる判定部と、
を有し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定部と、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記消費ビット数から上記配分ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得拡大部と、
を含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少ない場合に、上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定部と、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得縮小部と、
を含む符号化装置。
【請求項２０】
所定の区間の入力音響信号に由来するサンプル列の符号化装置であって、
上記サンプル列の各サンプルを利得で割り算して得られる値を量子化し、量子化正規化済サンプル列を得る量子化部と、
上記利得よりも大きな値を新たな利得として設定する利得拡大更新部と、
上記利得よりも小さな値を新たな利得として設定する利得縮小更新部と、
上記利得の更新回数が予め定めた回数の場合は可変長符号化部の処理を行わせ、上記利得の更新回数が予め定めた回数未満かつ上記量子化正規化済サンプル列に対応する符号の推定ビット数である消費ビット数が所定の配分ビット数よりも多い場合に上記利得拡大更新部の処理を行わせ、上記利得の更新回数が予め定めた回数未満かつ上記消費ビット数が上記配分ビット数よりも少ない場合に上記利得縮小更新部の処理を行わせる判定部と、
を有し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多い場合に、上記消費ビット数に対応する利得の値を利得の下限値として設定する利得下限値設定部と、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が設定されていない場合に、上記消費ビット数から上記配分ビット数を減算して得られる値が大きいほど、利得の更新前の値から更新後の値への増分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得拡大部と、
を含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少ない場合に、上記消費ビット数に対応する利得の値を利得の上限値として設定する利得上限値設定部と、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が設定されていない場合に、上記配分ビット数から上記消費ビット数を減算して得られる値が大きいほど、上記利得の更新前の値から更新後の値への減少分が大きくなるように上記利得の値を更新し、上記量子化部の処理を行わせる利得縮小部と、
上記量子化正規化済サンプル列を可変長符号化し、サンプル列符号を得る可変長符号化部と、
を含む符号化装置。
【請求項２１】
請求項１７から２０の何れかの符号化装置であって、
上記利得下限値設定部は、上記消費ビット数が上記配分ビット数よりも多い場合に、さらに上記消費ビット数を下限設定時消費ビット数として設定し、
上記利得上限値設定部は、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数、上記下限設定時消費ビット数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第１利得更新部
をさらに含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、上記配分ビット数、上記下限設定時消費ビット数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第２利得更新部
をさらに含む符号化装置。
【請求項２２】
請求項１７から２０の何れかの符号化装置であって、
上記利得下限値設定部は、上記消費ビット数が上記配分ビット数よりも多い場合に、さらに上記消費ビット数を下限設定時消費ビット数として設定し、
上記利得上限値設定部は、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記下限設定時消費ビット数ｃＬ、上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、および上記利得の上限値ｇｍａｘについての
【数１９】
2013180164.tif 000021
を、上記利得の新たな値とする第１利得更新部
をさらに含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数２０】
2013180164.tif 000022
を、上記利得の新たな値とする第２利得更新部
をさらに含む符号化装置。
【請求項２３】
請求項１７から２０の何れかの符号化装置であって、
上記利得下限値設定部は、上記消費ビット数が上記配分ビット数よりも多い場合に、さらに上記消費ビット数を下限設定時消費ビット数として設定し、
上記利得上限値設定部は、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記下限設定時消費ビット数ｃＬ、上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、上記利得の上限値ｇｍａｘ、および正の定数Ｃについての
【数２１】
2013180164.tif 000023
を、上記利得の新たな値とする第１利得更新部
をさらに含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数２２】
2013180164.tif 000024
を、上記利得の新たな値とする第２利得更新部
をさらに含む符号化装置。
【請求項２４】
請求項１７または１８の符号化装置であって、
上記利得上限値設定部は、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第１利得更新部
をさらに含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、上記配分ビット数、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数、および上記上限設定時消費ビット数を用い、上記利得の下限値のもっともらしさの指標と上記利得の上限値のもっともらしさの指標との少なくとも何れかによって、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第２利得更新部
をさらに含む符号化装置。
【請求項２５】
請求項１７または１８の符号化装置であって、
上記利得上限値設定部は、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数Ｔｒ、および上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、上記利得の上限値ｇｍａｘ、および係数γについての
【数２３】
2013180164.tif 000025
を、上記利得の新たな値とする第１利得更新部
をさらに含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数２４】
2013180164.tif 000026
を、上記利得の新たな値とする第２利得更新部
をさらに含む符号化装置。
【請求項２６】
請求項１７または１８の符号化装置であって、
上記利得上限値設定部は、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数Ｂ、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数Ｔｒ、および上記上限設定時消費ビット数ｃＵ、上記利得の下限値ｇｍｉｎ、上記利得の上限値ｇｍａｘ、係数γ、および正の定数Ｃについての
【数２５】
2013180164.tif 000027
を、上記利得の新たな値とする第１利得更新部
をさらに含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、
【数２６】
2013180164.tif 000028
を、上記利得の新たな値とする第２利得更新部
をさらに含む符号化装置。
【請求項２７】
請求項１から１３の何れかの符号化方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項２８】
請求項１から１３の何れかの符号化方法の各ステップをコンピュータに実行させるためのプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響信号の符号化技術に関する。特に、音響信号に由来するサンプル列を利得で除算して得られる系列の符号化技術に関する。
【背景技術】
【０００２】
低ビット（例えば10kbit/s〜20kbit/s程度）の音声信号や音響信号の符号化方法として、DFT（離散フーリエ変換）やMDCT（変形離散コサイン変換）などの直交変換係数に対する適応符号化が知られている。例えば非特許文献１の標準規格技術であるAMR-WB+(Extended Adaptive Multi-Rate Wideband)は、TCX（transform coded excitation：変換符号化励振）符号化モードを持つ。TCX符号化においては、フレームごとに与えられた総ビット数での符号化が行えるように、周波数領域の音響ディジタル信号系列をパワースペクトル包絡係数列によって正規化して得られる係数列について、係数列中の各係数を利得で除算して得られる系列を所定のビット数で符号化できるように利得を決定する。【０００３】
＜TCX符号化装置１０００＞
従来のTCX符号化の符号化装置１０００の構成例を図１に示す。以下、図１の各部について説明する。【０００４】
＜周波数領域変換部１００１＞
周波数領域変換部１００１は、所定の時間区間であるフレーム単位で、入力された音響ディジタル信号を周波数領域のＮ点のMDCT係数列X(1)，・・・，X(N)に変換して出力する。ただし、Ｎは正整数である。【０００５】
＜パワースペクトル包絡係数列計算部１００２＞
パワースペクトル包絡係数列計算部１００２は、フレーム単位の音響ディジタル信号に対する線形予測分析を行って線形予測係数を求め、その線形予測係数を用いてＮ点の音響ディジタル信号のパワースペクトル包絡係数列W(1)，・・・，W(N)を得て出力する。【０００６】
＜重み付け包絡正規化部１００３＞
重み付け包絡正規化部１００３は、パワースペクトル包絡係数列計算部１００２が得たパワースペクトル包絡係数列を用いて、周波数領域変換部１００１が得たMDCT係数列の各係数を正規化し、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)を出力する。ここでは聴覚的に歪が小さくなるような量子化の実現のために、重み付け包絡正規化部１００３は、パワースペクトル包絡を鈍らせた重み付けパワースペクトル包絡係数列を用いて、フレーム単位でMDCT係数列の各係数を正規化する。この結果、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)は、入力されたMDCT係数列ほどの大きな振幅の傾きや振幅の凹凸を持たないが、音響ディジタル信号のパワースペクトル包絡係数列と類似の大小関係を有するもの、すなわち、低い周波数に対応する係数側の領域にやや大きな振幅を持ち、ピッチ周期に起因する微細構造をもつもの、となる。【０００７】
＜初期化部１００４＞
初期化部１００４は、利得（グローバルゲイン）ｇの初期値を設定する。利得の初期値は、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)のエネルギーと可変長符号化部１００６が出力する符号に予め配分されたビット数などから決めることができる。以下、可変長符号化部１００６が出力する符号に予め配分されたビット数を配分ビット数Ｂと呼ぶ。また、初期化部は、利得の更新回数の初期値として０を設定する。【０００８】
＜利得更新ループ処理部１１３０＞
利得更新ループ処理部１１３０は、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)中の各係数を利得で除算して得られる系列を所定のビット数で符号化できるように利得を決定し、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)中の各係数を決定した利得で除算して得られる系列を可変長符号化して得た整数信号符号と、決定した利得を符号化して得た利得符号と、を出力する。
利得更新ループ処理部１１３０は、量子化部１００５と、可変長符号化部１００６と、判定部１００７と、利得拡大更新部１１３１と、利得縮小更新部１１３２と、切り捨て部１０１６と、利得符号化部１０１７と、を有する。【０００９】
＜量子化部１００５＞
量子化部１００５は、重み付け正規化MDCT係数列XN(1)，・・・，XN (N)の各係数を利得ｇで割り算して得られる値を量子化して、整数値による系列である量子化正規化済係数系列XQ(1)，・・・，XQ(N)を得て出力する。【００１０】
＜可変長符号化部１００６＞
可変長符号化部１００６は、量子化正規化済係数系列XQ(1)，・・・，XQ(N)を可変長符号化して符号を得て出力する。この符号を整数信号符号と呼ぶ。この可変長符号化には、例えば、量子化正規化済係数系列中の複数の係数を纏めて符号化する方法を用いる。また、可変長符号化部１００６は、可変長符号化で得た整数信号符号のビット数を計測する。以下では、このビット数を消費ビット数ｃと呼ぶ。【００１１】
＜判定部１００７＞
判定部１００７は、利得の更新回数が予め定めた回数の場合は、利得、整数信号符号、消費ビット数ｃを出力する。
利得の更新回数が予め定めた回数未満である場合は、可変長符号化部１００６が計測した消費ビット数ｃが配分ビット数Ｂより多い場合には利得拡大更新部１１３１が、可変長符号化部１００６が計測した消費ビット数ｃが配分ビット数Ｂより少ない場合には利得縮小更新部１１３２が、次の処理を行うように制御する。なお、消費ビット数ｃと配分ビット数Ｂが等しいときは、今回の利得の値が最適な値であることを意味するので、利得、整数信号符号、消費ビット数ｃを出力する。【００１２】
＜利得拡大更新部１１３１＞
利得拡大更新部１１３１は、今回の利得ｇの値よりも大きな値ｇ’＞ｇを新たな利得として設定する。利得拡大更新部１１３１は、利得下限設定部１００８と、第１分岐部１００９と、第１利得更新部１０１０と、利得拡大部１０１１と、を有する。【００１３】
＜利得下限設定部１００８＞
利得下限設定部１００８は、今回の利得ｇの値を利得の下限値ｇｍｉｎとして設定する（ｇｍｉｎ←ｇ）。この利得の下限値ｇｍｉｎは、少なくとも利得の値はこれ以上であるべきことを意味する。【００１４】
＜第１分岐部１００９＞
利得下限設定部１００８で利得の下限値ｇｍｉｎが設定された場合、第１分岐部１００９は、利得の上限値ｇｍａｘが既に設定されている場合には第１利得更新部１０１０が、そうでない場合には利得拡大部１０１１が、次の処理を行うように制御する。【００１５】
＜第１利得更新部１０１０＞
第１利得更新部１０１０は、例えば、今回の利得ｇの値と利得の上限値ｇｍａｘの平均値を新たに利得ｇの値として設定する（ｇ←（ｇ＋ｇｍａｘ）／２）。これは、最適な利得の値は、今回の利得ｇの値と利得の上限値ｇｍａｘとの間に存在するからである。今回の利得ｇの値は利得の下限値ｇｍｉｎとして設定されているので、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎの平均値を新たに利得ｇの値として設定するとも言える（ｇ←（ｇｍａｘ＋ｇｍｉｎ）／２）。その後、量子化部１００５の処理に戻る。【００１６】
＜利得拡大部１０１１＞
利得拡大部１０１１は、今回の利得ｇの値より大きな値を新たな利得ｇの値として設定する。例えば、今回の利得ｇの値に予め定めた値である利得変更量Δｇを加算したものを新たな利得ｇの値として設定する（ｇ←ｇ＋Δｇ）。また例えば、利得の上限値ｇｍａｘが設定されずに、消費ビット数ｃが配分ビット数Ｂより多い状態が複数回続いている場合には、予め定めた値より大きな値を利得変更量Δｇとして用いる。その後、量子化部１００５の処理に戻る。【００１７】
＜利得縮小更新部１１３２＞
利得縮小更新部１１３２は、今回の利得ｇの値よりも小さな値ｇ’＜ｇを新たな利得として設定する。利得縮小更新部１１３２は、利得上限設定部１０１２と、第２分岐部１０１３と、第２利得更新部１０１４と、利得縮小部１０１５と、を有する。【００１８】
＜利得上限設定部１０１２＞
利得上限設定部１０１２は、今回の利得ｇの値を利得の上限値ｇｍａｘと設定する（ｇｍａｘ←ｇ）。この利得の上限値ｇｍａｘは、少なくとも利得の値はこれ以下であるべきことを意味する。【００１９】
＜第２分岐部１０１３＞
利得上限設定部１０１２で利得の上限値ｇｍａｘが設定された場合、第２分岐部１０１３は、利得の下限値ｇｍｉｎが既に設定されている場合には第２利得更新部１０１４が、そうでない場合には利得縮小部１０１５が、次の処理を行うように制御する。【００２０】
＜第２利得更新部１０１４＞
第２利得更新部１０１４は、例えば、今回の利得ｇの値と利得の下限値ｇｍｉｎの平均値を新たな利得ｇの値として設定する（ｇ←（ｇ＋ｇｍｉｎ）／２）。これは、最適な利得の値は、今回の利得ｇの値と利得の下限値ｇｍｉｎとの間に存在するからである。今回の利得ｇの値は利得の上限値ｇｍａｘとして設定されているので、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎの平均値を新たに利得ｇの値として設定するとも言える（ｇ←（ｇｍａｘ＋ｇｍｉｎ）／２）。その後、量子化部１００５の処理に戻る。【００２１】
＜利得縮小部１０１５＞
利得縮小部１０１５は、今回の利得ｇの値より小さな値を新たな利得ｇの値として設定する。例えば、今回の利得ｇの値から予め定めた値である利得変更量Δｇを減算したものを新たな利得ｇの値として設定する（ｇ←ｇ−Δｇ）。また例えば、利得の下限値ｇｍｉｎが設定されずに、消費ビット数ｃが配分ビット数Ｂより少ない状態が複数回続いている場合には、予め定めた値より大きな値を利得変更量Δｇとして用いる。その後、量子化部１００５の処理に戻る。【００２２】
＜切り捨て部１０１６＞
切り捨て部１０１６は、判定部１００７が出力した消費ビット数ｃが配分ビット数Ｂより多い場合には、判定部１００７が出力した整数信号符号のうち、消費ビット数ｃが配分ビット数Ｂを上回る分だけの符号を、高い周波数側の量子化正規化済係数に対応する符号から取り除いたものを、新たな整数信号符号として出力する。すなわち切り捨て部１０１６は、消費ビット数ｃの配分ビット数Ｂに対する上回り分ｃ−Ｂに対応する高い周波数側の量子化正規化済係数に対応する符号を整数信号符号から取り除くことで得られる、残りの符号を、新たな整数信号符号として出力する。【００２３】
＜利得符号化部１０１７＞
判定部１００７が出力した利得を所定のビット数で符号化して利得符号を得て、出力する。
【先行技術文献】
【非特許文献】
【００２４】
【非特許文献１】3rd Generation Partnership Project (3GPP), Technical Specification (TS) 26.290, "Extended Adaptive Multi-Rate-Wideband (AMR-WB+) codec; Transcoding functions", Version 10.0.0 (2011-03)
【発明の概要】
【発明が解決しようとする課題】
【００２５】
従来の符号化装置１０００の利得拡大部１０１１では、利得ｇの値に所定の値である利得変更量Δｇを加算したものを新たな利得ｇの値とすることで、固定的に利得の値を拡大していた。
利得の上限値が設定されずに、利得拡大部１０１１の処理が複数回必要となる場合には利得の初期値がきわめて小さすぎた可能性があるので、利得変更量Δｇを所定の値より大きくして、利得の上限値に到達できる確率を高めざるをえないが、これにより適正な利得を大幅に超えた値を新たな利得の値として設定してしまうこともあり、収束に回数がかかり、所定の回数で適切な利得の値を求められないことがあった。【００２６】
同様に、従来の符号化装置１０００の利得縮小部１０１５では、利得ｇの値から所定の値である利得変更量Δｇを減算したものを新たな利得ｇの値とすることで、固定的に利得の値を縮小していた。
利得の下限値が設定されずに、利得縮小部１０１５の処理が複数回必要となる場合には利得の初期値がきわめて大きすぎた可能性があるので、利得変更量Δｇを所定の値より大きくして、利得の下限値に到達できる確率を高めざるをえないが、これにより適正な利得を大幅に超えた値を新たな利得の値として設定してしまうこともあり、収束に回数がかかり、所定の回数で適切な利得の値を求められないことがあった。【００２７】
所定の回数で求まった利得の値が小さ過ぎる場合には、可変長符号化により得られた符号のビット数が配分ビットより大きいため、可変長符号化により得られた符号の一部しか整数信号符号とできず、高域の量子化正規化済係数に対応する符号が符号化装置から出力されず、復号装置にも伝えられないため、復号装置では高域の係数を0として復号信号を得なければならない等により、復号信号の歪が大きくなるという問題がある。所定の回数で求まった利得の値が大き過ぎる場合には、整数信号符号のビット数が配分ビットより少ないため、十分な音響信号の品質を得られない問題がある。
【課題を解決するための手段】
【００２８】
所定の区間の入力音響信号に由来するサンプル列のサンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数と、所定の配分ビット数Ｂと、の差が大きいほど、更新前の利得と更新後の利得との差が大きくなるように利得の値を更新し、得られた利得に対応する利得符号と、サンプル列の各サンプルを利得で除算して得られる整数値サンプルによる列を符号化して得られる整数信号符号とを得る。
【発明の効果】
【００２９】
本発明の符号化によれば、利得の値の適切な値への収束を早めることにより、従来技術よりも可変長符号化により得られる符号のビット数を配分ビットに近づけることが可能となり、従来技術よりも高品質な符号化を行うことが可能となる。
【図面の簡単な説明】
【００３０】
【図１】従来の符号化装置の構成を例示したブロック図。
【図２】第１実施形態の符号化装置の構成を例示したブロック図。
【図３】第１実施形態の変形例の符号化装置の構成を例示したブロック図。
【図４】第２実施形態の符号化装置の構成を例示したブロック図。
【図５】第２実施形態の変形例の符号化装置の構成を例示したブロック図。
【図６】第３実施形態の符号化装置の構成を例示したブロック図。
【発明を実施するための形態】
【００３１】
図面を参照しながら本発明の実施形態を説明する。同一構成要素ないし同一処理には同一符号を割り当てて重複説明を省略する場合がある。なお、各実施形態で扱う音響ディジタル信号（入力音響信号）は、音声や楽音などの音響信号がディジタル化された信号である。各実施形態では、入力される音響ディジタル信号が所定の時間区間の時間領域信号であり、音響ディジタル信号を周波数領域信号に変換し、さらにパワースペクトル包絡係数列を用いて当該周波数領域信号を正規化して得られる列が、符号化対象のサンプル列（入力音響信号に由来するサンプル列）であることを想定している。しかしながら、入力された音響ディジタル信号が所定の時間区間の時間領域信号であり、当該音響ディジタル信号そのものが符号化対象のサンプル列であってもよいし、当該音響ディジタル信号に対して線形予測分析を行って得られた残差信号が符号化対象のサンプル列であってもよいし、当該音響ディジタル信号から変換された周波数領域信号が符号化対象のサンプル列であってもよい。或いは、入力された音響ディジタル信号が所定の区間の周波数領域信号（所定の時間区間に対応する周波数領域信号、または当該周波数領域信号の所定の周波数区間の周波数領域信号）であり、当該音響ディジタル信号そのものが符号化対象のサンプル列であってもよいし、当該音響ディジタル信号から変換された時間領域信号が符号化対象のサンプル列であってもよいし、その時間領域信号に対して線形予測分析を行って得られた残差信号が符号化対象のサンプル列であってもよい。すなわち、入力される音響ディジタル信号は、時間領域信号でも周波数領域信号でもよく、符号化処理の対象のサンプル列も、時間領域信号でも周波数領域信号でもよい。また、時間領域信号から周波数領域信号への変換方法、および周波数域信号から時間領域信号への変換方法に限定はなく、例えばMDCT(Modified Discrete Cosine Transform)やDCT(Discrete Cosine Transform)、およびそれらの逆変換などを用いることができる。
【００３２】
上述の想定に基づき、各実施形態では、符号化装置が周波数領域変換部、パワースペクトル包絡係数列計算部、および重み付け包絡正規化部を有し、重み付け包絡正規化部で得られたサンプル列が量子化部に入力される例を示す。しかしながら、入力された音響ディジタル信号そのものを符号化対象のサンプル列とする場合には、例えば、周波数領域変換部、パワースペクトル包絡係数列計算部、および重み付け包絡正規化部が省略され、音響ディジタル信号のサンプル列がそのまま量子化部に入力される。入力された時間領域信号である音響ディジタル信号に対して線形予測分析を行って得られた残差信号を符号化対象のサンプル列とする場合には、例えば、符号化装置が、周波数領域変換部、パワースペクトル包絡係数列計算部、および重み付け包絡正規化部に代えて、音響ディジタル信号を入力として線形予測係数またはそれらに変換可能な係数を得る線形予測部、および当該線形予測係数に対応する線形予測フィルタと音響ディジタル信号とから予測残差を得る残差計算部を有し、当該残差信号のサンプル列が量子化部に入力される。入力された時間領域信号である音響ディジタル信号から変換された周波数領域信号を符号化対象のサンプル列とする場合には、例えば、パワースペクトル包絡係数列計算部、および重み付け包絡正規化部が省略され、周波数領域変換部で得られた周波数領域信号のサンプル列が量子化部に入力される。入力された周波数領域信号である音響ディジタル信号から変換された時間領域信号を符号化対象のサンプル列とする場合には、例えば、符号化装置が、周波数領域変換部、パワースペクトル包絡係数列計算部、および重み付け包絡正規化部に代えて、音響ディジタル信号を時間領域信号に変換する時間領域変換部を有し、当該時間領域信号のサンプル列が量子化部に入力される。入力された周波数領域信号である音響ディジタル信号から変換された時間領域信号に対して線形予測分析をして得られた残差信号を符号化対象のサンプル列とする場合には、例えば、符号化装置が、周波数領域変換部、パワースペクトル包絡係数列計算部、および重み付け包絡正規化部に代えて、時間領域変換部、線形予測部、および残差計算部を有し、残差計算部で得られた残差信号のサンプル列が量子化部に入力される。
【００３３】
［第１実施形態］
＜符号化装置１００＞
図２を参照して第１実施形態の符号化装置１００が行う符号化処理を説明する。
【００３４】
＜周波数領域変換部１０１＞
周波数領域変換部１０１は、所定の時間区間であるフレーム単位で、入力された音響ディジタル信号（入力音響信号）を周波数領域のＮ点のMDCT係数列X(1)，・・・，X(N)に変換して出力する。ただし、Ｎは正整数である。
【００３５】
＜パワースペクトル包絡係数列計算部１０２＞
パワースペクトル包絡係数列計算部１０２は、フレーム単位の音響ディジタル信号に対する線形予測分析を行って線形予測係数を求め、その線形予測係数を用いてＮ点の音響ディジタル信号のパワースペクトル包絡係数列W(1)，・・・，W(N)を得て出力する。
【００３６】
＜重み付け包絡正規化部１０３＞
重み付け包絡正規化部１０３は、パワースペクトル包絡係数列計算部１０２が得たパワースペクトル包絡係数列を用いて、周波数領域変換部１０１が得たMDCT係数列の各係数を正規化し、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)を出力する。ここでは聴覚的に歪が小さくなるような量子化の実現のために、重み付け包絡正規化部１０３は、パワースペクトル包絡を鈍らせた重み付けパワースペクトル包絡係数列を用いて、フレーム単位でMDCT係数列の各係数を正規化する。この結果、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)は、入力されたMDCT係数列ほどの大きな振幅の傾きや振幅の凹凸を持たないが、音響ディジタル信号のパワースペクトル包絡係数列と類似の大小関係を有するもの、すなわち、低い周波数に対応する係数側の領域にやや大きな振幅を持ち、ピッチ周期に起因する微細構造をもつもの、となる。
【００３７】
［重み付け包絡正規化処理の具体例］
N点のMDCT係数列の各係数X(1)，・・・，X(N)に対応するパワースペクトル包絡係数列の各係数W(1)，・・・，W(N)は、線形予測係数を周波数領域に変換して得ることができる。例えば、全極型モデルであるｐ次自己回帰過程により（ただしｐは正整数）、時刻ｔの時間信号x(t)は、ｐ時点まで遡った過去の自分自身の値x(t-1)，・・・，x(t-p)と予測残差e(t)と線形予測係数α1，・・・，αpによって式（１）で表される。このとき、パワースペクトル包絡係数列の各係数W(n)［1≦n≦N］は式（２）で表される。exp（・）はネイピア数を底とする指数関数、ｊは虚数単位、σ2は予測残差エネルギーである。
【数１】
2013180164.tif 000003
【００３８】
線形予測係数は、周波数領域変換部１０１に入力された音響ディジタル信号を重み付け包絡正規化部１０３によって線形予測分析して得られたものでもよいし、符号化装置１００内に在る図示しない他の手段によって音響ディジタル信号を線形予測分析して得られたものであってもよい。このような場合には、重み付け包絡正規化部１０３が線形予測係数を用いてパワースペクトル包絡係数列の各係数W(1)，・・・，W(N)を求める。また、符号化装置１００内に在る他の手段（パワースペクトル包絡係数列計算部１０２など）によってパワースペクトル包絡係数列の各係数W(1)，・・・，W(N)が既に得られている場合には、重み付け包絡正規化部１０３は、このパワースペクトル包絡係数列の各係数W(1)，・・・，W(N)を用いることができる。なお、復号装置でも符号化装置１００で得られた値と同じ値を得る必要があるため、量子化された線形予測係数および／またはパワースペクトル包絡係数列が利用される。以後の説明において、特に断りが無い限り、「線形予測係数」ないし「パワースペクトル包絡係数列」は量子化された線形予測係数ないしパワースペクトル包絡係数列を意味する。また、線形予測係数は例えば従来的な符号化技術によって符号化されて予測係数符号が復号側へ伝送される。従来的な符号化技術とは、例えば、線形予測係数そのものに対応する符号を予測係数符号とする符号化技術、線形予測係数をLSPパラメータに変換してLSPパラメータに対応する符号を予測係数符号とする符号化技術、線形予測係数をPARCOR係数に変換してPARCOR係数に対応する符号を予測係数符号とする符号化技術、などである。符号化装置１００内に在る他の手段によってパワースペクトル包絡係数列が得られる構成である場合は、符号化装置１００内に在る他の手段において線形予測係数が従来的な符号化技術によって符号化されて予測係数符号が復号側へ伝送される。
【００３９】
ここでは、重み付け包絡正規化処理の具体例として二つの例を示すが、本発明ではこれらの例に限定されるものではない。
＜例１＞
重み付け包絡正規化部２は、MDCT係数列の各係数X(1)，・・・，X(N)を当該各係数に対応するパワースペクトル包絡係数列の各係数の補正値Wγ(1)，・・・，Wγ(N)で除算することによって、重み付け正規化MDCT係数列の各係数X(1)/Wγ(1)，・・・，X(N)/Wγ(N)を得る処理を行う。補正値Wγ(n)［1≦n≦N］は式（３）で与えられる。但し、γは１以下の正の定数であり、パワースペクトル係数を鈍らせる定数である。
【数２】
2013180164.tif 000004
【００４０】
＜例２＞
重み付け包絡正規化部２は、MDCT係数列の各係数X(1)，・・・，X(N)を当該各係数に対応するパワースペクトル包絡係数列の各係数のβ乗（０＜β＜１）の値W(1)β，・・・，W(N)βで除算することによって、重み付け正規化MDCT係数列の各係数X(1)/W(1)β，・・・，X(N)/W(N)βを得る処理を行う。
【００４１】
この結果、フレーム単位の重み付け正規化MDCT係数列が得られるが、重み付け正規化MDCT係数列は入力されたMDCT係数列ほどの大きな振幅の傾きや振幅の凹凸を持たないが、入力されたMDCT係数列のパワースペクトル包絡と類似の大小関係を有するもの、すなわち、低い周波数に対応する係数側の領域にやや大きな振幅を持ち、ピッチ周期に起因する微細構造をもつもの、となる。
【００４２】
なお、重み付け包絡正規化処理に対応する逆処理、つまり、重み付け正規化MDCT係数列からMDCT係数列を復元する処理が復号側にて行われるため、パワースペクトル包絡係数列から重み付けパワースペクトル包絡係数列を算出する方法を符号化側と復号側で共通の設定にしておくことが必要である。
【００４３】
＜初期化部１０４＞
初期化部１０４は、利得（グローバルゲイン）ｇの初期値を設定する。利得の初期値は、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)のエネルギーと可変長符号化部１０６が出力する符号に予め配分されたビット数などから決めることができる。また、利得ｇの初期値は正値である。以下、可変長符号化部１０６が出力する符号に予め配分されたビット数を配分ビット数Ｂと呼ぶ。また、初期化部は、利得の更新回数の初期値として０を設定する。
【００４４】
＜利得更新ループ処理部１３０＞
利得更新ループ処理部１３０は、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)中の各係数を利得で除算して得られる系列（整数値サンプルによる列）を所定のビット数で符号化できるように利得を決定し、重み付け正規化MDCT係数列XN(1)，・・・，XN(N)中の各係数を決定した利得で除算して得られる系列（整数値サンプルによる列）を可変長符号化して得た整数信号符号と、決定した利得を符号化して得た利得符号（利得に対応する利得符号）と、を出力する。利得更新ループ処理部１３０は、上記の整数値サンプルによる列を符号化して得られる符号のビット数と、所定の配分ビット数Ｂと、の差が大きいほど、更新前の利得と更新後の利得との差が大きくなるように利得の値を更新する。
利得更新ループ処理部１３０は、量子化部１０５と、可変長符号化部１０６と、判定部１０７と、利得拡大更新部１３１と、利得縮小更新部１３２と、切り捨て部１１６と、利得符号化部１１７と、を含む。
【００４５】
＜量子化部１０５＞
量子化部１０５は、入力された重み付け正規化MDCT係数列XN(1)，・・・，XN (N)（所定の区間の入力音響信号に由来するサンプル列）の各係数（各サンプル）を利得ｇで割り算して得られる値を量子化して、整数値（量子化正規化済サンプル）による系列である量子化正規化済係数系列XQ(1)，・・・，XQ(N)を得て出力する。
また量子化部１０５は、最も低い周波数側にある量子化正規化済係数から、値が０ではない最も高い周波数側にある量子化正規化済係数までの、サンプル数ｓを計数し、このサンプル数ｓを出力する。
【００４６】
＜可変長符号化部１０６＞
可変長符号化部１０６は、入力された量子化正規化済係数系列XQ(1)，・・・，XQ(N)を可変長符号化して符号（サンプル列符号）を得て出力する。この符号を整数信号符号と呼ぶ。この可変長符号化には、例えば、量子化正規化済係数系列中の複数の係数を纏めて符号化する方法を用いる。また、可変長符号化部１０６は、可変長符号化で得た整数信号符号のビット数を計測する。本形態では、このビット数を消費ビット数ｃと呼ぶ。
【００４７】
＜判定部１０７＞
判定部１０７は、利得の更新回数が予め定めた回数の場合は、利得ｇ、整数信号符号、消費ビット数ｃを出力する。
利得の更新回数が予め定めた回数未満である場合は、可変長符号化部１０６が計測した消費ビット数ｃが配分ビット数Ｂより多い場合には利得拡大更新部１３１が、可変長符号化部１０６が計測した消費ビット数ｃが配分ビット数Ｂより少ない場合には利得縮小更新部１３２が、次の処理を行うように制御する。なお、可変長符号化部１０６が計測した消費ビット数ｃが配分ビット数Ｂと等しい場合は、判定部１０７は、利得ｇ、整数信号符号、消費ビット数ｃを出力する。
【００４８】
＜利得拡大更新部１３１＞
利得拡大更新部１３１は、今回の利得ｇの値よりも大きな値ｇ’＞ｇを新たな利得として設定する。利得拡大更新部１３１は、サンプル数計測部１１８と、利得下限設定部１０８と、第１分岐部１０９と、第１利得更新部１１０と、第１利得更新部１１０と、利得拡大部１１１と、を含む。
【００４９】
＜サンプル数計測部１１８＞
サンプル数計測部１１８は、消費ビット数ｃが配分ビット数Ｂより多い場合には、判定部１０７が出力した整数信号符号のうち、消費ビット数ｃが配分ビット数Ｂを上回らないように、高い周波数側の量子化正規化済係数に対応する符号を取り除いた符号に対応する量子化正規化済係数のサンプル数ｔを出力する。
つまり、サンプル数計測部１１８は、消費ビット数ｃの配分ビット数Ｂに対する上回り分ｃ−Ｂに対応する符号（切り捨て符号）に対応する高い周波数側の量子化正規化済係数を、量子化部１０５が出力した量子化正規化済係数系列から取り除いた残りである、対応する符号が取り除かれなかった量子化正規化済係数のサンプル数ｔを出力する。切り捨て符号の例は、最も高い周波数を含む領域内の１個以上の量子化正規化済係数に対応する符号のうち、ビット数がｃ−Ｂ以上かつ最小の符号である。言い換えれば、低い周波数側の量子化正規化済係数のみを符号化対象とし、残りの高い周波数側の量子化正規化済係数を符号化対象としないことにより、対応する可変長符号の長さが配分ビット数Ｂ以下かつ最大となるときの、符号化対象とする量子化正規化済係数のサンプル数がｔである。
【００５０】
＜利得下限設定部１０８＞
消費ビット数ｃが配分ビット数Ｂより多い場合には、さらに利得下限設定部１０８が、今回の利得ｇの値（当該消費ビット数ｃに対応する利得ｇ）を利得の下限値ｇｍｉｎとして設定する（ｇｍｉｎ←ｇ）。この利得の下限値ｇｍｉｎは、少なくとも利得の値はこれ以上であるべきことを意味する。
【００５１】
＜第１分岐部１０９＞
利得下限設定部１０８で利得の下限値ｇｍｉｎが設定された場合、第１分岐部１０９は、利得の上限値ｇｍａｘが既に設定されている場合には第１利得更新部１１０が、そうでない場合には利得拡大部１１１が、次の処理を行うように制御する。
【００５２】
＜第１利得更新部１１０＞
第１利得更新部１１０は、今回の利得ｇの値（消費ビット数ｃに対応する利得ｇ）と利得の上限値ｇｍａｘとの間の値を、利得ｇの新たな値とする。これは、最適な利得の値は、今回の利得ｇの値と利得の上限値ｇｍａｘとの間に存在するからである。第１利得更新部１１０は、例えば、今回の利得ｇの値と利得の上限値ｇｍａｘの平均値を新たに利得ｇとして設定する（ｇ←（ｇ＋ｇｍａｘ）／２）。今回の利得ｇの値は利得の下限値ｇｍｉｎとして設定されているので、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎの平均値を新たに利得ｇの値として設定するとも言える（ｇ←（ｇｍａｘ＋ｇｍｉｎ）／２）。その後、量子化部１０５の処理に戻る。
【００５３】
＜利得拡大部１１１＞
利得拡大部１１１は、最も低い周波数側にある量子化正規化済係数から値が０ではない最も高い周波数側にある量子化正規化済係数までのサンプル数ｓから、サンプル数計測部１１８が出力したサンプル数ｔを減算して得られる値u＝ｓ−ｔ、が大きいほど、今回の利得から新たな利得への増分が大きくなるようにする。例えば、新たな利得ｇ←今回の利得ｇ×（１＋u／N×α）とする。ここで、αは予め定めた正の定数とする。
または、利得拡大部１１１は、符号化対象のすべてのサンプル数Ｎから、サンプル数計測部１１８が出力したサンプル数ｔを減算して得られるｖ＝Ｎ−ｔが大きいほど、今回の利得から新たな利得への増分が大きくなるようにする。たとえば、新たな利得ｇ←今回の利得ｇ×（１＋ｖ／Ｎ×α）とする。
すなわち利得拡大部１１１は、量子化正規化済サンプル列の一部または全てのサンプル数から、上記の対応する符号が取り除かれなかった量子化正規化済係数のサンプル数、を減算して得られる値が大きいほど、利得ｇの値を大きく増加させる。その後、量子化部１０５の処理に戻る。言い換えると、利得拡大部１１１は、量子化正規化済サンプル列の一部または全てのサンプル数から、上記の対応する符号が取り除かれなかった量子化正規化済係数のサンプル数、を減算して得られる値が大きいほど、利得の更新前の値から更新後の値への増分が大きくなるように利得の値を更新し、その後の量子化部１０５の処理を行わせる。
【００５４】
＜利得縮小更新部１３２＞
利得縮小更新部１３２は、今回の利得ｇの値よりも小さな値ｇ’＜ｇを新たな利得として設定する。利得縮小更新部１３２は、利得上限設定部１１２と、第２分岐部１１３と、第２利得更新部１１４と、利得縮小部１１５と、を含む。
【００５５】
＜利得上限設定部１１２＞
消費ビット数ｃが配分ビット数Ｂよりも少ない場合には、利得上限設定部１１２が、今回の利得ｇの値（当該消費ビット数ｃに対応する利得ｇの値）を利得の上限値ｇｍａｘと設定する（ｇｍａｘ←ｇ）。この利得の上限値ｇｍａｘは、少なくとも利得の値はこれ以下であるべきことを意味する。
【００５６】
＜第２分岐部１１３＞
利得上限設定部１１２で利得の上限値ｇｍａｘが設定された場合、第２分岐部１１３は、利得の下限値ｇｍｉｎが既に設定されている場合には第２利得更新部１１４が、そうでない場合には利得縮小部１１５が、次の処理を行うように制御する。
【００５７】
＜第２利得更新部１１４＞
第２利得更新部１１４は、今回の利得ｇの値（消費ビット数ｃに対応する利得ｇの値）と、利得の下限値ｇｍｉｎとの間の値を、利得ｇの新たな値とする。これは、最適な利得の値は、今回の利得ｇの値と利得の下限値ｇｍｉｎとの間に存在するからである。第２利得更新部１１４は、例えば、今回の利得ｇの値と利得の下限値ｇｍｉｎの平均値を新たな利得ｇの値として設定する（ｇ←（ｇ＋ｇｍｉｎ）／２）。今回の利得ｇの値は利得の上限値ｇｍａｘとして設定されているので、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎの平均値を新たに利得ｇの値として設定するとも言える（ｇ←（ｇｍａｘ＋ｇｍｉｎ）／２）。その後、量子化部１０５の処理に戻る。
【００５８】
＜利得縮小部１１５＞
利得縮小部１１５は、配分ビット数Ｂから消費ビット数ｃを減算して得られる値である余剰ビット数Ｂ−ｃが大きいほど、今回の利得ｇの値から新たな利得ｇの値への減少分が大きくなるようにする。ただし、新たな利得ｇの値も正値である。例えば、新たな利得ｇ←今回の利得ｇ×（１-（B-c)／B×β）とする。ここで、βは予め定めた正の定数とする。すなわち利得縮小部１１５は、配分ビット数Ｂから消費ビット数ｃを減算して得られる値Ｂ−ｃが大きいほど、利得ｇの値を大きく減少させる。その後、量子化部１０５の処理に戻る。言い換えると、利得縮小部１１５は、配分ビット数Ｂから消費ビット数ｃを減算して得られる値Ｂ−ｃが大きいほど、利得ｇの更新前の値から更新後の値への減少分が大きくなるように利得ｇの値を更新し、その後の量子化部１１５の処理を行わせる。
＜切り捨て部１１６＞
切り捨て部１１６は、判定部１０７が出力した消費ビット数ｃが配分ビット数Ｂより多い場合には、判定部１０７が出力した整数信号符号のうち、消費ビット数ｃが配分ビット数Ｂを上回る分だけの符号を、高い周波数側の量子化正規化済係数に対応する符号から取り除いたものを、新たな整数信号符号として出力する。すなわち切り捨て部１１６は、消費ビット数ｃの配分ビット数Ｂに対する上回り分ｃ−Ｂに対応する高い周波数側の量子化正規化済係数に対応する符号（切り捨て符号）を整数信号符号（サンプル列符号）から取り除くことで得られる、残りの符号（切り捨て済サンプル列符号）を、新たな整数信号符号として出力する。
【００５９】
＜利得符号化部１１７＞
判定部１０７が出力した利得を所定のビット数で符号化して利得符号を得て、出力する。
【００６０】
［第１実施形態の変形例］
＜符号化装置１５０＞
図３を参照して第１実施形態の変形例の符号化装置１５０が行う符号化処理を説明する。第１実施形態の変形例の符号化装置１５０が第１実施形態の符号化装置１００と異なるのは、可変長符号化で得た整数信号符号のビット数に代えて、整数信号符号の推定ビット数を消費ビット数ｃとする点である。符号化装置１５０は、符号化装置１００の利得更新ループ処理部１３０に代えて、利得更新ループ処理部１９０を備える。利得更新ループ処理部１９０は、利得更新ループ処理部１３０の可変長符号化部１０６、判定部１０７、利得拡大更新部１３１、および切り捨て部１１６に代えて、ビット数推定部１５６、判定部１５７、利得拡大更新部１９１、および可変長符号化部１５９を備える。利得拡大更新部１９１は、利得拡大更新部１３１の利得拡大部１１１、およびサンプル数計測部１１８に代えて、利得拡大部１５１、およびサンプル数計測部１６８を備える。
以下、第１実施形態との差分についてのみ説明する。
【００６１】
＜ビット数推定部１５６＞
ビット数推定部１５６は、量子化正規化済係数系列XQ(1)，・・・，XQ(N)を可変長符号化して得られる符号のビット数の推定値（推定ビット数）を求めて出力する。第１実施形態の変形例では、この推定ビット数を消費ビット数ｃと呼ぶ。
【００６２】
＜判定部１５７＞
判定部１５７は、利得の更新回数が予め定めた回数の場合は、利得ｇ、量子化正規化済係数系列XQ(1)，・・・，XQ(N)を出力する。
利得の更新回数が予め定めた回数未満である場合は、ビット数推定部１５６が推定した消費ビット数ｃが配分ビット数Ｂより多い場合には利得拡大更新部１９１が、ビット数推定部１５６が推定した消費ビット数ｃが配分ビット数Ｂより少ない場合には利得縮小更新部１３２が、次の処理を行うように制御する。なお、ビット数推定部１５６が推定した消費ビット数ｃが配分ビット数Ｂと等しい場合は、判定部１５７は、利得ｇ、量子化正規化済係数系列XQ(1)，・・・，XQ(N)を出力する。
【００６３】
＜サンプル数計測部１６８＞
サンプル数計測部１６８は、消費ビット数ｃが配分ビット数Ｂより多い場合には、消費ビット数ｃの配分ビット数Ｂに対する上回り分ｃ−Ｂに対応する符号（切り捨て符号）の対象となる高い周波数側の量子化正規化済係数を、量子化部１０５が出力した量子化正規化済係数系列XQ(1)，・・・，XQ(N)から取り除いた残りの量子化正規化済係数のサンプル数ｔを出力する。
【００６４】
＜利得拡大部１５１＞
利得拡大部１５１は、第１実施形態の利得拡大部１１１におけるサンプル数計測部１１８が出力したサンプル数ｔの代わりに、サンプル数計測部１６８が出力したサンプル数ｔを用いる点を除いては同じである。
すなわち、利得拡大部１５１は、最も低い周波数側にある量子化正規化済係数から値が０ではない最も高い周波数側にある量子化正規化済係数までのサンプル数ｓから、サンプル数計測部１１８が出力したサンプル数ｔを減算して得られる値u＝ｓ−ｔ、が大きいほど、今回の利得から新たな利得への増分が大きくなるようにする。例えば、新たな利得ｇ←今回の利得ｇ×（１＋u／N×α）とする。ここで、αは予め定めた正の定数とする。
または、利得拡大部１１１は、符号化対象のすべてのサンプル数Ｎから、サンプル数計測部１１８が出力したサンプル数ｔを減算して得られるｖ＝Ｎ−ｔが大きいほど、今回の利得から新たな利得への増分が大きくなるようにする。たとえば、新たな利得ｇ←今回の利得ｇ×（１＋ｖ／Ｎ×α）とする。
すなわち利得拡大部１１１は、量子化正規化済サンプル列の一部または全てのサンプル数から、上記の対応する符号が取り除かれなかった量子化正規化済係数のサンプル数、を減算して得られる値が大きいほど、利得ｇの値を大きく増加させる。その後、量子化部１０５の処理に戻る。言い換えると、利得拡大部１１１は、量子化正規化済サンプル列の一部または全てのサンプル数から、上記の切り捨て符号の対象となる高い周波数側の量子化正規化済係数を量子化部１０５が出力した量子化正規化済係数系列XQ(1)，・・・，XQ(N)から取り除いた残りの量子化正規化済係数のサンプル数ｔ、を減算して得られる値が大きいほど、利得の更新前の値から更新後の値への増分が大きくなるように利得の値を更新し、その後の量子化部１０５の処理を行わせる。
【００６５】
＜可変長符号化部１５９＞
可変長符号化部１５９は、判定部１５７から出力された量子化正規化済係数系列XQ(1)，・・・，XQ(N)を可変長符号化して符号を得て、得られた符号を整数信号符号（サンプル列符号）として出力する。可変長符号化によって配分ビット数Ｂを超えるビット数の符号が得られる場合、可変長符号化部１５９は、可変長符号化により得られた符号のうち、配分ビット数Ｂを上回る分だけの符号を、高い周波数側の量子化正規化済係数に対応する符号から取り除いたものを、整数信号符号として出力する。
【００６６】
［第２実施形態］
＜符号化装置２００＞
図４を参照して第２実施形態の符号化装置２００が行う符号化処理を説明する。第２実施形態の符号化装置２００が第１実施形態の符号化装置１００と異なるのは、利得更新ループ処理部１３０に代えて利得更新ループ処理部２３０を備え、利得更新ループ処理部２３０が、利得更新ループ処理部１３０の量子化部１０５、判定部１０７、利得拡大更新部１３１、および切り捨て部１１６に代えて、量子化部２０５、判定部２０７、利得拡大更新部２３１、および切り捨て部２１６を備える点、ならびに第１利得更新部１１０、第２利得更新部１１４、および利得縮小部１１５の処理の後、量子化部１０５の処理に戻ることに代えて、量子化部２０５の処理に戻る点である。利得拡大更新部２３１は、第１実施形態の利得拡大更新部１３１におけるサンプル数計測部１１８を含まず、利得下限設定部１０８と、第１分岐部１０９と、第１利得更新部１１０と、利得拡大部２１１と、から構成される。以下、第１実施形態との差分についてのみ説明する。
【００６７】
＜量子化部２０５＞
量子化部２０５は、重み付け正規化MDCT係数列XN(1)，・・・，XN(N) （所定の区間の入力音響信号に由来するサンプル列）の各係数（各サンプル）を利得ｇで割り算して得られる値を量子化して、整数値（量子化正規化済サンプル）による系列である量子化正規化済係数系列XQ(1)，・・・，XQ(N)を得て出力する。
【００６８】
＜判定部２０７＞
判定部２０７は、利得の更新回数が予め定めた回数の場合は、利得、整数信号符号、消費ビット数ｃを出力する。
利得の更新回数が予め定めた回数未満である場合は、可変長符号化部１０６が計測した消費ビット数ｃが配分ビット数Ｂより多い場合には利得拡大更新部２３１が、可変長符号化部１０６が計測した消費ビット数ｃが配分ビット数Ｂより少ない場合には利得縮小更新部１３２が、第１実施形態で説明した処理を行うように制御する。なお、可変長符号化部１０６が計測した消費ビット数ｃが配分ビット数Ｂと等しい場合は、判定部２０７は、利得、整数信号符号、消費ビット数ｃを出力する。
【００６９】
＜切り捨て部２１６＞
切り捨て部２１６は、判定部２０７が出力した消費ビット数ｃが配分ビット数Ｂより多い場合には、判定部２０７が出力した整数信号符号のうち、消費ビット数ｃが配分ビット数Ｂを上回る分だけの符号を、高い周波数側の量子化正規化済係数に対応する符号から取り除いたものを、新たな整数信号符号として出力する。すなわち切り捨て部２１６は、消費ビット数ｃの配分ビット数Ｂに対する上回り分ｃ−Ｂに対応する高い周波数側の量子化正規化済係数に対応する符号（切り捨て符号）を整数信号符号（サンプル列符号）から取り除くことで得られる、残りの符号（切り捨て済サンプル列符号）を、新たな整数信号符号として出力する。
【００７０】
＜利得拡大部２１１＞
利得拡大部２１１は、消費ビット数ｃから配分ビット数Ｂを減算して得られる値である不足ビット数ｃ−Ｂが大きいほど、今回の利得から新たな利得への増加分が大きくなるようにする。たとえば、新たな利得ｇ←今回の利得ｇ×（１＋（ｃ−Ｂ)／Ｂ×α）とする。ここで、αは予め定めた正の定数とする。すなわち、消費ビット数ｃが配分ビット数Ｂよりも多く、なおかつ、利得の上限値ｇｍａｘが設定されていない場合、利得拡大部２１１が、消費ビット数ｃから配分ビット数Ｂを減算して得られる値ｃ−Ｂが大きいほど、利得ｇの値を大きく増加させる。その後、量子化部２０５の処理に戻る。言い換えると、利得拡大部２１１は、消費ビット数ｃから配分ビット数Ｂを減算して得られる値ｃ−Ｂが大きいほど、利得ｇの更新前の値から更新後の値への増分が大きくなるように利得ｇの値を更新し、その後の量子化部２０５の処理を行わせる。
【００７１】
［第２実施形態の変形例］
＜符号化装置２５０＞
図５を参照して第２実施形態の変形例の符号化装置２５０が行う符号化処理を説明する。第２実施形態の変形例の符号化装置２５０が第２実施形態の符号化装置２００と異なるのは、可変長符号化で得た整数信号符号のビット数に代えて、整数信号符号の推定ビット数を消費ビット数ｃとする点である。符号化装置２５０は、符号化装置２００の利得更新ループ処理部２３０に代えて利得更新ループ処理部２９０を備え、利得更新ループ処理部２９０が利得更新ループ処理部２３０の可変長符号化部１０６、切り捨て部２１６、および判定部２０７に代えて、ビット数推定部１５６、可変長符号化部１５９、および判定部２５７を備える。以下、第２実施形態との差分についてのみ説明する。
【００７２】
＜ビット数推定部１５６＞
ビット数推定部１５６は、第１実施形態の変形例と同じである。
【００７３】
＜判定部２５７＞
判定部２５７は、利得の更新回数が予め定めた回数の場合は、利得、量子化正規化済係数系列、消費ビット数ｃを出力する。
利得の更新回数が予め定めた回数未満である場合は、ビット数推定部１５６が推定した消費ビット数ｃが配分ビット数Ｂより多い場合には利得拡大更新部２３１が、ビット数推定部１５６が推定した消費ビット数ｃが配分ビット数Ｂより少ない場合には利得縮小更新部１３２が、第１実施形態で説明した処理を行うように制御する。なお、ビット数推定部１５６が推定した消費ビット数ｃが配分ビット数Ｂと等しい場合は、判定部２５７は、利得、量子化正規化済係数系列、消費ビット数ｃを出力する。
【００７４】
＜可変長符号化部１５９＞
可変長符号化部１５９は、第１実施形態の変形例と同じである。
【００７５】
［第３実施形態］
＜符号化装置３００＞
図６を参照して第３実施形態の符号化装置３００が行う符号化処理を説明する。第３実施形態の符号化装置３００が第１実施形態の符号化装置１００と異なるのは、利得下限設定部１０８、第１利得更新部１１０、利得上限設定部１１２、および第２利得更新部１１４に代えて、利得下限設定部３０８、第１利得更新部３１０、利得上限設定部３１２、第２利得更新部３１４、および消費ビット数記憶部３２０を備える点である。利得拡大更新部３３１は、利得拡大更新部１３１の利得下限設定部１０８、第１利得更新部１１０に代えて、利得下限設定部３０８、第１利得更新部３１０を備える。利得縮小更新部３３２は、利得縮小更新部１３２の利得上限設定部１１２、第２利得更新部１１４に代えて、利得上限設定部３１２、第２利得更新部３１４を備える。利得拡大ループ処理部３３０は、利得拡大ループ処理部１３０の利得拡大更新部１３１と利得縮小更新部１３２に代えて、利得拡大更新部３３１と利得縮小更新部３３２を備える。以下、第１実施形態との差分についてのみ説明する。
【００７６】
＜利得下限設定部３０８＞
利得下限設定部３０８は、今回の利得ｇの値を利得の下限値ｇｍｉｎとして設定する（ｇｍｉｎ←ｇ）。また、利得下限設定部３０８は、消費ビット数ｃを下限設定時消費ビット数ｃＬとして消費ビット数記憶部３２０に記憶する。すなわち利得下限設定部３０８は、消費ビット数ｃが配分ビット数Ｂよりも多い場合に、第１実施形態の利得下限設定部１０８の処理に加え、さらに消費ビット数ｃを下限設定時消費ビット数ｃＬとして設定して消費ビット数記憶部３２０に記憶する。
【００７７】
＜利得上限設定部３１２＞
利得上限設定部３１２は、今回の利得ｇの値を利得の上限値ｇｍａｘと設定する（ｇｍａｘ←ｇ）。また、利得上限設定部３１２は、消費ビット数ｃを上限設定時消費ビット数ｃＵとして消費ビット数記憶部３２０に記憶する。すなわち利得上限設定部３１２は、消費ビット数ｃが配分ビット数Ｂよりも少ない場合に、第１実施形態の利得上限設定部１１２の処理に加え、さらに消費ビット数ｃを上限設定時消費ビット数ｃＵとして設定して消費ビット数記憶部３２０に記憶する。
【００７８】
＜第１利得更新部３１０＞
消費ビット数ｃが配分ビット数Ｂよりも多く、なおかつ、利得の上限値ｇｍａｘが既に設定されている場合、第１利得更新部３１０は、配分ビット数Ｂと上限設定時消費ビット数ｃＵと下限設定時消費ビット数ｃＬとに基づき、利得の下限値ｇｍｉｎのもっともらしさの指標と利得の上限値ｇｍａｘのもっともらしさの指標との少なくとも何れかを求める。なお、「もっともらしさの指標」とは、利得ｇの値としてのもっともらしさを表す指標を意味する。
【００７９】
［利得の下限値ｇｍｉｎのもっともらしさの指標］
第１利得更新部３１０は、例えば、利得の下限値ｇｍｉｎの相対的もっともらしさを表す指標ｗを式Ａにより求める。
ｗ＝（Ｂ−ｃＵ）／（ｃＬ−ｃＵ）  （式Ａ）
式Ａは、意味的には、配分ビット数Ｂと上限設定時消費ビット数ｃＵとの差、と下限設定時消費ビット数ｃＬと配分ビット数Ｂとの差に基づく式Ｂの右辺を変形したものである。
ｗ＝（Ｂ−ｃＵ）／（Ｂ−ｃＵ＋ｃＬ−Ｂ）  （式Ｂ）
従って、式Ａではなく式Ｂにより指標ｗを求めてもよい。
式Ａまたは式Ｂにより求まる指標ｗが大きいときには、利得の下限値ｇｍｉｎのほうが利得ｇの値としてもっともらしく、指標ｗが小さいときには、利得の上限値ｇｍａｘのほうが利得ｇの値としてもっともらしいことになる。
【００８０】
［利得の上限値ｇｍａｘのもっともらしさの指標］
利得の上限値ｇｍａｘの相対的もっともらしさは（１−ｗ）である。
すなわち、式Ａまたは式Ｂにより指標ｗを求めることに代えて、利得の上限値ｇｍａｘのもっともらしさの指標（１−ｗ）を式Ｃによって求めてもよい。
（１−ｗ）＝（ｃＬ−Ｂ）／（ｃＬ−ｃＵ）  （式Ｃ）
式Ｃは、意味的には、配分ビット数Ｂと上限設定時消費ビット数ｃＵとの差Ｂ−ｃＵ、と下限設定時消費ビット数ｃＬと配分ビット数Ｂとの差ｃＬ−Ｂに基づく式Ｄの右辺を変形したものである。
１−ｗ＝（ｃＬ−Ｂ）／（Ｂ−ｃＵ＋ｃＬ−Ｂ）  （式Ｄ）
従って、式Ｃではなく式Ｄにより指標（１−ｗ）を求めてもよい。
式Ａまたは式Ｂにより求まる指標（１−ｗ）が大きいときには、利得の上限値ｇｍａｘのほうが利得ｇの値としてもっともらしく、指標（１−ｗ）が小さいときには、利得の下限値ｇｍｉｎのほうが利得ｇの値としてもっともらしいことになる。
【００８１】
そして、第１利得更新部３１０は、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎのうちもっともらしさの大きいほうの値に重きを置いた重みつき平均を新たな利得ｇの値として設定して出力する（ｇ←ｇｍｉｎ×ｗ＋ｇｍａｘ×（１−ｗ））。すなわち、配分ビット数Ｂと上限設定時消費ビット数ｃＵの差が下限設定時消費ビット数ｃＬと配分ビット数Ｂの差より大きい場合には、利得の下限値ｇｍｉｎのほうがもっともらしく、好ましい利得ｇの値に近いことになる。
【００８２】
あるいは第１利得更新部３１０が、正の値である定数Ｃを使って、ｗ＝（Ｂ−ｃＵ＋Ｃ）／（ｃＬ−ｃＵ＋２×Ｃ）として重みづけを緩和したものを指標ｗとして求めてもよい。なお、この場合は
（１−ｗ）＝（ｃＬ−Ｂ＋Ｃ）／（ｃＬ−ｃＵ＋２×Ｃ）
となり、新たな利得ｇの値は利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎの算術平均値と消費ビット数と配分ビット数の差に基づく重みつき平均の中間となる。
【００８３】
なお、サンプル数計測部１１８で切り捨て符号の対象となる量子化正規化済サンプルのサンプル数（切り捨てられたサンプル数Ｔｒ）が得られている場合には、下限設定時消費ビット数ｃＬと配分ビット数Ｂの差のかわりに、切り捨てられたサンプル数Ｔｒを用いることも可能である。下限設定時消費ビット数ｃＬと配分ビット数Ｂの差が大きいほど切り捨てられたサンプル数Ｔｒが大きいという性質があるためである。下限設定時消費ビット数ｃＬと配分ビット数Ｂの差と切り捨てられたサンプル数Ｔｒの対応関係をあらかじめ実験的にもとめておくことで、切り捨てられたサンプル数Ｔｒを下限設定時消費ビット数ｃＬと配分ビット数Ｂの差に近似的に換算すればよい。γは換算のために実験的に定める係数で（ｃＬ−Ｂ）＝γ×Ｔｒと置き換えるとｗ＝（Ｂ−ｃＵ）／（Ｂ−ｃＵ＋γ×Ｔｒ）とすることができる。同様に、正の値である定数Ｃを使ってｗ＝（Ｂ−ｃＵ＋Ｃ）／（Ｂ−ｃＵ＋γ×Ｔｒ＋２×Ｃ）として重みづけを緩和したものを指標ｗとすることもできる。すなわち、第１利得更新部３１０は、配分ビット数Ｂ、切り捨てられたサンプル数Ｔｒ、および上限設定時消費ビット数ｃＵを用い、利得の下限値のもっともらしさの指標と利得の上限値のもっともらしさの指標との少なくとも何れかを得てもよい。なお、直近のサンプル数計測部１１８の処理で得られた最も新しいサンプル数Ｔｒを用いることが望ましいが、より過去のサンプル数計測部１１８の処理で得られたサンプル数Ｔｒを用いてもよい。
その後、量子化部１０５の処理に戻る。
【００８４】
＜第２利得更新部３１４＞
消費ビット数ｃが配分ビット数Ｂよりも少なく、なおかつ、利得の下限値ｇｍｉｎが既に設定されている場合に、第２利得更新部３１４は第１利得更新部３１０と同じ動作をする。
【００８５】
上述した「もっともらしさの指標」は、利得の下限値ｇｍｉｎまたは上限値ｇｍａｘのどちらの方向に、どのくらい利得ｇの値を動かせば、適切な利得ｇの値に近づくかを表す。本形態では、この指標に基づいて利得ｇの新たな値に更新するため、利得ｇが適切な値に収束するまでの更新回数を削減することができる。
【００８６】
なお、本形態の第１利得更新部３１０および第２利得更新部３１４は、利得の下限値ｇｍｉｎのもっともらしさの指標と利得の上限値ｇｍａｘのもっともらしさの指標との少なくとも何れかを得て、利得の下限値ｇｍｉｎと利得の上限値ｇｍａｘのうちもっともらしいほうに大きな重みを与えた、利得の下限値ｇｍｉｎと利得の上限値ｇｍａｘとの重みつき平均を、利得ｇの新たな値とした。しかしながら、第１利得更新部３１０および第２利得更新部３１４が、もっともらしさの指標を得ることなく、利得の下限値ｇｍｉｎと利得の上限値ｇｍａｘのうちもっともらしいほうに大きな重みを与えた、利得の下限値ｇｍｉｎと利得の上限値ｇｍａｘとの重みつき平均を、利得ｇの新たな値としてもよい。例えば、第１利得更新部３１０および第２利得更新部３１４が、指標ｗおよび（１−ｗ）の何れも得ることなく、上限設定時消費ビット数ｃＵと下限設定時消費ビット数ｃＬと、配分ビット数Ｂとに基づき、
【数３】
2013180164.tif 000005
あるいは、
【数４】
2013180164.tif 000006
を利得ｇの新たな値として得てもよい。すなわち、配分ビット数Ｂと上限設定時消費ビット数ｃＵの差が大きいほど、利得の上限値ｇｍａｘのほうに大きな重みを与えた、または、下限設定時消費ビット数ｃＬと配分ビット数Ｂの差が大きいほど、利得の下限値ｇｍｉｎのほうに大きな重みを与えた、利得の下限値ｇｍｉｎと利得の上限値ｇｍａｘとの重みつき平均を、利得ｇの新たな値とすればよく、その処理過程に限定はない。
あるいは、第１利得更新部３１０および第２利得更新部３１４が、切り捨てられたサンプル数Ｔｒに基づき利得ｇを更新する構成とする場合には、第１利得更新部３１０が、
【数５】
2013180164.tif 000007
もしくは、
【数６】
2013180164.tif 000008
を利得ｇの新たな値として得てもよい。
また例えば、利得の下限値ｇｍｉｎと利得の上限値ｇｍａｘの何れかに重みを与えた、利得の下限値ｇｍｉｎと利得の上限値ｇｍａｘとの重みつき平均を、利得ｇの新たな値としても良い。例えば、
（ω１×ｇｍｉｎ＋ｇｍａｘ）／（ω１＋１）
を利得ｇの新たな値としても良い。ここで、ω１は、例えば、ｇｍｉｎの方がもっともらしい場合、すなわち（Ｂ−ｃＵ）＞（ｃＬ−Ｂ）の場合、に１以上の正の値を取り、ｇｍａｘの方がもっともらしい場合、すなわち（Ｂ−ｃＵ）＜（ｃＬ−Ｂ）の場合、に１以下の正の値を取り、Ｂ−ｃＵが大きいほど大きな値を取るように設定すればよい。例えば、ω１をＢ−ｃＵに関する単調増加関数値とすれば良い。あるいは、
（ｇｍｉｎ＋ω２×ｇｍａｘ）／（１＋ω２）
を利得ｇの新たな値としても良い。ここで、ω２は、例えば、ｇｍａｘの方がもっともらしい場合に１以上の正の値を取り、ｇｍｉｎの方がもっともらしい場合に１以下の正の値を取り、ｃＬ−Ｂが大きいほど大きな値を取るように設定すればよい。例えば、ω２を、ｃＬ−Ｂに関する単調増加関数値とすれば良い。あるいは、ω３を１以上の正の値であって、Ｂ−ｃＵに関する単調増加関数値を取るものとし、ω４を１以上の正の値であってｃＬ−Ｂに関する単調増加関数値を取るものとして、ｇｍｉｎの方がもっともらしい場合（（Ｂ−ｃＵ）＞（ｃＬ−Ｂ）の場合）に
（ω３×ｇｍｉｎ＋ｇｍａｘ）／（ω３＋１）
を利得ｇの新たな値とし、ｇｍａｘの方がもっともらしい場合（（Ｂ−ｃＵ）＜（ｃＬ−Ｂ）の場合）に
（ｇｍｉｎ＋ω４×ｇｍａｘ）／（１＋ω４）
を利得ｇの新たな値としても良い。
このように、配分ビット数Ｂと下限設定時消費ビット数ｃＬと上限設定時消費ビット数ｃＵとに少なくとも基づく重みを、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎとの少なくとも何れかに与えた、利得の上限値と利得の下限値の重み付き平均を更新後の利得としてもよい。
【００８７】
[第３実施形態の変形例]
上記の第３実施形態では第１実施形態の利得下限設定部１０８、利得上限設定部１１２、第１利得更新部１１０、第２利得更新部１１４を置き換えるものとして説明したが、第２実施形態の利得下限設定部１０８、利得上限設定部１１２、第１利得更新部１１０、第２利得更新部１１４を上記の第３実施形態で説明したものに置き換えて実施してもよいし、[背景技術]に記載したTCX符号化の符号化装置１０００の利得下限設定部１００８、利得上限設定部１０１２、第１利得更新部１０１０、第２利得更新部１０１４を上記の第３実施形態で説明したものに置き換えて実施してもよい。
【００８８】
あるいは、第１実施形態の変形例の利得下限設定部１０８、利得上限設定部１１２、第１利得更新部１１０、第２利得更新部１１４を上記の第３実施形態で説明したものに置き換えて実施してもよいし、第２実施形態の変形例の利得下限設定部１０８、利得上限設定部１１２、第１利得更新部１１０、第２利得更新部１１４を上記の第３実施形態で説明したものに置き換えて実施してもよい。
【００８９】
すなわち、サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、所定の配分ビット数Ｂより多い場合に、更新前の利得を利得の下限値ｇｍｉｎとして設定し、ビット数または推定ビット数を下限設定時消費ビット数ｃＬとして設定し、サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、所定の配分ビット数Ｂより少ない場合に、更新前の利得を利得の上限値ｇｍａｘとして設定し、ビット数または推定ビット数を上限設定時消費ビット数ｃＵとして設定し、配分ビット数Ｂと下限設定時消費ビット数ｃＬと上限設定時消費ビット数ｃＵとに少なくとも基づく重みを、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎとの少なくとも何れかに与えた、利得の上限値と利得の下限値の重み付き平均を更新後の利得とすればよい。
【００９０】
＜符号化装置のハードウェア構成例＞
上述の実施形態に関わる符号化装置は、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ＣＰＵ（Central Processing Unit）〔キャッシュメモリなどを備えていてもよい。〕、メモリであるＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）、ハードディスクである外部記憶装置、およびこれらの入力部、出力部、ＣＰＵ、ＲＡＭ、ＲＯＭ、外部記憶装置間のデータのやり取りが可能なように接続するバスなどを備えている。また必要に応じて、符号化装置に、ＣＤ−ＲＯＭなどの記憶媒体を読み書きできる装置（ドライブ）などを設けるとしてもよい。
【００９１】
符号化装置の外部記憶装置には、符号化を実行するためのプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている〔外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるＲＯＭに記憶させておくなどでもよい。〕。また、これらのプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に記憶される。以下、データやその格納領域のアドレスなどを記憶する記憶装置を単に「記憶部」と呼ぶことにする。符号化装置の記憶部には、符号化を実行するためのプログラムなどが記憶されている。
【００９２】
符号化装置では、記憶部に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭに読み込まれて、ＣＰＵで解釈実行・処理される。この結果、ＣＰＵが所定の機能を実現することで符号化が実現される。
【００９３】
＜補記＞
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。例えば、上記の各実施形態では、消費ビット数が配分ビット数より少ない場合には利得縮小更新部の処理を行い、消費ビット数が配分ビット数と等しい場合に判定部が利得等を出力することとした。しかしながら、消費ビット数が配分ビット数より多くない場合に利得縮小更新部の処理を行ってもよい。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【００９４】
また、上記実施形態において説明したハードウェアエンティティ（符号化装置）における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
【００９５】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体の例は非一時的な（non-transitory）記録媒体である。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【００９６】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００９７】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００９８】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００９９】
１００，１５０，２００，２５０，３００，１０００  符号化装置
【図１】
2013180164.tif 000029
【図２】
2013180164.tif 000030
【図３】
2013180164.tif 000031
【図４】
2013180164.tif 000032
【図５】
2013180164.tif 000033
【図６】
2013180164.tif 000034
【手続補正書】
【提出日】平成26年10月10日(2014.10.10)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００３９
【補正方法】変更
【補正の内容】
【００３９】
ここでは、重み付け包絡正規化処理の具体例として二つの例を示すが、本発明ではこれらの例に限定されるものではない。
＜例１＞
重み付け包絡正規化部１０３は、MDCT係数列の各係数X(1)，・・・，X(N)を当該各係数に対応するパワースペクトル包絡係数列の各係数の補正値Wγ(1)，・・・，Wγ(N)で除算することによって、重み付け正規化MDCT係数列の各係数X(1)/Wγ(1)，・・・，X(N)/Wγ(N)を得る処理を行う。補正値Wγ(n)［1≦n≦N］は式（３）で与えられる。但し、γは１以下の正の定数であり、パワースペクトル係数を鈍らせる定数である。
【数２】
2013180164.tif 000035
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
＜例２＞
重み付け包絡正規化部１０３は、MDCT係数列の各係数X(1)，・・・，X(N)を当該各係数に対応するパワースペクトル包絡係数列の各係数のβ乗（０＜β＜１）の値W(1)β，・・・，W(N)βで除算することによって、重み付け正規化MDCT係数列の各係数X(1)/W(1)β，・・・，X(N)/W(N)βを得る処理を行う。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
＜利得拡大更新部１３１＞
利得拡大更新部１３１は、今回の利得ｇの値よりも大きな値ｇ’＞ｇを新たな利得として設定する。利得拡大更新部１３１は、サンプル数計測部１１８と、利得下限設定部１０８と、第１分岐部１０９と、第１利得更新部１１０と、利得拡大部１１１と、を含む。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００５８
【補正方法】変更
【補正の内容】
【００５８】
＜利得縮小部１１５＞
利得縮小部１１５は、配分ビット数Ｂから消費ビット数ｃを減算して得られる値である余剰ビット数Ｂ−ｃが大きいほど、今回の利得ｇの値から新たな利得ｇの値への減少分が大きくなるようにする。ただし、新たな利得ｇの値も正値である。例えば、新たな利得ｇ←今回の利得ｇ×（１-（B-c)／B×β）とする。ここで、βは予め定めた正の定数とする。すなわち利得縮小部１１５は、配分ビット数Ｂから消費ビット数ｃを減算して得られる値Ｂ−ｃが大きいほど、利得ｇの値を大きく減少させる。その後、量子化部１０５の処理に戻る。言い換えると、利得縮小部１１５は、配分ビット数Ｂから消費ビット数ｃを減算して得られる値Ｂ−ｃが大きいほど、利得ｇの更新前の値から更新後の値への減少分が大きくなるように利得ｇの値を更新し、その後の量子化部１０５の処理を行わせる。
＜切り捨て部１１６＞
切り捨て部１１６は、判定部１０７が出力した消費ビット数ｃが配分ビット数Ｂより多い場合には、判定部１０７が出力した整数信号符号のうち、消費ビット数ｃが配分ビット数Ｂを上回る分だけの符号を、高い周波数側の量子化正規化済係数に対応する符号から取り除いたものを、新たな整数信号符号として出力する。すなわち切り捨て部１１６は、消費ビット数ｃの配分ビット数Ｂに対する上回り分ｃ−Ｂに対応する高い周波数側の量子化正規化済係数に対応する符号（切り捨て符号）を整数信号符号（サンプル列符号）から取り除くことで得られる、残りの符号（切り捨て済サンプル列符号）を、新たな整数信号符号として出力する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００６４
【補正方法】変更
【補正の内容】
【００６４】
＜利得拡大部１５１＞
利得拡大部１５１は、第１実施形態の利得拡大部１１１におけるサンプル数計測部１１８が出力したサンプル数ｔの代わりに、サンプル数計測部１６８が出力したサンプル数ｔを用いる点を除いては同じである。
すなわち、利得拡大部１５１は、最も低い周波数側にある量子化正規化済係数から値が０ではない最も高い周波数側にある量子化正規化済係数までのサンプル数ｓから、サンプル数計測部１１８が出力したサンプル数ｔを減算して得られる値u＝ｓ−ｔ、が大きいほど、今回の利得から新たな利得への増分が大きくなるようにする。例えば、新たな利得ｇ←今回の利得ｇ×（１＋u／N×α）とする。ここで、αは予め定めた正の定数とする。
または、利得拡大部１５１は、符号化対象のすべてのサンプル数Ｎから、サンプル数計測部１１８が出力したサンプル数ｔを減算して得られるｖ＝Ｎ−ｔが大きいほど、今回の利得から新たな利得への増分が大きくなるようにする。たとえば、新たな利得ｇ←今回の利得ｇ×（１＋ｖ／Ｎ×α）とする。
すなわち利得拡大部１５１は、量子化正規化済サンプル列の一部または全てのサンプル数から、上記の対応する符号が取り除かれなかった量子化正規化済係数のサンプル数、を減算して得られる値が大きいほど、利得ｇの値を大きく増加させる。その後、量子化部１０５の処理に戻る。言い換えると、利得拡大部１５１は、量子化正規化済サンプル列の一部または全てのサンプル数から、上記の切り捨て符号の対象となる高い周波数側の量子化正規化済係数を量子化部１０５が出力した量子化正規化済係数系列XQ(1)，・・・，XQ(N)から取り除いた残りの量子化正規化済係数のサンプル数ｔ、を減算して得られる値が大きいほど、利得の更新前の値から更新後の値への増分が大きくなるように利得の値を更新し、その後の量子化部１０５の処理を行わせる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００７５
【補正方法】変更
【補正の内容】
【００７５】
［第３実施形態］
＜符号化装置３００＞
図６を参照して第３実施形態の符号化装置３００が行う符号化処理を説明する。第３実施形態の符号化装置３００が第１実施形態の符号化装置１００と異なるのは、利得下限設定部１０８、第１利得更新部１１０、利得上限設定部１１２、および第２利得更新部１１４に代えて、利得下限設定部３０８、第１利得更新部３１０、利得上限設定部３１２、第２利得更新部３１４、および消費ビット数記憶部３２０を備える点である。利得拡大更新部３３１は、利得拡大更新部１３１の利得下限設定部１０８、第１利得更新部１１０に代えて、利得下限設定部３０８、第１利得更新部３１０を備える。利得縮小更新部３３２は、利得縮小更新部１３２の利得上限設定部１１２、第２利得更新部１１４に代えて、利得上限設定部３１２、第２利得更新部３１４を備える。利得更新ループ処理部３３０は、利得更新ループ処理部１３０の利得拡大更新部１３１と利得縮小更新部１３２に代えて、利得拡大更新部３３１と利得縮小更新部３３２を備える。以下、第１実施形態との差分についてのみ説明する。
【手続補正７】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項２
【補正方法】変更
【補正の内容】
【請求項２】
所定の区間の入力音響信号に由来するサンプル列について、利得をループ処理により求める利得更新ループ処理ステップにより得られた利得に対応する利得符号と、上記サンプル列の各サンプルを上記利得で除算して得られる整数値サンプルによる列を符号化して得られる整数信号符号とを得る符号化方法であって、
上記利得更新ループ処理ステップは、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、所定の配分ビット数Ｂより多い場合に、上記更新前の利得を利得の下限値ｇｍｉｎとして設定し、上記ビット数または推定ビット数を下限設定時消費ビット数ｃＬとして設定する利得下限値設定ステップと、
上記サンプル列の各サンプルを更新前の利得で除算して得られる整数値サンプルによる列を符号化して得られる符号のビット数または推定ビット数が、上記所定の配分ビット数Ｂより少ない場合に、上記更新前の利得を利得の上限値ｇｍａｘとして設定し、上記ビット数または推定ビット数を上限設定時消費ビット数ｃＵとして設定する利得上限値設定ステップと、
上記配分ビット数Ｂと下限設定時消費ビット数ｃＬと上限設定時消費ビット数ｃＵとに少なくとも基づく重みを、利得の上限値ｇｍａｘと利得の下限値ｇｍｉｎとの少なくとも何れかに与えた、利得の上限値と利得の下限値の重み付き平均を更新後の利得とする利得更新ステップと、
を含む符号化方法。
【手続補正８】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項２４
【補正方法】変更
【補正の内容】
【請求項２４】
請求項１７または１８の符号化装置であって、
上記利得上限値設定部は、上記消費ビット数が上記配分ビット数よりも少ない場合に、さらに上記消費ビット数を上限設定時消費ビット数として設定し、
上記利得拡大更新部は、
上記消費ビット数が上記配分ビット数よりも多く、なおかつ、上記利得の上限値が既に設定されている場合に、上記配分ビット数、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第１利得更新部
をさらに含み、
上記利得縮小更新部は、
上記消費ビット数が上記配分ビット数よりも少なく、なおかつ、上記利得の下限値が既に設定されている場合に、上記配分ビット数、上記切り捨て符号に対応する量子化正規化済サンプルのサンプル数、および上記上限設定時消費ビット数を用い、上記利得の下限値と上記利得の上限値のうちもっともらしいほうに大きな重みを与えた、上記利得の下限値と上記利得の上限値との重みつき平均を、上記利得の新たな値とする第２利得更新部
をさらに含む符号化装置。
【国際調査報告】
2013180164.tif 000036
2013180164.tif 000037
2013180164.tif 000038
2013180164.tif 000039