(57)【特許請求の範囲】
【請求項１】
オーディオ信号の現在のデータフレームのスペクトル係数をサブバンドに分割するステップと、
前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドの量子化周波数エンベロープ値を取得するステップと、
前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドのうちの第1の数量のサブバンドの修正因子に従って、前記第1の数量のサブバンドの量子化周波数エンベロープ値を修正するステップであって、前記第1の数量のサブバンドの前記修正因子は、前記第1の数量のサブバンドの信号タイプと前記現在のデータフレームの前回のデータフレーム中の第2の数量のサブバンドの参照情報とに従って決定され、前記第2の数量は、前記第1の数量以下である、ステップと、
前記第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従って、前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドに量子化ビットを割り振るステップと、
前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化するステップと、
前記量子化ビットが割り振られているサブバンドの前記量子化されたスペクトル係数をビットストリームに書き込むステップとを含む、符号化方法。
【請求項２】
第1のサブバンドの信号タイプが高調波である場合には、前記第1のサブバンドの修正因子が1より大きい、または、
第1のサブバンドの信号タイプが非高調波である場合には、前記第1のサブバンドの修正因子が1以下であり、
前記第1のサブバンドは、前記第1の数量のサブバンドのうちのサブバンドのいずれかである、請求項1に記載の符号化方法。
【請求項３】
前記第1の数量のサブバンドの前記修正因子を決定することとは、
第2のサブバンドの前記信号タイプに従って前記第2のサブバンドの第1の修正因子を決定することであって、前記第2のサブバンドは、前記第1の数量のサブバンドのうちのサブバンドのいずれかである、決定をし、
前記第2の数量のサブバンドのうちの、前記第2のサブバンドに対応する、第3のサブバンドの参照情報に従って、前記第2のサブバンドの第2の修正因子を決定し、
前記第2のサブバンドの前記修正因子として前記第1の修正因子と前記第2の修正因子との積を計算することである、請求項1または2に記載の符号化方法。
【請求項４】
前記第3のサブバンドの前記参照情報が前記第3のサブバンドの量子化ビット割り振り状態を含む場合には、前記第2の修正因子の値は第1の値である、または、
前記第3のサブバンドの前記参照情報が前記第3のサブバンドの信号タイプを含む場合には、前記第2の修正因子の値は第2の値である、または、
前記第3のサブバンドの前記参照情報が前記第3のサブバンドの量子化ビット割り振り状態および前記第3のサブバンドの信号タイプを含む場合には、前記第2の修正因子の値は前記第1の値と前記第2の値との積である、請求項3に記載の符号化方法。
【請求項５】
前記第3のサブバンドの前記量子化ビット割り振り状態が、スペクトル係数が符号化されていないことを示している場合には、前記第1の値は1未満である、または、前記第3のサブバンドの前記量子化ビット割り振り状態が、スペクトル係数が符号化されていることを示している場合には、前記第1の値は1より大きい、または、
前記第3のサブバンドの前記信号タイプが高調波である場合には、前記第2の値は1より大きい、または、前記第3のサブバンドの前記信号タイプが非高調波である場合には、前記第2の値は1以下である、請求項4に記載の符号化方法。
【請求項６】
前記第2のサブバンドの前記第2の修正因子は、前記第3のサブバンドの周波数エンベロープ値の任意の2つの値の比、前記第2の数量のサブバンドの平均周波数エンベロープ値、前記第2の数量のサブバンドの帯域幅値、前記第2の数量のサブバンドの周波数エンベロープ値の最大値、および前記第2の数量のサブバンドの周波数エンベロープ分散値に従って決定される、請求項4または5に記載の符号化方法。
【請求項７】
前記第2のサブバンドの前記第1の修正因子は、前記第2のサブバンドの周波数エンベロープ値の任意の2つの値の比、前記第1の数量のサブバンドの平均周波数エンベロープ値、前記第1の数量のサブバンドの帯域幅値、前記第1の数量のサブバンドの周波数エンベロープ値の最大値、および前記第1の数量のサブバンドの周波数エンベロープ分散値に従って決定される、請求項3から5のいずれか一項に記載の符号化方法。
【請求項８】
前記方法は、
前記現在のデータフレーム中の前記第1の数量のサブバンドの参照情報を記憶するステップをさらに含む、請求項1から7のいずれか一項に記載の符号化方法。
【請求項９】
オーディオ信号の現在のデータフレームのスペクトル係数をサブバンドに分割して、前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドの量子化周波数エンベロープ値を取得するように構成される、取得ユニットと、
前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドのうちの第1の数量のサブバンドの修正因子に従って、前記第1の数量のサブバンドの量子化周波数エンベロープ値を修正するように構成される、修正ユニットであって、前記第1の数量のサブバンドの前記修正因子は、前記第1の数量のサブバンドの信号タイプと前記現在のデータフレームの前回のデータフレーム中の第2の数量のサブバンドの参照情報とに従って決定され、前記第2の数量は、前記第1の数量以下である、修正ユニットと、
前記第1の数量のサブバンドのうちの修正された量子化周波数エンベロープ値に従って、前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドに量子化ビットを割り振るように構成される、割り振りユニットと、
前記現在のデータフレームの前記スペクトル係数を分割することによって得られる前記サブバンドのうちの前記割り振りユニットによって量子化ビットが割り振られているサブバンドのスペクトル係数を量子化するように構成される、量子化ユニットと、
前記量子化ビットが割り振られているサブバンドの、前記量子化ユニットによって量子化された、前記スペクトル係数をビットストリームに書き込むように構成される、多重化ユニットとを備える、符号化装置。
【請求項１０】
第1のサブバンドの信号タイプが高調波である場合には、前記第1のサブバンドの修正因子は1より大きい、または、
第1のサブバンドの信号タイプが非高調波である場合には、前記第1のサブバンドの修正因子は1以下であり、
前記第1のサブバンドは、前記第1の数量のサブバンドのうちのサブバンドのいずれかである、請求項9に記載の符号化装置。
【請求項１１】
前記符号化装置は、決定ユニットをさらに備え、
前記決定ユニットは、第2のサブバンドの前記信号タイプに従って前記第2のサブバンドの第1の修正因子を決定することであって、前記第2のサブバンドは、前記第1の数量のサブバンドのうちのサブバンドのいずれかである、決定をし、前記第2の数量のサブバンドのうちの、前記第2のサブバンドに対応する、第3のサブバンドの参照情報に従って、前記第2のサブバンドの第2の修正因子を決定し、前記第2のサブバンドの前記修正因子として前記第1の修正因子と前記第2の修正因子との積を計算するようにさらに構成される、請求項9または10に記載の符号化装置。
【請求項１２】
前記第3のサブバンドの前記参照情報が前記第3のサブバンドの量子化ビット割り振り状態を含む場合には、前記決定ユニットによって決定された前記第2の修正因子の値は第1の値である、または、
前記第3のサブバンドの前記参照情報が前記第3のサブバンドの信号タイプを含む場合には、前記第2の修正因子の値は第2の値である、または、
前記第3のサブバンドの前記参照情報が前記第3のサブバンドの量子化ビット割り振り状態および前記第3のサブバンドの信号タイプを含む場合には、前記第2の修正因子の値は前記第1の値と前記第2の値との積である、請求項11に記載の符号化装置。
【請求項１３】
前記決定ユニットは、前記第3のサブバンドの前記量子化ビット割り振り状態が、スペクトル係数が符号化されていないことを示している場合には、前記第1の値が1未満であると決定する、または、前記第3のサブバンドの前記量子化ビット割り振り状態が、スペクトル係数が符号化されていることを示している場合には、前記第1の値が1より大きいと決定する、または、
前記取得ユニットによって取得された前記第3のサブバンドの前記信号タイプが高調波である場合には、前記第2の値が1より大きいと決定する、または、前記取得ユニットによって取得された前記第3のサブバンドの前記信号タイプが非高調波である場合には、前記第2の値が1以下であると決定するようにさらに構成される、請求項12に記載の符号化装置。
【請求項１４】
前記決定ユニットによって決定された前記第2のサブバンドの前記第2の修正因子は、前記第3のサブバンドの周波数エンベロープ値の任意の2つの値の比、前記第2の数量のサブバンドの平均周波数エンベロープ値、前記第2の数量のサブバンドの帯域幅値、前記第2の数量のサブバンドの周波数エンベロープ値の最大値、および前記第2の数量のサブバンドの周波数エンベロープ分散値に従って決定される、請求項12または13に記載の符号化装置。
【請求項１５】
前記決定ユニットによって決定された前記第2のサブバンドの前記第1の修正因子は、前記第2のサブバンドの周波数エンベロープ値の任意の2つの値の比、前記第1の数量のサブバンドの平均周波数エンベロープ値、前記第1の数量のサブバンドの帯域幅値、前記第1の数量のサブバンドの周波数エンベロープ値の最大値、および前記第1の数量のサブバンドの周波数エンベロープ分散値に従って決定される、請求項11から13のいずれか一項に記載の符号化装置。
【請求項１６】
前記量子化ビットを前記第1の数量のサブバンドの前記修正された量子化周波数エンベロープ値に従って前記サブバンドに割り振った後に、前記現在のデータフレーム中の前記第1の数量のサブバンドの参照情報を記憶するように構成される、記憶ユニットをさらに備える、請求項9から15のいずれか一項に記載の符号化装置。
【請求項１７】
記録されたプログラムを有するコンピュータ可読記憶媒体であって、前記プログラムは、請求項1から8のいずれか一項に記載の方法をコンピュータに実行させる、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、その全体が参照により本明細書に組み込まれている、2013年12月2日に中国特許庁に出願し、「ENCODING METHOD AND APPARATUS」と題する、中国特許出願第201310635004.2号に対する優先権を主張する。
【０００２】
本発明は、通信分野に関し、詳細には、符号化方法および装置に関する。
【背景技術】
【０００３】
オーディオ圧縮技術は、デジタルオーディオ放送、ならびにインターネット上の音楽配信およびオーディオ通信などのマルチメディアアプリケーション技術の核心部である。変換符号化は、オーディオ圧縮技術において一般的に使用される方法である。変換符号化において、オーディオデータは、あるデータドメインから別のデータドメインへと変換され、その結果、オーディオデータ中の大量の情報をより少ないデータを使用して表現することができ、このことが、オーディオデータを量子化することを支援して、効率的な圧縮符号化という目的を達成している。
【０００４】
既存の変換符号化アルゴリズムによれば、エンコーダは、オーディオ信号を時間領域から周波数領域へと変換(時間-周波数変換)してオーディオ信号のスペクトル係数を得て、スペクトル係数をサブバンドに分割し、サブバンドの周波数エンベロープを計算および量子化してサブバンドの量子化周波数エンベロープのインデックス値およびサブバンドの量子化周波数エンベロープの値を得て、その後、サブバンドの量子化周波数エンベロープの値および利用可能なビットの数量に従ってサブバンドのスペクトル係数に対するビット割り振りを個々に行い、サブバンドの量子化周波数エンベロープの値およびサブバンドのスペクトル係数に割り振られているビットの数量に従ってサブバンドのスペクトル係数を量子化し、最後に、サブバンドの量子化周波数エンベロープのインデックス値およびサブバンドの量子化されたスペクトル係数をビットストリームに書き込み、デコーダをビットストリームに送信する。
【０００５】
しかしながら、従来技術においてビット割り振りをサブバンドのスペクトル係数に対して行う場合には、量子化ビット割り振りが、サブバンドの量子化周波数エンベロープの値に従ってサブバンドのスペクトル係数に対して行われており、このことが、いくつかのサブバンドのスペクトル係数に対する不適切な量子化ビット割り振りを引き起こし、復号によりデコーダによって得られる信号の品質の低下を引き起こす場合がある。
【発明の概要】
【課題を解決するための手段】
【０００６】
本発明の実施形態は、オーディオ信号のスペクトル係数に対する適切な量子化ビット割り振りを行うことを可能としており、それによって、復号によりデコーダによって得られる信号の品質を改善している、符号化方法および装置を提供している。
【０００７】
前述の目的を達成するために、以下の技術的解決手法を本発明の実施形態において使用している。
【０００８】
第1の態様によれば、本発明の実施形態は、符号化方法を提供しており、符号化方法は、
現在のデータフレームのスペクトル係数をサブバンドに分割した後に、サブバンドの量子化周波数エンベロープ値を取得するステップと、
サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正するステップと、
第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振るステップと、
サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化するステップと、
量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込むステップとを含む。
【０００９】
第1の態様の第1の可能な実施様態においては、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正するステップは、
第1の数量のサブバンドの修正因子を取得するステップと、
第1の数量のサブバンドの修正因子を使用して第1の数量のサブバンドの量子化周波数エンベロープ値を修正するステップとを含む。
【００１０】
第1の態様の第1の可能な実施様態に準拠している、第2の可能な実施様態においては、第1の数量のサブバンドの修正因子を取得するステップは、
第1の数量のサブバンドの信号タイプを取得するステップと、
第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定するステップとを含む。
【００１１】
第1の態様の第2の可能な実施様態に準拠している、第3の可能な実施様態においては、第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定するステップについての方法は、
第1の数量のサブバンドのうちの第1のサブバンドの信号タイプが高調波である場合には、第1のサブバンドの修正因子が1より大きいと決定するステップを含む、または、
第1の数量のサブバンドのうちの第1のサブバンドの信号タイプが非高調波である場合には、第1のサブバンドの修正因子が1以下であると決定するステップを含む。
【００１２】
第1の態様の第2の可能な実施様態または第3の可能な実施様態に準拠している、第4の可能な実施様態においては、第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定するステップの前に、方法は、
現在のデータフレームの前回のデータフレーム中の第2の数量のサブバンドについての記憶されている参照情報を取得するステップであって、第2の数量は第1の数量以下である、ステップをさらに含み、
第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定するステップは、
第1の数量のサブバンドの信号タイプおよび第2の数量のサブバンドの参照情報に従って第1の数量のサブバンドの修正因子を決定するステップを特に含む。
【００１３】
第1の態様の第4の可能な実施様態に準拠している、第5の可能な実施様態においては、第1の数量のサブバンドの信号タイプおよび第2の数量のサブバンドの参照情報に従って第1の数量のサブバンドの修正因子を決定するステップについての方法は、
第1の数量のサブバンドのうちの第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定するステップと、
第2の数量のサブバンドのうちの、第1のサブバンドに対応する、第2のサブバンドの参照情報に従って、第1のサブバンドの第2の修正因子を決定するステップと、
第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するステップとを含む。
【００１４】
第1の態様の第5の可能な実施様態に準拠している、第6の可能な実施様態においては、
第2のサブバンドの参照情報は、第2のサブバンドの量子化ビット割り振り状態および/または第2のサブバンドの信号タイプを含み、
第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態を含む場合には、第2の修正因子は第3の修正因子である、または、
第2のサブバンドの参照情報が第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第4の修正因子である、または、
第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態および第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第3の修正因子と第4の修正因子との積である。
【００１５】
第1の態様の第6の可能な実施様態に準拠している、第7の可能な実施様態においては、
第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていないことを示している場合には、第3の修正因子が1未満であると決定される、または、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていることを示している場合には、第3の修正因子が1より大きいと決定され、
第2のサブバンドの信号タイプが高調波である場合には、第4の修正因子が1より大きいと決定される、または、第2のサブバンドの信号タイプが非高調波である場合には、第4の修正因子が1以下であると決定される。
【００１６】
第1の態様の第6の可能な実施様態または第7の可能な実施様態に準拠している、第8の可能な実施様態においては、第1のサブバンドの第2の修正因子は、第2のサブバンドの周波数エンベロープ値の任意の2つの値の比、第2の数量のサブバンドの平均周波数エンベロープ値、第2の数量のサブバンドの帯域幅値、第2の数量のサブバンドの周波数エンベロープ値の最大値、および第2の数量のサブバンドの周波数エンベロープ分散値に従って決定される。
【００１７】
第1の態様の第5の可能な実施様態から第7の可能な実施様態のうちのいずれか1つに準拠している、第9の可能な実施様態においては、第1のサブバンドの第1の修正因子は、第1のサブバンドの周波数エンベロープ値の任意の2つの値の比、第1の数量のサブバンドの平均周波数エンベロープ値、第1の数量のサブバンドの帯域幅値、第1の数量のサブバンドの周波数エンベロープ値の最大値、および第1の数量のサブバンドの周波数エンベロープ分散値に従って決定される。
【００１８】
第1の態様の第1の可能な実施様態に準拠している、第10の可能な実施様態においては、第1の数量のサブバンドの修正因子を取得するステップは、
現在のデータフレームの前回のデータフレーム中の第1の数量のサブバンドについての記憶されている参照情報を取得するステップと、
前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップとを含む。
【００１９】
第1の態様の第10の可能な実施様態に準拠している、第11の可能な実施様態においては、前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップの前に、方法は、
現在のデータフレーム中のサブバンドのうちの第3の数量のサブバンドの信号タイプを取得するステップであって、第3の数量は第1の数量以下である、ステップをさらに含み、
前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップは、
前回のデータフレーム中の第1の数量のサブバンドの参照情報および第3の数量のサブバンドの信号タイプに従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップを特に含む。
【００２０】
第1の態様の第11の可能な実施様態に準拠している、第12の可能な実施様態においては、前回のデータフレーム中の第1の数量のサブバンドの参照情報および第3の数量のサブバンドの信号タイプに従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップについての方法は、
前回のデータフレーム中の第1の数量のサブバンドのうちの第2のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドのうちの第1のサブバンドの第2の修正因子を決定するステップと、
第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定するステップと、
第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するステップとを含む。
【００２１】
第1の態様または第1の態様の第1の可能な実施様態から第12の可能な実施様態のうちのいずれか1つに準拠している、第13の可能な実施様態においては、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振るステップの後に、方法は、
第1の数量のサブバンドの参照情報を記憶するステップをさらに含む。
【００２２】
第2の態様によれば、本発明の実施形態は、符号化装置を提供しており、符号化装置は、
現在のデータフレームのスペクトル係数をサブバンドに分割した後に、サブバンドの量子化周波数エンベロープ値を取得するように構成される、取得ユニットと、
サブバンドのうちの第1の数量のサブバンドの、取得ユニットによって取得された、量子化周波数エンベロープ値を修正するように構成される、修正ユニットと、
第1の数量のサブバンドのうちの、修正ユニットによって修正された、量子化周波数エンベロープ値に従って、サブバンドに量子化ビットを割り振るように構成される、割り振りユニットと、
サブバンドのうちの割り振りユニットによって量子化ビットが割り振られているサブバンドのスペクトル係数を量子化するように構成される、量子化ユニットと、
量子化ビットが割り振られているサブバンドの、量子化ユニットによって量子化された、スペクトル係数をビットストリームに書き込むように構成される、多重化ユニットとを備える。
【００２３】
第2の態様の第1の可能な実施様態においては、
取得ユニットは、第1の数量のサブバンドの修正因子を取得するようにさらに構成され、
修正ユニットは、取得ユニットによって取得された第1の数量のサブバンドの修正因子を使用して、第1の数量のサブバンドの、取得ユニットによって取得された、量子化周波数エンベロープ値を修正するようにさらに構成される。
【００２４】
第2の態様の第1の可能な実施様態に準拠している、第2の可能な実施様態においては、符号化装置は、決定ユニットをさらに備え、
取得ユニットは、第1の数量のサブバンドの信号タイプを取得するようにさらに構成され、
決定ユニットは、取得ユニットによって取得された第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定するように構成される。
【００２５】
第2の態様の第2の可能な実施様態に準拠している、第3の可能な実施様態においては、
決定ユニットは、第1の数量のサブバンドのうちの第1のサブバンドの、取得ユニットによって取得された、信号タイプが高調波である場合には、第1のサブバンドの修正因子が1より大きいと決定する、または、第1の数量のサブバンドのうちの第1のサブバンドの、取得ユニットによって取得された、信号タイプが非高調波である場合には、第1のサブバンドの修正因子が1以下であると決定するようにさらに構成される。
【００２６】
第2の態様の第2の可能な実施様態または第3の可能な実施様態に準拠している、第4の可能な実施様態においては、
取得ユニットは、第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定する前に、現在のデータフレームの前回のデータフレーム中の第2の数量のサブバンドについての記憶されている参照情報を取得するようにさらに構成され、第2の数量は、第1の数量以下であり、
決定ユニットは、取得ユニットによって取得された第1の数量のサブバンドの信号タイプおよび第2の数量のサブバンドの参照情報に従って第1の数量のサブバンドの修正因子を決定するように特に構成される。
【００２７】
第2の態様の第4の可能な実施様態に準拠している、第5の可能な実施様態においては、
決定ユニットは、第1の数量のサブバンドのうちの第1のサブバンドの、取得ユニットによって取得された、信号タイプに従って第1のサブバンドの第1の修正因子を決定し、第2の数量のサブバンドのうちの、第1のサブバンドに対応する、第2のサブバンドの、取得ユニットによって取得された、参照情報に従って、第1のサブバンドの第2の修正因子を決定し、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するようにさらに構成される。
【００２８】
第2の態様の第5の可能な実施様態に準拠している、第6の可能な実施様態においては、
取得ユニットによって取得された第2のサブバンドの参照情報は、第2のサブバンドの量子化ビット割り振り状態および/または第2のサブバンドの信号タイプを含み、
第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態を含む場合には、決定ユニットによって決定された第2の修正因子は第3の修正因子である、または、
第2のサブバンドの参照情報が第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第4の修正因子である、または、
第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態および第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第3の修正因子と第4の修正因子との積である。
【００２９】
第2の態様の第6の可能な実施様態に準拠している、第7の可能な実施様態においては、
決定ユニットは、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていないことを示している場合には、第3の修正因子が1未満であると決定する、または、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていることを示している場合には、第3の修正因子が1より大きいと決定するようにさらに構成され、取得ユニットによって取得された第2のサブバンドの信号タイプが高調波である場合には、第4の修正因子が1より大きいと決定する、または、取得ユニットによって取得された第2のサブバンドの信号タイプが非高調波である場合には、第4の修正因子が1以下であると決定するようにさらに構成される。
【００３０】
第2の態様の第6の可能な実施様態または第7の可能な実施様態に準拠している、第8の可能な実施様態においては、決定ユニットによって決定された第1のサブバンドの第2の修正因子は、第2のサブバンドの周波数エンベロープ値の任意の2つの値の比、第2の数量のサブバンドの平均周波数エンベロープ値、第2の数量のサブバンドの帯域幅値、第2の数量のサブバンドの周波数エンベロープ値の最大値、および第2の数量のサブバンドの周波数エンベロープ分散値に従って決定される。
【００３１】
第2の態様の第5の可能な実施様態から第7の可能な実施様態に準拠している、第9の可能な実施様態においては、決定ユニットによって決定された第1のサブバンドの第1の修正因子は、第1のサブバンドの周波数エンベロープ値の任意の2つの値の比、第1の数量のサブバンドの平均周波数エンベロープ値、第1の数量のサブバンドの帯域幅値、第1の数量のサブバンドの周波数エンベロープ値の最大値、および第1の数量のサブバンドの周波数エンベロープ分散値に従って決定される。
【００３２】
第2の態様の第1の可能な実施様態に準拠している、第10の可能な実施様態においては、
取得ユニットは、現在のデータフレームの前回のデータフレーム中の第1の数量のサブバンドの、記憶ユニットに記憶されている、参照情報を取得するようにさらに構成され、
決定ユニットは、前回のデータフレーム中の第1の数量のサブバンドの、取得ユニットによって取得された、参照情報に従って、現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するようにさらに構成される。
【００３３】
第2の態様の第10の可能な実施様態に準拠している、第11の可能な実施様態においては、
取得ユニットは、前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定する前に、現在のデータフレーム中のサブバンドのうちの第3の数量のサブバンドの信号タイプを取得するようにさらに構成され、第3の数量は、第1の数量以下であり、
決定ユニットは、取得ユニットによって取得された前回のデータフレーム中の第1の数量のサブバンドの参照情報および第3の数量のサブバンドの信号タイプに従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するように特に構成される。
【００３４】
第2の態様の第11の可能な実施様態に準拠している、第12の可能な実施様態においては、
決定ユニットは、前回のデータフレーム中の第1の数量のサブバンドのうちの第2のサブバンドの、取得ユニットによって取得された、参照情報に従って、現在のデータフレーム中の第1の数量のサブバンドのうちの第1のサブバンドの第2の修正因子を決定し、取得ユニットによって取得された第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定し、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するようにさらに構成される。
【００３５】
第2の態様または第2の態様の第1の可能な実施様態から第12の可能な実施様態のうちのいずれか1つに準拠している、第13の可能な実施様態においては、
記憶ユニットは、量子化ビットを第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに割り振った後に、第1の数量のサブバンドの参照情報を記憶するようにさらに構成される。
【００３６】
本発明の実施形態において提供した符号化方法および装置によれば、現在のデータフレームのスペクトル係数をサブバンドに分割した後に、エンコーダは、サブバンドの量子化周波数エンベロープ値を取得し、エンコーダは、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正し、エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振り、エンコーダは、サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化し、最後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む。本解決手法によれば、量子化ビット割り振りをオーディオ信号の現在のデータフレーム中のサブバンドのスペクトル係数に対して行う前に、現在のデータフレーム中のサブバンドの量子化周波数エンベロープ値を現在のデータフレームの信号タイプおよび前回のデータフレームに関する情報に従って修正することができる、したがって、サブバンドの修正された量子化周波数エンベロープ値および利用可能なビットの数量に従ってサブバンドのスペクトル係数に対する量子化ビット割り振りを行うことが、オーディオ信号のスペクトル係数に対する適切な量子化ビット割り振りという目的を達成することを可能としており、それによって、復号によりデコーダによって得られる信号の品質を改善している。
【００３７】
本発明の実施形態における技術的解決手法をより明確に記載するために、実施形態を記載するために必要となる添付の図面を以下に簡単に紹介する。以下の記載における添付の図面は本発明の一部の実施形態を示しているにすぎず、当業者が創造的努力なしにこれらの添付の図面から他の図面をさらに導出し得ることは明らかであろう。
【図面の簡単な説明】
【００３８】
【図１】本発明の実施形態による、符号化方法の第1のフローチャートである。
【図２】本発明の実施形態による、符号化方法の第2のフローチャートである。
【図３】本発明の実施形態による、符号化方法におけるオーディオ信号のスペクトル図である。
【図４】本発明の実施形態による、符号化装置の第1の概略構造図である。
【図５】本発明の実施形態による、符号化装置の第2の概略構造図である。
【図６】本発明の実施形態による、符号化装置の第3の概略構造図である。
【図７】本発明の実施形態による、エンコーダの概略構造図である。
【発明を実施するための形態】
【００３９】
本発明の実施形態における添付の図面を参照して、本発明の実施形態における技術的解決手法を以下に明確に記載する。記載した実施形態が本発明の実施形態のすべてではなく一部にすぎないことは明らかであろう。創造的努力なしに本発明の実施形態に基づいて当業者によって得られる他の実施形態のすべては、本発明の保護範囲に含まれるものとする。
【００４０】
実施形態1
本発明の本実施形態は、符号化方法を提供している。図1に示したように、方法は、以下のステップを含み得る。
【００４１】
S101. エンコーダが現在のデータフレームのスペクトル係数をサブバンドに分割した後に、エンコーダは、サブバンドの量子化周波数エンベロープ値を取得する。
【００４２】
エンコーダ(encoder)は、データまたは信号(例えば、ビットストリーム)を符号化して、データまたは信号を、通信、伝送、および記憶のために使用され得る信号に変換するデバイスである。エンコーダは、異なる技術分野においては異なる分類を有する。通信技術の分野においては、エンコーダは、ビデオエンコーダ、オーディオエンコーダなどを含み得る。
【００４３】
本発明の本実施形態において提供したエンコーダは、オーディオエンコーダであり得る。オーディオエンコーダは、アナログオーディオ信号をデータ符号化ファイルに圧縮し得るツール、すなわち、オーディオ圧縮符号化ツールである。オーディオ圧縮符号化は、音声信号圧縮符号化および広帯域オーディオ信号圧縮符号化に分類され得る。音声信号圧縮符号化は、デジタル電話通信において主に使用されている。広帯域オーディオ信号圧縮符号化は、デジタルオーディオ放送、VCD(Video Compact Disc、ビデオコンパクトディスク)、デジタル多用途ディスク(Digital Versatile Disc、DVD)、および高精細度テレビジョン(High Definition Television、HDTV)におけるサウンドに主に適用されている。
【００４４】
オーディオ信号はデータフレーム形式でフレーム毎にエンコーダに送信されてもよいことに留意されたい。データフレームは、データリンクレイヤにおけるプロトコルデータユニットであり、データフレームは、フレームヘッダ、データ部、およびフレームトレーラを含み得る。フレームヘッダおよびフレームトレーラは、同期情報、アドレス情報、およびエラー制御情報などの必要な制御情報を含む。データ部は、ネットワークレイヤから送信されるデータ、例えば、IP(Internet Protocol、インターネットプロトコル)パケットを含む。
【００４５】
エンコーダは、現在のデータフレームのスペクトル係数をサブバンドにまず分割し、その後、サブバンドの量子化周波数エンベロープ値を取得する。
【００４６】
一例として、本発明の本実施形態において提供した符号化方法においては、現在のデータフレームが第yのデータフレームであると仮定すると、現在のデータフレーム、すなわち、第yのデータフレームのスペクトル係数をN個のサブバンドに分割した後に、エンコーダは、N個のサブバンドの量子化周波数エンベロープ値を個々に取得する、ここで、N≧1であり、y≧1である。エンコーダは、第yのデータフレーム中のN個のサブバンドの周波数エンベロープを計算することによって第yのデータフレーム中のN個のサブバンドの周波数エンベロープ値を得て、その後、エンコーダは、周波数エンベロープ値を量子化して第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープのインデックス値を得て、第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープ値を得るために、量子化周波数エンベロープのインデックス値に従って第yのデータフレーム中のN個のサブバンドの周波数エンベロープを再生成する。
【００４７】
量子化は、スカラー量子化およびベクトル量子化を含んでいてもよい。ベクトル量子化は、大きな圧縮比、容易な復号、および小さな歪みなどの利点を有する効率的なデータ圧縮技術である。ベクトル量子化技術は、画像圧縮および音声符号化において広く使用されている。
【００４８】
必要に応じて、ベクトル量子化は、ピラミッド格子ベクトル量子化(pyramid lattice vector quantization)、球面格子ベクトル量子化(spherical lattice vector quantization)などを含んでいてもよい。
【００４９】
S102. エンコーダは、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正する。
【００５０】
エンコーダがサブバンドの量子化周波数エンベロープ値を取得した後に、エンコーダは、第1の数量のサブバンドの量子化周波数エンベロープ値を修正する、ここで、第1の数量のサブバンドは、サブバンドのうちのいくつかのサブバンドであってもよい。
【００５１】
本発明の本実施形態において提供した符号化方法においては、エンコーダは、送信されたオーディオ信号の各データフレームを同一の数量のサブバンドに分割する、すなわち、現在のデータフレームと前回のデータフレームとは、同一の数量のサブバンドを含む。
【００５２】
具体的には、エンコーダが現在のデータフレーム中のサブバンドの量子化周波数エンベロープ値を得た後に、エンコーダは、現在のデータフレーム中のサブバンドの信号タイプおよび前回のデータフレーム中のサブバンドの参照情報、または現在のデータフレーム中のサブバンドの信号タイプ、または前回のデータフレーム中のサブバンドの参照情報に従って、現在のデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正してもよい。本発明の本実施形態においては、現在のデータフレームは、前回のデータフレームに隣接している。
【００５３】
例えば、各フレームにおけるサブバンドの数量がNであると仮定すると、エンコーダは、現在のデータフレーム中のM個のサブバンドの信号タイプおよび/または前回のデータフレーム中のL個のサブバンドの参照情報に従って、現在のデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正してもよい。第1の数量の値は、MとLとのうちのより大きい方の値である、ここで、1≦M≦Nであり、1≦L≦Nである。本発明の本実施形態においては、現在のデータフレーム中のM個のサブバンドの信号タイプは、M個のサブバンドのうちの各サブバンドの信号タイプを含み、前回のデータフレーム中のL個のサブバンドの参照情報は、L個のサブバンドのうちの各サブバンドの参照情報を含む。
【００５４】
具体的なデータフレーム分割方法および具体的な修正様式を以降の実施形態に詳細に記載する。
【００５５】
必要に応じて、サブバンドの信号タイプは、高調波または非高調波であってもよい。
【００５６】
エンコーダが、現在のデータフレーム中のサブバンドの信号タイプおよび/または前回のデータフレーム中のサブバンドの参照情報に従って、現在のデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正しているので、現在のデータフレーム中のサブバンドの修正された量子化周波数エンベロープ値は、オーディオ信号の特性をより一層満たすことになり、前回のデータフレームのスペクトル係数が現在のデータフレームのスペクトル係数とより連続したものとなることが理解されよう。
【００５７】
S103. エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振る。
【００５８】
エンコーダがサブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正した後に、エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従って現在のデータフレーム中のサブバンドに対する量子化ビット割り振りを行ってもよい。
【００５９】
具体的には、エンコーダが現在のデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正した後に、エンコーダは、現在のデータフレーム中の第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従って現在のデータフレーム中のサブバンドの重要度の初期値(サブバンドの重要度はサブバンドのエネルギーまたは周波数などのパラメータを使用して測定され得る)を計算し、その後、サブバンドの重要度の初期値に従ってサブバンドに利用可能なビットを割り振ってもよい、ここで、より多くのビットを高重要度のサブバンドに割り振り、より少ないビットを低重要度のサブバンドに割り振る。
【００６０】
利用可能なビットの数量は現在のデータフレームにおいて利用可能なビットの総数量を指すことに留意されたい。利用可能なビットの数量は、エンコーダのビットレートに従って決定される。エンコーダのビットレートがより大きければ、利用可能なビットの数量がより大きいことを示す。
【００６１】
現在のデータフレーム中のサブバンドの量子化周波数エンベロープ値を修正した後に、一方では、現在のデータフレーム中のサブバンドの、量子化ビット割り振りのために使用された、修正された量子化周波数エンベロープ値がオーディオ信号の特性をより一層満たすことになるので、サブバンドのスペクトル係数に対する量子化ビット割り振りはより適切なものとなり、他方では、現在のデータフレーム中のサブバンドの修正された量子化周波数エンベロープ値が前回のデータフレームのスペクトル係数を現在のデータフレームのスペクトル係数とより連続したものとし得るので、デコーダによる復号中のスペクトルについてのいくつかの離散点を低減し、その結果、デコーダは、復号をより良く完了することができることが理解されよう。
【００６２】
S104. エンコーダは、サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化する。
【００６３】
エンコーダが現在のデータフレーム中のサブバンドのスペクトル係数に対する量子化ビット割り振りを行った後に、エンコーダは、現在のデータフレーム中のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化する。
【００６４】
具体的には、エンコーダが現在のデータフレーム中のサブバンドのスペクトル係数に対する量子化ビット割り振りを行った後に、エンコーダは、現在のデータフレーム中のサブバンドの修正された量子化周波数エンベロープ値に従って現在のデータフレーム中のサブバンドのスペクトル係数に関して正規化処理を行い、その後、現在のデータフレーム中のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数にエンコーダによって個々に割り振られているビットの数量に従って現在のデータフレーム中のサブバンドのスペクトル係数を量子化してもよい。
【００６５】
一例として、現在のデータフレームが第yのデータフレームであり、前回のデータフレームが第(y-1)のデータフレームであり、エンコーダが各データフレームをN個のサブバンドに分割していると仮定する。量子化する際には、第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数に割り振られているビットの数量、第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数に従って、エンコーダは、より少ないビットが割り振られているサブバンドの量子化されたスペクトル係数を得るために、ピラミッド格子ベクトル量子化方法を使用してより少ないビットが割り振られているサブバンドのスペクトル係数を量子化してもよいし、それに対応するように、エンコーダは、より多くのビットが割り振られているサブバンドの量子化されたスペクトル係数を得るために、球面格子ベクトル量子化方法を使用してより多くのビットが割り振られているサブバンドのスペクトル係数を量子化してもよい。
【００６６】
現在のデータフレーム中のサブバンドにおいて量子化ビットが割り振られていないサブバンドが存在し得ることに留意されたい。本発明の本実施形態においては、エンコーダは、現在のデータフレーム中のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化する。具体的には、量子化ビットがサブバンドに割り振られている場合には、サブバンドに割り振られている量子化ビットは、サブバンドのスペクトル係数を量子化するために使用される。例えば、2つの量子化ビットをあるサブバンドに割り振り、その2つの量子化ビットがサブバンドのスペクトル係数を量子化するために使用され、3つのビットを別のサブバンドに割り振り、、その3つの量子化ビットが別のサブバンドのスペクトル係数を量子化するために使用され、量子化ビットがサブバンドに割り振られていない場合には、量子化ビットが割り振られていないサブバンドのスペクトル係数は量子化されない。
【００６７】
S105. エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む。
【００６８】
エンコーダが現在のデータフレーム中の量子化ビットが割り振られているサブバンドのスペクトル係数を量子化した後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む必要があり、その結果、デコーダは、ビットストリームを使用して復号を行う。
【００６９】
具体的には、エンコーダが現在のデータフレーム中の量子化ビットが割り振られているサブバンドのスペクトル係数を量子化した後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数、現在のデータフレーム中のサブバンドの信号タイプ、前回のデータフレーム中のサブバンドの参照情報、および現在のデータフレーム中のサブバンドの量子化周波数エンベロープインデックス値をビットストリームに書き込み、復号のためにデコーダにビットストリームを送信する。
【００７０】
オーディオ信号の各データフレームについては、エンコーダは前述のステップS101からS105に従って符号化を行う、すなわち、オーディオ信号のデータフレームのすべてが符号化されるまでエンコーダはS101からS105を繰り返し実行することに留意されたい。
【００７１】
エンコーダが符号化予定のオーディオ信号の各データフレームを計算し、量子化し、修正した後に、エンコーダは、現在のデータフレーム中のサブバンドの信号タイプ、前回のデータフレーム中のサブバンドの参照情報、ならびに前述のプロセスにおいて得られた現在のデータフレーム中のサブバンドの量子化周波数エンベロープインデックス値および現在のデータフレーム中の量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数などの対応するパラメータをビットストリームに書き込み、デコーダにビットストリームを送信する必要があり、その結果、デコーダは、符号化中に得られた対応するパラメータに従って符号化されたオーディオ信号のビットストリームに関して逆量子化および非正規化などの処理を行うことができ、その後、エンコーダは、復号が完了した後に、符号化される前のオーディオ信号を得ていることが理解されよう。
【００７２】
本発明の本実施形態において提供した符号化方法によれば、現在のデータフレームのスペクトル係数をサブバンドに分割した後に、エンコーダは、サブバンドの量子化周波数エンベロープ値を取得し、エンコーダは、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正し、エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振り、エンコーダは、サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化し、最後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む。本解決手法によれば、量子化ビット割り振りをオーディオ信号の現在のデータフレーム中のサブバンドのスペクトル係数に対して行う前に、サブバンドの量子化周波数エンベロープ値を現在のデータフレームの信号タイプおよび前回のデータフレームに関する情報に従って修正することができる、したがって、サブバンドの修正された量子化周波数エンベロープ値および利用可能なビットの数量に従ってサブバンドのスペクトル係数に対する量子化ビット割り振りを行うことが、オーディオ信号のスペクトル係数に対する適切な量子化ビット割り振りという目的を達成することを可能としており、それによって、復号によりデコーダによって得られる信号の品質を改善している。
【００７３】
実施形態2
本発明の本実施形態は、符号化方法を提供している。本発明の本実施形態において提供した符号化方法においては、現在のデータフレームが第yのデータフレームであり、前回のデータフレームが第(y-1)のデータフレームであることを、説明のための例示として使用する、ここで、y≧1である。図2に示したように、方法は、以下のステップを含み得る。
【００７４】
S201. エンコーダは、オーディオ信号の第yのデータフレームに関して時間-周波数変換を行い、第yのデータフレームのスペクトル係数を得る、ここで、y≧1である。
【００７５】
エンコーダは、データまたは信号(例えば、ビットストリーム)を符号化して、データまたは信号を、通信、伝送、および記憶のために使用され得る信号に変換するデバイスである。エンコーダは、異なる技術分野においては異なる分類を有する。通信技術の分野においては、エンコーダは、ビデオエンコーダ、オーディオエンコーダなどを含み得る。
【００７６】
本発明の本実施形態において提供したエンコーダは、オーディオエンコーダであり得る。オーディオエンコーダは、アナログオーディオ信号をデータ符号化ファイルに圧縮し得るツール、すなわち、オーディオ圧縮符号化ツールである。オーディオ圧縮符号化は、音声信号圧縮符号化および広帯域オーディオ信号圧縮符号化に分類され得る。音声信号圧縮符号化は、デジタル電話通信において主に使用されている。広帯域オーディオ信号圧縮符号化は、デジタルオーディオ放送、VCD、DVD、およびHDTVにおけるサウンドに主に適用されている。
【００７７】
時間-周波数変換は、時間領域から周波数領域へと信号を変換することを指す。現在、一般的に使用されている時間-周波数変換方法は、離散フーリエ変換(Discrete Fourier Transform、DFT)、離散コサイン変換(Discrete Cosine Transform、DCT)、修正離散コサイン変換(Modified Discrete Cosine Transform、MDCT)などを含む。
【００７８】
オーディオ信号はデータフレーム形式でフレーム毎にエンコーダに送信されてもよいことに留意されたい。データフレームは、データリンクレイヤにおけるプロトコルデータユニットであり、データフレームは、フレームヘッダ、データ部、およびフレームトレーラを含み得る。フレームヘッダおよびフレームトレーラは、同期情報、アドレス情報、およびエラー制御情報などの必要な制御情報を含む。データ部は、ネットワークレイヤから送信されるデータ、例えば、IPパケットを含む。
【００７９】
エンコーダは、第yのデータフレームのスペクトル係数を得るために、時間-周波数変換方法を使用して時間領域から周波数領域へとオーディオ信号の第yのデータフレームを変換する。符号化プロセスにおいて、エンコーダが時間領域から周波数領域へとオーディオ信号の各データフレームを連続的に変換することが理解されよう。
【００８０】
S202. エンコーダは、第yのデータフレームのスペクトル係数をN個のサブバンドに分割する、ここで、N≧1である。
【００８１】
サブバンドは、特定の特性を有する周波数帯を指す。
【００８２】
本発明の本実施形態において提供した符号化方法においては、エンコーダがオーディオ信号に関して時間-周波数変換を行った後に、エンコーダは、時間-周波数変換の後に得られるオーディオ信号の各データフレームをN個のサブバンドに分割する、すなわち、エンコーダは、任意の送信されたデータフレームをN個のサブバンドに分割する。したがって、第yのデータフレームと第(y-1)のデータフレームとは、同一の数量、すなわち、N個のサブバンドを有する。
【００８３】
第yのデータフレーム中のサブバンドは、第yのデータフレーム中の異なる周波数帯となる。一例として、第yのデータフレームのスペクトル係数が0から8000Hzである場合には、0から20Hzの周波数帯が第yのデータフレーム中の1個のサブバンドとなる。
【００８４】
必要に応じて、サブバンド分割中に、送信された第yのデータフレームのスペクトル係数を等間隔でサブバンドに分割してもよいし、または送信された第yのデータフレームのスペクトル係数を聴覚感知特性に従って非等間隔でサブバンドに分割してもよい。分割は、実際の分割要件に従って行われてもよく、本発明において限定されない。
【００８５】
S203. エンコーダは、第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープ値を取得する。
【００８６】
量子化は、スカラー量子化およびベクトル量子化を含んでいてもよい。ベクトル量子化は、大きな圧縮比、容易な復号、および小さな歪みなどの利点を有する効率的なデータ圧縮技術である。ベクトル量子化技術は、画像圧縮および音声符号化において広く使用されている。
【００８７】
エンコーダは、第yのデータフレーム中のN個のサブバンドの周波数エンベロープを計算することによって第yのデータフレーム中のN個のサブバンドの周波数エンベロープ値を得て、その後、エンコーダは、周波数エンベロープ値を量子化して第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープのインデックス値を得て、第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープ値を得るために、量子化周波数エンベロープのインデックス値に従って第yのデータフレーム中のN個のサブバンドの周波数エンベロープを再生成する。
【００８８】
必要に応じて、ベクトル量子化は、ピラミッド格子ベクトル量子化、球面格子ベクトル量子化などを含んでいてもよい。
【００８９】
S204. エンコーダは、第yのデータフレーム中の第1の数量のサブバンドの修正因子を取得する。
【００９０】
本発明の本実施形態においては、好ましくは、第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープ値を修正する場合には、エンコーダは、第yのデータフレーム中のサブバンドの重要度に従って、第yのデータフレームにおいて高重要度を有しているいくつかのサブバンド、すなわち、第yのデータフレームにおいてより高いエネルギーを有しているいくつかのサブバンド、すなわち、第yのデータフレームにおいてより高い周波数を有しているいくつかのサブバンドのみを修正する必要がある。隣接しているデータフレーム間の連続性を考慮して、第yのデータフレームにおいて修正されるべきサブバンドの第1の数量の特定値を、より高い周波数を有するとともに第yのデータフレームから選択されるサブバンドの数量Mと、より高い周波数を有するとともに第(y-1)のデータフレームから選択されるサブバンドの数量Lとに従って決定する、すなわち、第1の数量の値は、MとLとのうちのより大きい方の値である、ここで、1≦M≦Nであり、1≦L≦Nである。
【００９１】
特に、第yのデータフレームにおいてより高い周波数を有しているM個のサブバンドまたは第(y-1)のデータフレームにおいてより高い周波数を有しているL個のサブバンドを選択するための方法は、エンコーダが基準周波数を選択してもよいし、サブバンドの開始周波数が基準周波数より高い場合には、サブバンドはより高い周波数を有するサブバンドである。基準周波数は、5kHz、5.45kHz、5.8kHz、6kHz、6.2kHz、7kHz、8kHz、または10kHzであってもよい、すなわち、より高い周波数を有するサブバンドの選択は、異なる条件に従って設定されてもよく、本発明において限定されない。
【００９２】
さらに、本発明の本実施形態においては、基準周波数の選択を現在のデータフレーム中のサブバンドの最高周波数およびプリセット周波数範囲に従って決定してもよい。すなわち、基準周波数=最高周波数-周波数範囲である。例えば、プリセット周波数範囲が2kHzであり、現在のデータフレーム中のサブバンドの最高周波数が7.45kHzである場合には、基準周波数=7.45kHz-2kHz=5.45kHzであるし、プリセット周波数範囲が3kHzであり、現在のデータフレーム中のサブバンドの最高周波数が9.2kHzである場合には、基準周波数=9.2kHz-3kHz=6.2kHzである。プリセット周波数範囲が要件または経験に従って設定され得ることが理解されよう。
【００９３】
さらに、エンコーダは、第yのデータフレーム中のMまたはL個のサブバンドを修正してもよい。図3に示したように、第yのデータフレーム中のM個のサブバンドは、第yのデータフレーム中のN個のサブバンドのうちで最高周波数を有しているサブバンドから始まるM個の連続したサブバンドであり、第(y-1)のデータフレーム中のL個のサブバンドは、第(y-1)のデータフレーム中のN個のサブバンドのうちで最高周波数を有しているサブバンドから始まるL個の連続したサブバンドである。
【００９４】
M≧Lとなっているケースを以下における説明のために使用する。
【００９５】
M≧Lである場合には、第1の数量はMであり、第(y-1)のデータフレーム中のL個のサブバンドの数量が第2の数量としてみなされ、第2の数量が第1の数量以下である場合には、第(y-1)のデータフレーム中の第2の数量のサブバンドは、第(y-1)のデータフレーム中のL個のサブバンドである。エンコーダによって、第yのデータフレーム中の第1の数量のサブバンドの修正因子を取得するための方法は、エンコーダによって、第yのデータフレーム中の第1の数量のサブバンドの信号タイプに従って第yのデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップ、または、エンコーダによって、第yのデータフレーム中の第1の数量のサブバンドの信号タイプおよび第(y-1)のデータフレーム中の第2の数量のサブバンドの参照情報に従って第yのデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップを含む。
【００９６】
具体的には、エンコーダは、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプに従って対応する計算式を選択して、M個のサブバンドのうちの各サブバンドに対応する修正因子の値を決定する、または、エンコーダは、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプおよび第(y-1)のデータフレーム中のL個のサブバンドの参照情報に従って対応する計算式を選択して、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドに対応する修正因子を決定する。
【００９７】
第yのデータフレーム中のM個のサブバンドの信号タイプがM個のサブバンドのうちの各サブバンドの信号タイプを含み、M個のサブバンドのうちの各サブバンドが修正因子に対応していることに留意されたい。
【００９８】
さらに、エンコーダによって、第yのデータフレーム中のM個のサブバンドの修正因子を取得するための方法は、以下の通りである。
【００９９】
(1) エンコーダは、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプに従って対応する計算式を選択して、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドに対応する修正因子の値を決定する。
【０１００】
必要に応じて、サブバンドの信号タイプは、高調波または非高調波であってもよい。第yのデータフレーム中の第1の数量のサブバンドのうちの第1のサブバンドの信号タイプが高調波である場合には、エンコーダは、第1のサブバンドの修正因子が1より大きいと決定し、第yのデータフレーム中の第1の数量のサブバンドのうちの第1のサブバンドの信号タイプが非高調波である場合には、エンコーダは、第1のサブバンドの修正因子が1以下であると決定する。すなわち、第yのデータフレーム中のM個のサブバンドのうちの第1のサブバンドの信号タイプが高調波である場合には、エンコーダは、第1のサブバンドに対応する修正因子が1より大きい値であると決定する、または、第1のサブバンドの信号タイプが非高調波である場合には、エンコーダは、第1のサブバンドに対応する修正因子が1以下の値であると決定する。
【０１０１】
具体的には、第1のサブバンドの修正因子は、第1のサブバンドの周波数エンベロープ値の任意の2つの値の比、第1の数量のサブバンドの平均周波数エンベロープ値、第1の数量のサブバンドの帯域幅値、第1の数量のサブバンドの周波数エンベロープ値の最大値、および第1の数量のサブバンドの周波数エンベロープ分散値に従って決定される。すなわち、第1のサブバンドの修正因子は、第1のサブバンドの周波数エンベロープ値の任意の2つの値の比、M個のサブバンドの平均周波数エンベロープ値、M個のサブバンドの帯域幅値、M個のサブバンドの周波数エンベロープ値の最大値、およびM個のサブバンドの周波数エンベロープ分散値に従って決定される。特定の組合せ形式を第1のサブバンドの信号タイプに従って選択してもよい、すなわち、対応する式を第1のサブバンドの信号タイプに従って選択して修正因子を計算してもよい。
【０１０２】
第1の式は、以下の通りである。
【数１】
0006319753.tif 000002
ここで、bandlengthは、N個のサブバンドのうちの、M個のサブバンドを除いた、あるサブバンドとM個のサブバンドのうちの第iのサブバンドとの間のサブバンドの数量であり、
【数２】
0006319753.tif 000003
であり、ここで、Ep[i]は第iのサブバンドのエネルギーであり、Ep_tmp[i]は第iのサブバンドの周波数エンベロープ値であり、band_width[i]は第iのサブバンドの帯域幅であり、
【数３】
0006319753.tif 000004
であり、ここで、Ep_variはある周波数帯の周波数エンベロープ分散であり、
【数４】
0006319753.tif 000005
であり、ここで、Ep_avrgはある周波数帯におけるいくつかのサブバンドの平均周波数エンベロープ値である。
【０１０３】
第2の式は、以下の通りである。
factor(i)=1.0 (2)
【０１０４】
一例として、第1のサブバンドの信号タイプが高調波である場合には、第1の式が選択され、第1のサブバンドに対応する修正因子の、計算により得られる、値は、1より大きく、第1のサブバンドの信号タイプが非高調波である場合には、第2の式が選択され、第1のサブバンドに対応する修正因子の、計算により得られる、値は、1以下である。
【０１０５】
第1のサブバンドの信号タイプが高調波である場合には、復号中に第1のサブバンドの高調波特性をより良く復元するために、比較的大きなビットの数量を第1のサブバンドに割り振る必要があることが理解されよう。すなわち、第1のサブバンドの信号タイプが高調波である場合には、第1のサブバンドに対応する修正因子が1より大きい値であると決定されると、第1のサブバンドの修正された量子化周波数エンベロープ値は、第1のサブバンドの修正されていない量子化周波数エンベロープ値より大きく、そして、比較的大きなビットの数量が第1のサブバンドに割り振られる。
【０１０６】
第yのデータフレーム中の第1の数量のサブバンドのうちの各サブバンドの修正因子を取得するための方法は第1のサブバンドの修正因子を取得するための前述の方法と同一であることに留意されたい。
【０１０７】
(2) エンコーダは、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプおよび第(y-1)のデータフレーム中のL個のサブバンドの参照情報に従って対応する計算式を選択して、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドに対応する修正因子を決定する。
【０１０８】
M≧Lであり、エンコーダが第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプに従ってM個の第1の修正因子を決定し、エンコーダが第(y-1)のデータフレーム中のL個のサブバンドの参照情報に従ってL個の第2の修正因子を決定していることに留意されたい。M個の第1の修正因子のうちのL個の第1の修正因子およびL個の第2の修正因子は、第yのデータフレーム中のM個のサブバンドのうちのL個のサブバンドの量子化周波数エンベロープ値を対応するように修正するために使用され、エンコーダは、M個の第1の修正因子のうちの残りのM-L個の第1の修正因子に従って第yのデータフレーム中のM個のサブバンドのうちの残りのM-L個のサブバンドの量子化周波数エンベロープ値を対応するように修正する。
【０１０９】
特に、第yのデータフレーム中の第1のサブバンドを記載する。第yのデータフレーム中の第1のサブバンドが第(y-1)のデータフレーム中の第2のサブバンドの対応する参照情報を有している場合には、エンコーダは、第yのデータフレーム中の第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定し、エンコーダは、第(y-1)のデータフレーム中の第2の数量のサブバンドのうちの、第yのデータフレーム中の第1のサブバンドに対応する、第2のサブバンドの参照情報に従って第1のサブバンドの第2の修正因子を決定し、最後に、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用する。第yのデータフレーム中の第1のサブバンドが第(y-1)のデータフレーム中の第2のサブバンドの対応する参照情報を有していない場合には、エンコーダは、第yのデータフレーム中の第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定する、ここで、第1のサブバンドの修正因子は第1の修正因子である。
【０１１０】
エンコーダが第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプに従って対応する計算式を選択してM個のサブバンドのうちの各サブバンドに対応する第1の修正因子の値を決定する場合には、第1の修正因子の値が(1)における修正因子を決定するための方法を使用して決定される、すなわち、(1)における修正因子がここでの第1の修正因子であることに留意されたい。
【０１１１】
第(y-1)のデータフレーム中のL個のサブバンドの参照情報がL個のサブバンドのうちの各サブバンドの参照情報を含むことに留意されたい。
【０１１２】
さらに、エンコーダが第yのデータフレーム中の第1の数量のサブバンドの信号タイプに従って第yのデータフレーム中の第1の数量のサブバンドの修正因子を決定する前に、エンコーダは第yのデータフレーム中の第1の数量のサブバンドの信号タイプをまず取得する必要があり、エンコーダが第(y-1)のデータフレーム中の第2の数量のサブバンドの参照情報に従って第(y-1)のデータフレーム中の第2の数量のサブバンドの修正因子を決定する前に、エンコーダは第(y-1)のデータフレーム中の第2の数量のサブバンドについての記憶されている参照情報をまず取得する必要がある、ここで、エンコーダが第(y-1)のデータフレームの符号化を完了すると第(y-1)のデータフレーム中の第2の数量のサブバンドの参照情報は記憶される。
【０１１３】
必要に応じて、第(y-1)のデータフレーム中の第2のサブバンドの参照情報は、第2のサブバンドの量子化ビット割り振り状態および/または第2のサブバンドの信号タイプを含む。
【０１１４】
第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態を含む場合には、第2の修正因子は第3の修正因子である、または、第2のサブバンドの参照情報が第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第4の修正因子である、または、第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態および第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第3の修正因子と第4の修正因子との積である。
【０１１５】
具体的には、第(y-1)のデータフレーム中のL個のサブバンドの参照情報は、第(y-1)のデータフレーム中のL個のサブバンドの量子化ビット割り振り状態および/または第(y-1)のデータフレーム中のL個のサブバンドの信号タイプを含む。第(y-1)のデータフレーム中のL個のサブバンドの参照情報が第(y-1)のデータフレーム中のL個のサブバンドの量子化ビット割り振り状態を含む場合には、第2の修正因子は第3の修正因子である、または、第(y-1)のデータフレーム中のL個のサブバンドの参照情報が第(y-1)のデータフレーム中のL個のサブバンドの信号タイプを含む場合には、第2の修正因子は第4の修正因子である、または、第(y-1)のデータフレーム中のL個のサブバンドの参照情報が第(y-1)のデータフレーム中のL個のサブバンドの量子化ビット割り振り状態および第(y-1)のデータフレーム中のL個のサブバンドの信号タイプを含む場合には、第2の修正因子は第3の修正因子と第4の修正因子との積である。
【０１１６】
好ましくは、第2の修正因子は第3の修正因子と第4の修正因子との積である。
【０１１７】
エンコーダは、第(y-1)のデータフレーム中のL個のサブバンドのうちの各サブバンドの量子化ビット割り振り状態に従って対応する計算式を選択してL個のサブバンドのうちの各サブバンドに対応する第3の修正因子の値を決定し、第(y-1)のデータフレーム中のL個のサブバンドのうちの各サブバンドの信号タイプに従って対応する計算式を選択してL個のサブバンドのうちの各サブバンドに対応する第4の修正因子の値を決定し、L個のサブバンドのうちの各サブバンドに対応する第3の修正因子および/または第4の修正因子に従って、L個のサブバンドのうちの各サブバンドに対応する第2の修正因子の値を決定してもよい。
【０１１８】
必要に応じて、第(y-1)のデータフレーム中のL個のサブバンドのうちの第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていることを示している場合には、エンコーダは、第2のサブバンドに対応する第3の修正因子が1より大きい値であると決定する、または、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていないことを示している場合には、エンコーダは、第2のサブバンドに対応する第3の修正因子が1未満の値であると決定する。第2のサブバンドの信号タイプが高調波である場合には、エンコーダは、第2のサブバンドに対応する第4の修正因子が1より大きい値であると決定する、または、第2のサブバンドの信号タイプが非高調波である場合には、エンコーダは、第2のサブバンドに対応する第4の修正因子が1以下の値であると決定する。
【０１１９】
第(y-1)のデータフレーム中のL個のサブバンドのうちの第2のサブバンドの量子化ビット割り振り状態が「1」である場合には、スペクトル係数が符号化されていることを示し、第(y-1)のデータフレーム中のL個のサブバンドのうちの第2のサブバンドの量子化ビット割り振り状態が「0」である場合には、スペクトル係数が符号化されていないことを示していることに留意されたい。ここで、第4の修正因子を取得するための方法は、(1)における修正因子を取得するための前述の方法と同一である。
【０１２０】
具体的には、第1のサブバンドの第2の修正因子は、第2のサブバンドの周波数エンベロープ値の任意の2つの値の比、第2の数量のサブバンドの平均周波数エンベロープ値、第2の数量のサブバンドの帯域幅値、第2の数量のサブバンドの周波数エンベロープ値の最大値、および第2の数量のサブバンドの周波数エンベロープ分散値に従って決定される。特定の組合せ形式を第2のサブバンドの参照情報に従って選択してもよい、すなわち、対応する式を第2のサブバンドの量子化ビット割り振り状態および/または第2のサブバンドの信号タイプに従って選択して第3の修正因子および第4の修正因子を計算してもよい。
【０１２１】
第3の式は、以下の通りである。
【数５】
0006319753.tif 000006
ここで、bandlengthは、N個のサブバンドのうちの、L個のサブバンドを除いた、あるサブバンドとL個のサブバンドのうちの第iのサブバンドとの間のサブバンドの数量である。
【０１２２】
第4の式は、以下の通りである。
【数６】
0006319753.tif 000007
ここで、bandlengthは、N個のサブバンドのうちの、L個のサブバンドを除いた、あるサブバンドとL個のサブバンドのうちの第iのサブバンドとの間のサブバンドの数量である。
【０１２３】
一例として、第2のサブバンドの量子化ビット割り振り状態が「1」である場合には、第3の式が選択され、第2のサブバンドに対応する第3の修正因子の、計算により得られる、値は、1より大きく、第2のサブバンドの量子化ビット割り振り状態が「0」である場合には、第4の式が選択され、第2のサブバンドに対応する第3の修正因子の、計算により得られる、値は、1未満である。
【０１２４】
第2のサブバンドの信号タイプが高調波である場合には、第1の式が選択され、第2のサブバンドに対応する第4の修正因子の、計算により得られる、値は1より大きく、第2のサブバンドの信号タイプが非高調波である場合には、第2の式が選択され、第2のサブバンドに対応する第4の修正因子の、計算により得られる、値は1以下である。
【０１２５】
第(y-1)のデータフレーム中の第2のサブバンドの量子化ビット割り振り状態が「1」である場合には、符号化中のオーディオ信号の隣接しているデータフレーム間の連続性をより良く維持するために、比較的大きなビットの数量が第2のサブバンドに割り振られていることを示していることが理解されよう。すなわち、第2のサブバンドの量子化ビット割り振り状態が「1」である場合には、第2のサブバンドに対応する第3の修正因子が1より大きい値であると決定されると、第yのデータフレーム中の、第2のサブバンドに対応する、サブバンドの修正された量子化周波数エンベロープ値は、第yのデータフレーム中の、第2のサブバンドに対応する、サブバンドの修正されていない量子化周波数エンベロープ値より大きく、そして、比較的大きなビットの数量がサブバンドに割り振られる。
【０１２６】
第yのデータフレーム中の第1の数量のサブバンドのうちの各サブバンドの修正因子を取得するための方法は第1のサブバンドの修正因子を取得するための前述の方法と同一であることに留意されたい。
【０１２７】
M≦Lとなっているケースを以下における説明のために使用する。
【０１２８】
M≦Lである場合には、第1の数量の値はLであり、第yのデータフレーム中のM個のサブバンドの数量が第3の数量としてみなされる場合には、第yのデータフレーム中の第3の数量のサブバンドは、第yのデータフレーム中のM個のサブバンドである。エンコーダによって、第yのデータフレーム中の第1の数量のサブバンドの修正因子を取得するための方法は、第(y-1)のデータフレーム中の第1の数量のサブバンドの参照情報に従って第yのデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップ、または、エンコーダによって、第(y-1)のデータフレーム中の第1の数量のサブバンドの参照情報および第yのデータフレーム中の第3の数量のサブバンドの信号タイプに従って第yのデータフレーム中の第1の数量のサブバンドの修正因子を決定するステップを含む。
【０１２９】
具体的には、エンコーダは、第(y-1)のデータフレーム中のL個のサブバンドのうちの各サブバンドの参照情報に従って対応する計算式を選択して、第yのデータフレーム中のL個のサブバンドのうちの各サブバンドに対応する修正因子の値を決定する、または、エンコーダは、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプおよび第(y-1)のデータフレーム中のL個のサブバンドの参照情報に従って対応する計算式を選択して、第yのデータフレーム中のL個のサブバンドのうちの各サブバンドに対応する修正因子を決定する。
【０１３０】
さらに、エンコーダによって、第yのデータフレーム中のL個のサブバンドの修正因子を取得するための方法は、以下の通りである。
【０１３１】
(1) エンコーダは、第(y-1)のデータフレーム中のL個のサブバンドのうちの各サブバンドの参照情報に従って対応する計算式を選択して、第yのデータフレーム中のL個のサブバンドのうちの各サブバンドに対応する修正因子の値を決定する。
【０１３２】
さらに、エンコーダが第yのデータフレーム中の第3の数量のサブバンドの信号タイプに従って第yのデータフレーム中の第3の数量のサブバンドの修正因子を決定する前に、エンコーダは第yのデータフレーム中の第3の数量のサブバンドの信号タイプをまず取得する必要があり、エンコーダが第(y-1)のデータフレーム中の第1の数量のサブバンドの参照情報に従って第(y-1)のデータフレーム中の第1の数量のサブバンドの修正因子を決定する前に、エンコーダは第(y-1)のデータフレーム中の第1の数量のサブバンドについての記憶されている参照情報をまず取得する必要がある、ここで、エンコーダが第(y-1)のデータフレームの符号化を完了すると第(y-1)のデータフレーム中の第1の数量のサブバンドの参照情報は記憶される。
【０１３３】
エンコーダが第(y-1)のデータフレーム中のL個のサブバンドのうちの各サブバンドの参照情報に従って対応する計算式を選択して第yのデータフレーム中のL個のサブバンドのうちの各サブバンドに対応する修正因子の値を決定する場合には、修正因子の値がM≧Lとなっている(2)における前述の第2の修正因子を決定するための方法を使用して決定される、すなわち、M≧Lとなっている(2)における前述の第2の修正因子がここでの修正因子であることに留意されたい。
【０１３４】
(2) エンコーダは、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプおよび第(y-1)のデータフレーム中のL個のサブバンドの参照情報に従って対応する計算式を選択して、第yのデータフレーム中のL個のサブバンドのうちの各サブバンドに対応する修正因子を決定する。
【０１３５】
M≦Lであり、エンコーダが第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプに従ってM個の第1の修正因子を決定し、エンコーダが第(y-1)のデータフレーム中のL個のサブバンドのうちの参照情報に従ってL個の第2の修正因子を決定していることに留意されたい。L個の第2の修正因子のうちのM個の第2の修正因子およびM個の第1の修正因子は、第yのデータフレーム中のL個のサブバンドのうちのM個のサブバンドの量子化周波数エンベロープ値を対応するように修正するために使用され、エンコーダは、L個の第2の修正因子のうちの残りのL-M個の第2の修正因子に従って第yのデータフレーム中のL個のサブバンドのうちの残りのL-M個のサブバンドの量子化周波数エンベロープ値を対応するように修正する。
【０１３６】
特に、第yのデータフレーム中の第1のサブバンドを記載する。第(y-1)のデータフレーム中の第2のサブバンドが第yのデータフレーム中の第1のサブバンドの対応する信号タイプを有している場合には、エンコーダは、第(y-1)のデータフレーム中のL個のサブバンドのうちの第2のサブバンドの参照情報に従って第yのデータフレーム中のL個のサブバンドのうちの第1のサブバンドの第2の修正因子を決定し、エンコーダは、第yのデータフレーム中の第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定し、最後に、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用する。第(y-1)のデータフレーム中の第2のサブバンドが第yのデータフレーム中の第1のサブバンドの対応する信号タイプを有していない場合には、エンコーダは、第(y-1)のデータフレーム中の第2のサブバンドの参照情報に従って第yのデータフレーム中の第1のサブバンドの第2の修正因子を決定し、第1のサブバンドの修正因子は第2の修正因子である。
【０１３７】
第1の修正因子の値および第2の修正因子の値を決定するための前述の方法は、第1の修正因子の値および第2の修正因子の値を決定するための、M≧Lとなっている、方法と同一であるので、詳細を本明細書では再び記載していないことに留意されたい。
【０１３８】
S205. エンコーダは、第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正する。
【０１３９】
エンコーダが第yのデータフレーム中の第1の数量のサブバンドの修正因子を取得した後に、エンコーダは、第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正する。
【０１４０】
具体的には、エンコーダは、第yのデータフレーム中の第1の数量のサブバンドの修正因子を使用して第1の数量のサブバンドの量子化周波数エンベロープ値を修正する。
【０１４１】
本発明の本実施形態においては、エンコーダが第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正する場合には、好ましくは、図3に示したように、エンコーダは、第yのデータフレーム中のサブバンドの重要度に従って、第yのデータフレームにおいて高重要度を有しているMまたはL個のサブバンドのみを修正し、エンコーダによって修正された第yのデータフレーム中のMまたはL個のサブバンドと第yのデータフレーム中の残りの修正されていないサブバンドとを再結合して第yのデータフレーム中の修正されたN個のサブバンドを形成する必要があることに留意されたい。
【０１４２】
本発明の本実施形態において提供した符号化方法においては、エンコーダは、MとLとの値に従って、修正する必要がある第yのデータフレーム中のサブバンドの(MとLとのうちのより大きい方の値)数をまず決定し、そして、M>Lとなっている、またはM<Lとなっている、またはM=Lとなっているケースに対応する修正様式を選択し、そして、修正様式に対応する修正因子を決定して第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正してもよい。
【０１４３】
必要に応じて、エンコーダは、MとLとの値に従って対応する修正様式を選択して、第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正する。
【０１４４】
M≧Lである場合には、第1の数量の値はMであり、エンコーダは、第yのデータフレーム中のM個のサブバンドの信号タイプ、または第yのデータフレーム中のM個のサブバンドの信号タイプおよび第(y-1)のデータフレーム中のL個のサブバンドの参照情報に従って第yのデータフレーム中のM個のサブバンドの量子化周波数エンベロープ値を修正する。第yのデータフレーム中のM個のサブバンドは、第yのデータフレーム中のN個のサブバンドのうちで最高周波数を有しているサブバンドから始まるM個の連続したサブバンドである、第yのデータフレーム中のL個のサブバンドは、第yのデータフレーム中のN個のサブバンドのうちで最高周波数を有しているサブバンドから始まるL個の連続したサブバンドであり、第(y-1)のデータフレーム中のL個のサブバンドは、第(y-1)のデータフレーム中のN個のサブバンドのうちで最高周波数を有しているサブバンドから始まるL個の連続したサブバンドである。
【０１４５】
あるいは、
M≦Lである場合には、第1の数量の値はLであり、エンコーダは、第(y-1)のデータフレーム中のL個のサブバンドの参照情報、または第yのデータフレーム中のM個のサブバンドの信号タイプおよび第(y-1)のデータフレーム中のL個のサブバンドの参照情報に従って第yのデータフレーム中のL個のサブバンドの量子化周波数エンベロープ値を修正する。
【０１４６】
必要に応じて、エンコーダは、MとLとの値、すなわち、修正条件に従って、修正条件に対応する修正様式を選択し、修正様式に従って対応する修正因子を決定して第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正してもよい。具体的には、エンコーダが第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正する修正様式は、以下のうちの1つであり得る。
【０１４７】
(1) M≧Lである場合には、第1の数量の値はMであり、エンコーダは、修正因子を使用して、第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの量子化周波数エンベロープ値を対応するように修正する、ここで、修正因子は第yのデータフレーム中のM個のサブバンドのうちの各サブバンドの信号タイプに従ってエンコーダによって決定される。具体的には、エンコーダは、第yのデータフレーム中のM個のサブバンドの量子化周波数エンベロープ値にM個の修正因子を対応するように乗じて、第yのデータフレーム中のM個のサブバンドの修正された量子化周波数エンベロープ値を得る。あるいは、エンコーダは、M個の第1の修正因子のうちのL個の第1の修正因子およびL個の第2の修正因子に従って第yのデータフレーム中のM個のサブバンドのうちのL個のサブバンドの量子化周波数エンベロープ値を対応するように修正するとともに、エンコーダは、M個の第1の修正因子のうちの残りのM-L個の第1の修正因子に従って第yのデータフレーム中のM個のサブバンドのうちの残りのM-L個のサブバンドの量子化周波数エンベロープ値を対応するように修正する。具体的には、エンコーダは、第yのデータフレーム中のM個のサブバンドのうちのL個のサブバンドの量子化周波数エンベロープ値にM個の第1の修正因子のうちのL個の第1の修正因子およびL個の第2の修正因子を対応するように乗じて、第yのデータフレーム中のM個のサブバンドのうちのL個のサブバンドの修正された量子化周波数エンベロープ値を得るとともに、エンコーダは、第yのデータフレーム中のM個のサブバンドのうちの残りのM-L個のサブバンドの量子化周波数エンベロープ値にM個の第1の修正因子のうちの残りのM-L個の第1の修正因子を対応するように乗じて、第yのデータフレーム中のM個のサブバンドのうちの残りのM-L個のサブバンドの修正された量子化周波数エンベロープ値を得る。
【０１４８】
(2) M≦Lである場合には、第1の数量の値はLであり、エンコーダは、修正因子を使用して、第yのデータフレーム中のL個のサブバンドのうちの各サブバンドの量子化周波数エンベロープ値を対応するように修正する、ここで、修正因子は第(y-1)のデータフレーム中のL個のサブバンドのうちの各サブバンドの参照情報に従ってエンコーダによって決定される。具体的には、エンコーダは、第yのデータフレーム中のL個のサブバンドの量子化周波数エンベロープ値にL個の修正因子を対応するように乗じて、第yのデータフレーム中のL個のサブバンドの修正された量子化周波数エンベロープ値を得る。あるいは、エンコーダは、L個の第2の修正因子のうちのM個の第2の修正因子およびM個の第1の修正因子に従って第yのデータフレーム中のM個のサブバンドの量子化周波数エンベロープ値を対応するように修正するとともに、エンコーダは、L個の第2の修正因子のうちの残りのL-M個の第2の修正因子に従って第yのデータフレーム中のL個のサブバンドのうちの残りのL-M個のサブバンドの量子化周波数エンベロープ値を対応するように修正する。具体的には、エンコーダは、第yのデータフレーム中のM個のサブバンドの量子化周波数エンベロープ値にL個の第2の修正因子のうちのM個の第2の修正因子およびM個の第1の修正因子を対応するように乗じて、第yのデータフレーム中のM個のサブバンドの修正された量子化周波数エンベロープ値を得るとともに、エンコーダは、第yのデータフレーム中のL個のサブバンドのうちの残りのL-M個のサブバンドの量子化周波数エンベロープ値にL個の第2の修正因子のうちの残りのL-M個の第2の修正因子を対応するように乗じて、第yのデータフレーム中のL個のサブバンドのうちの残りのL-M個のサブバンドの修正された量子化周波数エンベロープ値を得る。
【０１４９】
一例として、M=3且つL=2である場合には、M>Lであり、第yのデータフレーム中の3個のサブバンドを修正する必要がある。M>Lである場合に使用される修正様式がまず選択され、その後、エンコーダは、3個の第1の修正因子のうちの2個の第1の修正因子および2個の第2の修正因子に従って第yのデータフレーム中の3個のサブバンドのうちの2個のサブバンドの量子化周波数エンベロープ値を対応するように修正するとともに、エンコーダは、3個の第1の修正因子のうちの残りの1個の第1の修正因子に従って第yのデータフレーム中の3個のサブバンドのうちの残りの1個のサブバンドの量子化周波数エンベロープ値を修正する。具体的には、エンコーダは、第yのデータフレーム中の3個のサブバンドのうちの2個のサブバンドの量子化周波数エンベロープ値に3個の第1の修正因子のうちの2個の第1の修正因子および2個の第2の修正因子を対応するように乗じて、第yのデータフレーム中の3個のサブバンドのうちの2個のサブバンドの修正された量子化周波数エンベロープ値を得るとともに、エンコーダは、第yのデータフレーム中の3個のサブバンドのうちの残りの1個のサブバンドの量子化周波数エンベロープ値に3個の第1の修正因子のうちの残りの1個の第1の修正因子を乗じて、第yのデータフレーム中の3個のサブバンドのうちの残りの1個のサブバンドの修正された量子化周波数エンベロープ値を得る。
【０１５０】
M=LまたはM<Lである場合には、エンコーダが第yのデータフレーム中のM個のサブバンドの量子化周波数エンベロープ値を修正するプロセスは、M>Lである前述の修正プロセスに類似していることが理解されよう、このことを、一例を使用して詳細に後述する。
【０１５１】
S206. エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振る。
【０１５２】
エンコーダが第yのデータフレーム中の第1の数量のサブバンドの量子化周波数エンベロープ値を修正した後に、エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従って第yのデータフレーム中のN個のサブバンドに対する量子化ビット割り振りを行ってもよい。
【０１５３】
具体的には、エンコーダが第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープ値を修正した後に、エンコーダは、第yのデータフレーム中のN個のサブバンドの修正された量子化周波数エンベロープ値に従ってN個のサブバンドの重要度の初期値(サブバンドの重要度はサブバンドのエネルギーまたは周波数などのパラメータを使用して測定され得る)を計算し、その後、N個のサブバンドの重要度の初期値に従ってN個のサブバンドに利用可能なビットを割り振ってもよい、ここで、より多くのビットを高重要度のサブバンドに割り振り、より少ないビットを低重要度のサブバンドに割り振る。
【０１５４】
利用可能なビットの数量は第yのデータフレームにおいて利用可能なビットの総数量を指すことに留意されたい。利用可能なビットの数量は、エンコーダのビットレートに従って決定される。エンコーダのビットレートがより大きければ、利用可能なビットの数量がより大きいことを示す。
【０１５５】
第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープ値を修正した後に、一方では、第yのデータフレーム中のN個のサブバンドの、量子化ビット割り振りのために使用された、修正された量子化周波数エンベロープ値がオーディオ信号の特性をより一層満たすことになるので、N個のサブバンドのスペクトル係数に対する量子化ビット割り振りはより適切なものとなり、他方では、第yのデータフレーム中のN個のサブバンドの修正された量子化周波数エンベロープ値が第(y-1)のデータフレームのスペクトル係数を第yのデータフレームのスペクトル係数とより連続したものとし得るので、デコーダによる復号中のスペクトルについてのいくつかの離散点を低減し、その結果、デコーダは、復号をより良く完了することができることが理解されよう。
【０１５６】
S207. エンコーダは、N個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化する。
【０１５７】
エンコーダが第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数に対する量子化ビット割り振りを行った後に、エンコーダは、第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化する。
【０１５８】
具体的には、エンコーダが第yのデータフレーム中のN個のサブバンドのスペクトル係数に対する量子化ビット割り振りを行った後に、エンコーダは、第yのデータフレーム中のN個のサブバンドの修正された量子化周波数エンベロープ値に従って第yのデータフレーム中のN個のサブバンドのスペクトル係数に関して正規化処理を行い、その後、第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数にエンコーダによって個々に割り振られているビットの数量に従って第yのデータフレーム中のN個のサブバンドのスペクトル係数を量子化してもよい。
【０１５９】
一例として、量子化する際には、第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数に割り振られているビットの数量、第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数に従って、エンコーダは、より少ないビットが割り振られているサブバンドの量子化されたスペクトル係数を得るために、ピラミッド格子ベクトル量子化方法を使用してより少ないビットが割り振られているサブバンドのスペクトル係数を量子化してもよいし、それに対応するように、エンコーダは、より多くのビットが割り振られているサブバンドの量子化されたスペクトル係数を得るために、球面格子ベクトル量子化方法を使用してより多くのビットが割り振られているサブバンドのスペクトル係数を量子化してもよい。
【０１６０】
第yのデータフレーム中のN個のサブバンドにおいて量子化ビットが割り振られていないサブバンドが存在し得ることに留意されたい。本発明の本実施形態においては、エンコーダは、第yのデータフレーム中のN個のサブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化する。
【０１６１】
S208. エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む。
【０１６２】
エンコーダが第yのデータフレーム中の量子化ビットが割り振られているサブバンドのスペクトル係数を量子化した後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む必要があり、その結果、デコーダは、ビットストリームを使用して復号を行う。
【０１６３】
具体的には、エンコーダが第yのデータフレーム中の量子化ビットが割り振られているサブバンドのスペクトル係数を量子化した後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数、第yのデータフレーム中のM個のサブバンドの信号タイプ、第(y-1)のデータフレーム中のL個のサブバンドの参照情報、および第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープインデックス値をビットストリームに書き込み、復号のためにデコーダにビットストリームを送信する。
【０１６４】
オーディオ信号の各データフレームについては、エンコーダは前述のステップS201からS208に従って符号化を行う、すなわち、オーディオ信号のデータフレームのすべてが符号化されるまでエンコーダはS201からS208を繰り返し実行することに留意されたい。符号化が完了した後に、エンコーダは、第yのデータフレーム中の第1の数量のサブバンドの参照情報を記憶し、その結果、参照情報は、第y+1のデータフレームを符号化する際に、使用される。
【０１６５】
エンコーダが符号化予定のオーディオ信号を計算し、量子化し、修正した後に、エンコーダは、第yのデータフレーム中のM個のサブバンドの信号タイプ、第(y-1)のデータフレーム中のL個のサブバンドの参照情報、ならびに前述のプロセスにおいて得られた第yのデータフレーム中のN個のサブバンドの量子化周波数エンベロープインデックス値および第yのデータフレーム中の量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数などの対応するパラメータをビットストリームに書き込み、デコーダにビットストリームを送信する必要があり、その結果、デコーダは、符号化中に得られた対応するパラメータに従って符号化されたオーディオ信号のビットストリームに関して逆量子化および非正規化などの処理を行うことができ、その後、エンコーダは、復号が完了した後に、符号化される前のオーディオ信号を得ていることが理解されよう。
【０１６６】
例えば、エンコーダが、第yのデータフレーム中のM個のサブバンドの参照情報および第(y-1)のデータフレーム中のL個のサブバンドの信号タイプに従って、第yのデータフレーム中の第1の数量のサブバンドの修正因子を決定するといった、特定の広帯域オーディオ信号についての一例を使用して、本発明の本実施形態において提供した符号化方法における量子化周波数エンベロープ値を修正するプロセスを詳細に以下に記載する。
【０１６７】
y=6であり、N=18である、すなわち、エンコーダが広帯域オーディオ信号の第6のデータフレームを符号化すると仮定する。広帯域オーディオ信号の第6のデータフレームがエンコーダに入力された後に、エンコーダは、第6のデータフレームに関してMDCT変換をまず行い、0から8000Hzの範囲内の320個のスペクトル係数を得る。図3に示したように、エンコーダは、第6のデータフレームの320個のスペクトル係数を聴覚感知特性に従って非等間隔で18個のサブバンドに分割する。第6のデータフレームがエンコーダに入力される前に、エンコーダは、広帯域オーディオ信号の、エンコーダに入力される、第5のデータフレームに関してMDCT変換を行った後に0から8000Hzの範囲内の320個のスペクトル係数を得て、第5のデータフレームの320個のスペクトル係数を聴覚感知特性に従って非等間隔で18個のサブバンドに分割もする。第6のデータフレーム中の18個のサブバンドの周波数エンベロープを計算および量子化した後に、エンコーダは、第6のデータフレーム中の18個のサブバンドの量子化周波数エンベロープのインデックス値および第6のデータフレーム中の18個のサブバンドの量子化周波数エンベロープ値fenvを得る。
【０１６８】
(1) 第6のデータフレームにおいてより高い周波数を有している3個のサブバンドおよび第5のデータフレームにおいてより高い周波数を有している2個のサブバンドが選択されている場合には、すなわち、M=3且つL=2である場合には、第yのデータフレーム中のM個のサブバンドは、第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドであり、第(y-1)のデータフレーム中のL個のサブバンドは、第5のデータフレーム中の第17のサブバンドおよび第18のサブバンドである。第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドの信号タイプがそれぞれ高調波、非高調波、および高調波であり、第5のデータフレーム中の第17のサブバンドおよび第18のサブバンドの量子化ビット割り振り状態がそれぞれ「1」および「0」であり、第5のデータフレーム中の第17のサブバンドおよび第18のサブバンドの信号タイプがそれぞれ高調波および非高調波であると仮定する。
【０１６９】
M>Lであるため、好ましくは、エンコーダは、第6のデータフレーム中の3個のサブバンドのみの量子化周波数エンベロープ値を修正する必要がある、すなわち、エンコーダは、第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドのみを修正する必要がある。
【０１７０】
説明を簡潔にするために、第16のサブバンド、第17のサブバンド、および第18のサブバンドの修正因子を決定する方法を詳細に以下に記載する。
【０１７１】
まず、エンコーダは、第6のデータフレーム中の第16のサブバンドが高調波であれば、第16のサブバンドに対応する第1の修正因子factor1が1より大きい値であると、第6のデータフレーム中の第17のサブバンドが非高調波であれば、第17のサブバンドに対応する第1の修正因子factor1が1以下の値であると、第1の修正因子factor1を決定し、同様に、第6のデータフレーム中の第18のサブバンドに対応するfactor1が1より大きい値であると決定する。サブバンドの信号タイプが高調波である場合には、factor1が、第1の式を使用した計算により得られ、サブバンドの信号タイプが非高調波である場合には、factor1が、第2の式を使用した計算により得られる。
【０１７２】
その後、エンコーダは、エンコーダが第3の修正因子および第4の修正因子をまず決定する必要がある第2の修正因子factor2を決定する。第3の修正因子を決定することについては、第5のデータフレーム中の第17のサブバンドおよび第18のサブバンドの量子化ビット割り振り状態が、それぞれ「1」および「0」であるので、第5のデータフレーム中の第17のサブバンドに対応する第3の修正因子factor3は1より大きい値であり、第5のデータフレーム中の第18のサブバンドに対応する第3の修正因子factor3は1未満の値である。サブバンドの量子化ビット割り振り状態が「1」である場合には、factor3が、第3の式を使用した計算により得られ、サブバンドの量子化ビット割り振り状態が「0」である場合には、factor3が、第4の式を使用した計算により得られる。第4の修正因子を決定することについては、第5のデータフレーム中の第17のサブバンドおよび第18のサブバンドの信号タイプが、それぞれ高調波および非高調波であるので、第5のデータフレーム中の第17のサブバンドに対応する第4の修正因子factor4は1より大きい値であり、第5のデータフレーム中の第18のサブバンドに対応する第4の修正因子factor4は1未満の値である。サブバンドの信号タイプが高調波である場合には、factor4が、第1の式を使用した計算により得られ、サブバンドの信号タイプが非高調波である場合には、factor4が、第2の式を使用した計算により得られる。
【０１７３】
好ましくは、第5のデータフレーム中の第17のサブバンドを修正するために使用される第2の修正因子は、第5のデータフレーム中の第17のサブバンドに対応する第3の修正因子factor3と第5のデータフレーム中の第17のサブバンドに対応する第4の修正因子factor4との積であり、第5のデータフレーム中の第18のサブバンドを修正するために使用される第2の修正因子は、第5のデータフレーム中の第18のサブバンドに対応する第3の修正因子factor3と第5のデータフレーム中の第18のサブバンドに対応する第4の修正因子factor4との積である。
【０１７４】
最後に、エンコーダは、M個の第1の修正因子のうちのL個の第1の修正因子およびL個の第2の修正因子に従って第yのデータフレーム中のM個のサブバンドのうちのL個のサブバンドの量子化周波数エンベロープ値を対応するように修正し得るし、エンコーダは、M個の第1の修正因子のうちの残りのM-L個の第1の修正因子に従って第yのデータフレーム中のM個のサブバンドのうちの残りのM-L個のサブバンドの量子化周波数エンベロープ値を対応するように修正する。この例においては、M=3且つL=2であり、したがって、第6のデータフレームにおいて、エンコーダは、第6のデータフレーム中の第17のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第17のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第17のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第17のサブバンドの修正された量子化周波数エンベロープ値を得て、同時に、エンコーダは、第6のデータフレーム中の第18のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第18のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第18のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第18のサブバンドの修正された量子化周波数エンベロープ値を得て、同時に、エンコーダは、第6のデータフレーム中の第16のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第16のサブバンドに対応する第1の修正因子を乗じて第6のデータフレーム中の第16のサブバンドの修正された量子化周波数エンベロープ値を得て、その結果、エンコーダは、第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドの量子化周波数エンベロープ値を修正する。すなわち、
【０１７５】
第6のデータフレーム中の第16のサブバンドについては、修正されたfenv16=factor1xfenv16である、ここで、factor1は、第6のデータフレーム中の第16のサブバンドに対応する第1の修正因子であり、修正されたfenv16は、第6のデータフレーム中の第16のサブバンドの修正された量子化周波数エンベロープ値であり、fenv16は、第6のデータフレーム中の第16のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１７６】
第6のデータフレーム中の第17のサブバンドについては、
修正されたfenv17=factor1xfactor2xfenv17である、ここで、factor2=factor3xfactor4であり、factor1は、第6のデータフレーム中の第17のサブバンドに対応する第1の修正因子であり、factor2は、第5のデータフレーム中の第17のサブバンドに対応する第2の修正因子であり、factor3は、第5のデータフレーム中の第17のサブバンドに対応する第3の修正因子であり、factor4は、第5のデータフレーム中の第17のサブバンドに対応する第4の修正因子であり、修正されたfenv17は、第6のデータフレーム中の第17のサブバンドの修正された量子化周波数エンベロープ値であり、fenv17は、第6のデータフレーム中の第17のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１７７】
同様に、第6のデータフレーム中の第18のサブバンドについては、
修正されたfenv18=factor1xfactor2xfenv18である、ここで、修正されたfenv18は、第6のデータフレーム中の第18のサブバンドの修正された量子化周波数エンベロープ値であり、fenv18は、第6のデータフレーム中の第18のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１７８】
(2) 第6のデータフレームにおいてより高い周波数を有している3個のサブバンドおよび第5のデータフレームにおいてより高い周波数を有している3個のサブバンドが選択されている場合には、すなわち、M=3且つL=3である場合には、第yのデータフレーム中のM個のサブバンドは、第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドであり、第(y-1)のデータフレーム中のL個のサブバンドは、第5のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドである。第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドに対応する第1の修正因子と、第5のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドに対応する第2の修正因子とを決定するための方法は、M>Lである場合に使用される方法と同一であるので、詳細を本明細書では再び記載していない。
【０１７９】
M=Lであるため、エンコーダは、M個の第1の修正因子およびL個の第2の修正因子に従って第yのデータフレーム中のM個のサブバンドの量子化周波数エンベロープ値を対応するように修正し得る。この例においては、M=3且つL=3であり、したがって、第6のデータフレームにおいて、エンコーダは、第6のデータフレーム中の第16のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第16のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第16のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第16のサブバンドの修正された量子化周波数エンベロープ値を得て、同時に、エンコーダは、第6のデータフレーム中の第17のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第17のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第17のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第17のサブバンドの修正された量子化周波数エンベロープ値を得て、同時に、エンコーダは、第6のデータフレーム中の第18のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第18のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第18のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第18のサブバンドの修正された量子化周波数エンベロープ値を得て、その結果、エンコーダは、第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドの量子化周波数エンベロープ値を修正する。すなわち、
【０１８０】
第6のデータフレーム中の第16のサブバンドについては、
修正されたfenv16=factor1xfactor2xfenv16、ここで、
factor2=factor3xfactor4であり、factor1は、第6のデータフレーム中の第16のサブバンドに対応する第1の修正因子であり、factor2は、第5のデータフレーム中の第16のサブバンドに対応する第2の修正因子であり、factor3は、第5のデータフレーム中の第16のサブバンドに対応する第3の修正因子であり、factor4は、第5のデータフレーム中の第16のサブバンドに対応する第4の修正因子であり、修正されたfenv16は、第6のデータフレーム中の第16のサブバンドの修正された量子化周波数エンベロープ値であり、fenv16は、第6のデータフレーム中の第16のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１８１】
同様に、第6のデータフレーム中の第17のサブバンドについては、
修正されたfenv17=factor1xfactor2xfenv17である、ここで、修正されたfenv17は、第6のデータフレーム中の第17のサブバンドの修正された量子化周波数エンベロープ値であり、fenv17は、第6のデータフレーム中の第17のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１８２】
同様に、第6のデータフレーム中の第18のサブバンドについては、
修正されたfenv18=factor1xfactor2xfenv18である、ここで、修正されたfenv18は、第6のデータフレーム中の第18のサブバンドの修正された量子化周波数エンベロープ値であり、fenv18は、第6のデータフレーム中の第18のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１８３】
(3) 第6のデータフレームにおいてより高い周波数を有している3個のサブバンドおよび第5のデータフレームにおいてより高い周波数を有している4個のサブバンドが選択されている場合には、すなわち、M=3且つL=4である場合には、第yのデータフレーム中のM個のサブバンドは、第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドであり、第(y-1)のデータフレーム中のL個のサブバンドは、第5のデータフレーム中の第15のサブバンド、第16のサブバンド、第17のサブバンド、および第18のサブバンドである。第6のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドにそれぞれ対応している第1の修正因子と、第5のデータフレーム中の第16のサブバンド、第17のサブバンド、および第18のサブバンドにそれぞれ対応している第2の修正因子と、第5のデータフレーム中の第15のサブバンドに対応する第2の修正因子とを決定するための方法は、M>Lである場合に使用される方法と同一であるので、詳細を本明細書では再び記載していない。
【０１８４】
M<Lであるため、好ましくは、エンコーダは、第6のデータフレーム中の4個のサブバンドのみの量子化周波数エンベロープ値を修正する必要がある、すなわち、エンコーダは、第6のデータフレーム中の第15のサブバンド、第16のサブバンド、第17のサブバンド、および第18のサブバンドのみを修正する必要がある。M<Lである場合には、エンコーダは、L個の第2の修正因子のうちのM個の第2の修正因子およびM個の第1の修正因子に従って第yのデータフレーム中のM個のサブバンドの量子化周波数エンベロープ値を対応するように修正し、エンコーダは、L個の第2の修正因子のうちの残りのL-M個の第2の修正因子に従って第yのデータフレーム中のL個のサブバンドのうちの残りのL-M個のサブバンドの量子化周波数エンベロープ値を対応するように修正する。この例においては、M=3且つL=4であり、したがって、第6のデータフレームにおいて、エンコーダは、第6のデータフレーム中の第16のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第16のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第16のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第16のサブバンドの修正された量子化周波数エンベロープ値を得て、同時に、エンコーダは、第6のデータフレーム中の第17のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第17のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第17のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第17のサブバンドの修正された量子化周波数エンベロープ値を得て、同時に、エンコーダは、第6のデータフレーム中の第18のサブバンドの量子化周波数エンベロープ値に第6のデータフレーム中の第18のサブバンドに対応する第1の修正因子および第5のデータフレーム中の第18のサブバンドに対応する第2の修正因子を乗じて第6のデータフレーム中の第18のサブバンドの修正された量子化周波数エンベロープ値を得て、同時に、エンコーダは、第6のデータフレーム中の第15のサブバンドの量子化周波数エンベロープ値に第5のデータフレーム中の第15のサブバンドの第2の修正因子を乗じて第6のデータフレーム中の第15のサブバンドの修正された量子化周波数エンベロープ値を得て、その結果、エンコーダは、第6のデータフレーム中の第15のサブバンド、第16のサブバンド、第17のサブバンド、および第18のサブバンドの量子化周波数エンベロープ値を修正する。すなわち、
【０１８５】
第6のデータフレーム中の第15のサブバンドについては、修正されたfenv15=factor2xfenv15である、ここで、factor2=factor3xfactor4であり、factor2は、第5のデータフレーム中の第15のサブバンドに対応する第2の修正因子であり、factor3は、第5のデータフレーム中の第15のサブバンドに対応する第3の修正因子であり、factor4は、第5のデータフレーム中の第15のサブバンドに対応する第4の修正因子であり、修正されたfenv15は、第6のデータフレーム中の第15のサブバンドの修正された量子化周波数エンベロープ値であり、fenv15は、第6のデータフレーム中の第15のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１８６】
第6のデータフレーム中の第16のサブバンドについては、
修正されたfenv16=factor1xfactor2xfenv16である、ここで、factor1は、第6のデータフレーム中の第16のサブバンドに対応する第1の修正因子であり、factor2は、第5のデータフレーム中の第16のサブバンドに対応する第2の修正因子であり、修正されたfenv16は、第6のデータフレーム中の第16のサブバンドの修正された量子化周波数エンベロープ値であり、fenv16は、第6のデータフレーム中の第16のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１８７】
同様に、第6のデータフレーム中の第17のサブバンドについては、
修正されたfenv17=factor1xfactor2xfenv17である、ここで、修正されたfenv17は、第6のデータフレーム中の第17のサブバンドの修正された量子化周波数エンベロープ値であり、fenv17は、第6のデータフレーム中の第17のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１８８】
同様に、第6のデータフレーム中の第18のサブバンドについては、
修正されたfenv18=factor1xfactor2xfenv18である、ここで、修正されたfenv18は、第6のデータフレーム中の第18のサブバンドの修正された量子化周波数エンベロープ値であり、fenv18は、第6のデータフレーム中の第18のサブバンドの修正されていない量子化周波数エンベロープ値である。
【０１８９】
本発明の本実施形態において提供した符号化方法によれば、現在のデータフレームのスペクトル係数をサブバンドに分割した後に、エンコーダは、サブバンドの量子化周波数エンベロープ値を取得し、エンコーダは、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正し、エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振り、エンコーダは、サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化し、最後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む。本解決手法によれば、量子化ビット割り振りをオーディオ信号の現在のデータフレーム中のサブバンドのスペクトル係数に対して行う前に、サブバンドの量子化周波数エンベロープ値を現在のデータフレームの信号タイプおよび前回のデータフレームに関する情報に従って修正することができる、したがって、サブバンドの修正された量子化周波数エンベロープ値および利用可能なビットの数量に従ってサブバンドのスペクトル係数に対する量子化ビット割り振りを行うことが、オーディオ信号のスペクトル係数に対する適切な量子化ビット割り振りという目的を達成することを可能としており、それによって、復号によりデコーダによって得られる信号の品質を改善している。
【０１９０】
実施形態3
図4に示したように、本発明の本実施形態は、符号化装置1を提供している。符号化装置1は、
現在のデータフレームのスペクトル係数をサブバンドに分割した後に、サブバンドの量子化周波数エンベロープ値を取得するように構成される、取得ユニット10と、
取得ユニット10によって取得されたサブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正するように構成される、修正ユニット11と、
第1の数量のサブバンドの、修正ユニット11によって修正された、量子化周波数エンベロープ値に従って、サブバンドに量子化ビットを割り振るように構成される、割り振りユニット12と、
サブバンドのうちの割り振りユニット12によって量子化ビットが割り振られているサブバンドのスペクトル係数を量子化するように構成される、量子化ユニット13と、
量子化ビットが割り振られているサブバンドの、量子化ユニット13によって量子化された、スペクトル係数をビットストリームに書き込むように構成される、多重化ユニット14とを備えていてもよい。
【０１９１】
必要に応じて、取得ユニット10は、第1の数量のサブバンドの修正因子を取得するようにさらに構成される。
【０１９２】
修正ユニット11は、取得ユニット10によって取得された第1の数量のサブバンドの修正因子を使用して、第1の数量のサブバンドの、取得ユニット10によって取得された、量子化周波数エンベロープ値を修正するようにさらに構成される。
【０１９３】
必要に応じて、図5に示したように、符号化装置1は、決定ユニット15をさらに備える。
【０１９４】
取得ユニット10は、第1の数量のサブバンドの信号タイプを取得するようにさらに構成される。
【０１９５】
決定ユニット15は、取得ユニット10によって取得された第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定するように構成される。
【０１９６】
決定ユニット15は、第1の数量のサブバンドのうちの第1のサブバンドの、取得ユニット10によって取得された、信号タイプが高調波である場合には、第1のサブバンドの修正因子が1より大きいと決定する、または、第1の数量のサブバンドのうちの第1のサブバンドの、取得ユニット10によって取得された、信号タイプが非高調波である場合には、第1のサブバンドの修正因子が1以下であると決定するようにさらに構成される。
【０１９７】
必要に応じて、取得ユニット10は、第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定する前に、現在のデータフレームの前回のデータフレーム中の第2の数量のサブバンドについての記憶されている参照情報を取得するようにさらに構成される、ここで、第2の数量は第1の数量以下である。
【０１９８】
決定ユニット15は、取得ユニット10によって取得された第1の数量のサブバンドの信号タイプおよび第2の数量のサブバンドの参照情報に従って、第1の数量のサブバンドの修正因子を決定するように特に構成される。
【０１９９】
必要に応じて、決定ユニット15は、取得ユニット10によって取得された第1の数量のサブバンドのうちの第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定し、第2の数量のサブバンドのうちの、第1のサブバンドに対応する、第2のサブバンドの、取得ユニット10によって取得された、参照情報に従って、第1のサブバンドの第2の修正因子を決定し、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するようにさらに構成される。
【０２００】
必要に応じて、取得ユニット10によって取得された第2のサブバンドの参照情報は、第2のサブバンドの量子化ビット割り振り状態および/または第2のサブバンドの信号タイプを含む、ここで、第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態を含む場合には、決定ユニット15によって決定された第2の修正因子は第3の修正因子である、または、第2のサブバンドの参照情報が第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第4の修正因子である、または、第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態および第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第3の修正因子と第4の修正因子との積である。
【０２０１】
必要に応じて、決定ユニット15は、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていないことを示している場合には、第3の修正因子が1未満であると決定する、または、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていることを示している場合には、第3の修正因子が1より大きいと決定するようにさらに構成され、取得ユニット10によって取得された第2のサブバンドの信号タイプが高調波である場合には、第4の修正因子が1より大きいと決定する、または、取得ユニット10によって取得された第2のサブバンドの信号タイプが非高調波である場合には、第4の修正因子が1以下であると決定するようにさらに構成される。
【０２０２】
必要に応じて、決定ユニット15によって決定された第1のサブバンドの第2の修正因子は、第2のサブバンドの周波数エンベロープ値の任意の2つの値の比、第2の数量のサブバンドの平均周波数エンベロープ値、第2の数量のサブバンドの帯域幅値、第2の数量のサブバンドの周波数エンベロープ値の最大値、および第2の数量のサブバンドの周波数エンベロープ分散値に従って決定される。
【０２０３】
必要に応じて、決定ユニット15によって決定された第1のサブバンドの第1の修正因子は、第1のサブバンドの周波数エンベロープ値の任意の2つの値の比、第1の数量のサブバンドの平均周波数エンベロープ値、第1の数量のサブバンドの帯域幅値、第1の数量のサブバンドの周波数エンベロープ値の最大値、および第1の数量のサブバンドの周波数エンベロープ分散値に従って決定される。
【０２０４】
必要に応じて、取得ユニット10は、現在のデータフレームの前回のデータフレーム中の第1の数量のサブバンドについての記憶されている参照情報を取得するようにさらに構成される。
【０２０５】
決定ユニット15は、取得ユニット10によって取得された前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するようにさらに構成される。
【０２０６】
必要に応じて、取得ユニット10は、前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定する前に、現在のデータフレーム中のサブバンドのうちの第3の数量のサブバンドの信号タイプを取得するようにさらに構成される、ここで、第3の数量は第1の数量以下である。
【０２０７】
決定ユニット15は、取得ユニット10によって取得された前回のデータフレーム中の第1の数量のサブバンドの参照情報および第3の数量のサブバンドの信号タイプに従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するように特に構成される。
【０２０８】
必要に応じて、決定ユニット15は、取得ユニット10によって取得された前回のデータフレーム中の第1の数量のサブバンドのうちの第2のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドのうちの第1のサブバンドの第2の修正因子を決定し、取得ユニット10によって取得された第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定し、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するようにさらに構成される。
【０２０９】
必要に応じて、図6に示したように、符号化装置1は、記憶ユニット16をさらに備える。
【０２１０】
記憶ユニット16は、割り振りユニット12が第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振った後に、第1の数量のサブバンドの参照情報を記憶するようにさらに構成される。
【０２１１】
本発明の本実施形態において提供した符号化装置によれば、現在のデータフレームのスペクトル係数をサブバンドに分割した後に、符号化装置は、サブバンドの量子化周波数エンベロープ値を取得し、符号化装置は、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正し、符号化装置は、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振り、符号化装置は、サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化し、最後に、符号化装置は、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む。本解決手法によれば、量子化ビット割り振りをオーディオ信号の現在のデータフレーム中のサブバンドのスペクトル係数に対して行う前に、サブバンドの量子化周波数エンベロープ値を現在のデータフレームの信号タイプおよび前回のデータフレームに関する情報に従って修正することができる、したがって、サブバンドの修正された量子化周波数エンベロープ値および利用可能なビットの数量に従ってサブバンドのスペクトル係数に対する量子化ビット割り振りを行うことが、オーディオ信号のスペクトル係数に対する適切な量子化ビット割り振りという目的を達成することを可能としており、それによって、復号によりデコーダによって得られる信号の品質を改善している。
【０２１２】
実施形態4
図7に示したように、本発明の本実施形態は、エンコーダを提供している。エンコーダは、プロセッサ20、メモリ21、通信インターフェース22、およびシステムバス23を備え得る。
【０２１３】
プロセッサ20、メモリ21、および通信インターフェース22は、相互に接続し、バス23を使用して相互に通信している。
【０２１４】
プロセッサ20は、単一のコアまたはマルチコア中央処理ユニット、または特定用途向け集積回路、または本発明の本実施形態を実施するように構成される1つまたは複数の集積回路であってもよい。
【０２１５】
メモリ21は、高速RAMメモリであってもよいし、または不揮発性メモリ、例えば、少なくとも1つの磁気ディスクメモリであってもよい。
【０２１６】
メモリ21は、エンコーダによって実行される命令を記憶するように構成される。特に、エンコーダによって実行される命令は、ソフトウェアコードおよびソフトウェアプログラムを含んでいてもよい。
【０２１７】
具体的には、プロセッサ20は、システムバス23を使用して通信インターフェース22から取得された現在のデータフレームのスペクトル係数をサブバンドに分割した後に、サブバンドの量子化周波数エンベロープ値を取得し、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正し、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振り、サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化し、最後に、システムバス23を使用して、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込むように構成される。メモリ21は、現在のデータフレーム中の第1の数量のサブバンドの信号タイプのソフトウェアコードおよび現在のデータフレームの前回のデータフレーム中の第2の数量のサブバンドの参照情報のソフトウェアコード、または現在のデータフレーム中の第3の数量のサブバンドの信号タイプのソフトウェアコードおよび現在のデータフレームの前回のデータフレーム中の第1の数量のサブバンドの参照情報のソフトウェアコード、ならびに前述のプロセスを完了するようにエンコーダを制御するためのソフトウェアプログラムを記憶するように構成されていてもよく、その結果、プロセッサ20は、メモリ21に記憶したソフトウェアプログラムを実行することによって、および対応するソフトウェアコードを呼び出すことによって、前述のプロセスを完了することができる。
【０２１８】
必要に応じて、プロセッサ20は、第1の数量のサブバンドの修正因子を取得し、第1の数量のサブバンドの修正因子を使用して第1の数量のサブバンドの量子化周波数エンベロープ値を修正するようにさらに構成される。
【０２１９】
必要に応じて、プロセッサ20は、システムバス23を使用して通信インターフェース22から第1の数量のサブバンドの信号タイプを取得し、第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定するようにさらに構成される。
【０２２０】
必要に応じて、プロセッサ20は、第1の数量のサブバンドのうちの第1のサブバンドの信号タイプが高調波である場合には、第1のサブバンドの修正因子が1より大きいと決定する、または、第1の数量のサブバンドのうちの第1のサブバンドの信号タイプが非高調波である場合には、第1のサブバンドの修正因子が1以下であると決定するようにさらに構成される。
【０２２１】
必要に応じて、プロセッサ20は、第1の数量のサブバンドの信号タイプに従って第1の数量のサブバンドの修正因子を決定する前に、現在のデータフレームの前回のデータフレーム中の第2の数量のサブバンドについての記憶されている参照情報を取得するようにさらに構成される、ここで、第2の数量は第1の数量以下である。
【０２２２】
必要に応じて、プロセッサ20は、第1の数量のサブバンドの信号タイプおよび第2の数量のサブバンドの参照情報に従って第1の数量のサブバンドの修正因子を決定するように特に構成される。
【０２２３】
必要に応じて、プロセッサ20は、第1の数量のサブバンドのうちの第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定し、第2の数量のサブバンドのうちの、第1のサブバンドに対応する、第2のサブバンドの参照情報に従って、第1のサブバンドの第2の修正因子を決定し、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するようにさらに構成される。
【０２２４】
必要に応じて、第2のサブバンドの参照情報は、第2のサブバンドの量子化ビット割り振り状態および/または第2のサブバンドの信号タイプを含む、ここで、第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態を含む場合には、第2の修正因子は第3の修正因子である、または、第2のサブバンドの参照情報が第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第4の修正因子である、または、第2のサブバンドの参照情報が第2のサブバンドの量子化ビット割り振り状態および第2のサブバンドの信号タイプを含む場合には、第2の修正因子は第3の修正因子と第4の修正因子との積である。
【０２２５】
必要に応じて、プロセッサ20は、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていないことを示している場合には、第3の修正因子が1未満であると決定する、または、第2のサブバンドの量子化ビット割り振り状態が、スペクトル係数が符号化されていることを示している場合には、第3の修正因子が1より大きいと決定するようにさらに構成され、第2のサブバンドの信号タイプが高調波である場合には、第4の修正因子が1より大きいと決定する、または、第2のサブバンドの信号タイプが非高調波である場合には、第4の修正因子が1以下であると決定するようにさらに構成される。
【０２２６】
必要に応じて、第1のサブバンドの第1の修正因子は、第1のサブバンドの周波数エンベロープ値の任意の2つの値の比、第1の数量のサブバンドの平均周波数エンベロープ値、第1の数量のサブバンドの帯域幅値、第1の数量のサブバンドの周波数エンベロープ値の最大値、および第1の数量のサブバンドの周波数エンベロープ分散値に従って決定され、第1のサブバンドの第2の修正因子は、第2のサブバンドの周波数エンベロープ値の任意の2つの値の比、第2の数量のサブバンドの平均周波数エンベロープ値、第2の数量のサブバンドの帯域幅値、第2の数量のサブバンドの周波数エンベロープ値の最大値、および第2の数量のサブバンドの周波数エンベロープ分散値に従って決定される。
【０２２７】
必要に応じて、プロセッサ20は、現在のデータフレームの前回のデータフレーム中の第1の数量のサブバンドの参照情報を取得するようにさらに構成される。
【０２２８】
必要に応じて、プロセッサ20は、前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するようにさらに構成される。
【０２２９】
必要に応じて、プロセッサ20は、前回のデータフレーム中の第1の数量のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定する前に、現在のデータフレーム中のサブバンドのうちの第3の数量のサブバンドの信号タイプを取得するようにさらに構成される、ここで、第3の数量は第1の数量以下である。
【０２３０】
必要に応じて、プロセッサ20は、前回のデータフレーム中の第1の数量のサブバンドの参照情報および第3の数量のサブバンドの信号タイプに従って現在のデータフレーム中の第1の数量のサブバンドの修正因子を決定するように特に構成される。
【０２３１】
必要に応じて、プロセッサ20は、前回のデータフレーム中の第1の数量のサブバンドのうちの第2のサブバンドの参照情報に従って現在のデータフレーム中の第1の数量のサブバンドのうちの第1のサブバンドの第2の修正因子を決定し、第1のサブバンドの信号タイプに従って第1のサブバンドの第1の修正因子を決定し、第1のサブバンドの修正因子として第1の修正因子と第2の修正因子との積を使用するようにさらに構成される。
【０２３２】
プロセッサ20は、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振った後に、第1の数量のサブバンドの参照情報を記憶するようにさらに構成される。
【０２３３】
本発明の本実施形態において提供したエンコーダによれば、現在のデータフレームのスペクトル係数をサブバンドに分割した後に、エンコーダは、サブバンドの量子化周波数エンベロープ値を取得し、エンコーダは、サブバンドのうちの第1の数量のサブバンドの量子化周波数エンベロープ値を修正し、エンコーダは、第1の数量のサブバンドの修正された量子化周波数エンベロープ値に従ってサブバンドに量子化ビットを割り振り、エンコーダは、サブバンドのうちの量子化ビットが割り振られているサブバンドのスペクトル係数を量子化し、最後に、エンコーダは、量子化ビットが割り振られているサブバンドの量子化されたスペクトル係数をビットストリームに書き込む。本解決手法によれば、量子化ビット割り振りをオーディオ信号の現在のデータフレーム中のサブバンドのスペクトル係数に対して行う前に、サブバンドの量子化周波数エンベロープ値を現在のデータフレームの信号タイプおよび前回のデータフレームに関する情報に従って修正することができる、したがって、サブバンドの修正された量子化周波数エンベロープ値および利用可能なビットの数量に従ってサブバンドのスペクトル係数に対する量子化ビット割り振りを行うことが、オーディオ信号のスペクトル係数に対する適切な量子化ビット割り振りという目的を達成することを可能としており、それによって、復号によりデコーダによって得られる信号の品質を改善している。
【０２３４】
簡便且つ簡潔な記載を目的として、前述の機能モジュールの分割が図示するための一例として行われていることを当業者は明確に理解すべきであろう。実際の適用においては、前述の機能を、異なる機能モジュールに割り振り、要件に従って実装することが可能である、すなわち、装置の内部構造は、上述した機能のすべてまたは一部を実装するために、異なる機能モジュールに分割される。前述のシステム、装置、およびユニットの詳細な動作プロセスについては、前述の方法の実施形態における対応するプロセスを参照すればよいので、詳細を本明細書では再び記載していない。
【０２３５】
本出願において提供したいくつかの実施形態においては、開示したシステム、装置、および方法を他の様式で実装してもよいことを理解すべきである。例えば、記載した装置の実施形態は、例示的なものにすぎない。例えば、モジュールまたはユニット分割は、論理機能分割にすぎず、実際の実施形態においては他の分割であってもよい。例えば、複数のユニットまたはコンポーネントを組み合わせても別のシステムと統合してもよいし、またはいくつかの特徴を無視しても行わなくてもよい。加えて、図示または記載した相互接続または直接接続または通信接続は、いくつかのインターフェースによって実装されてもよい。装置とユニットとの間の間接接続または通信接続は、電子的に、機械的に、または他の形式で実装されてもよい。
【０２３６】
別個の部分として記載したユニットは、物理的に別個のものであってもなくてもよいし、ユニットとして図示した部分は、物理ユニットであってもなくてもよいし、一ヶ所に配置されていてもよいし、または複数のネットワークユニットに分散されていてもよい。実施形態の解決手法の目的を達成するために、一部またはすべてのユニットを実際の必要性に応じて選択してもよい。
【０２３７】
加えて、本出願の実施形態における機能ユニットは1つの処理ユニットに統合されてもよいし、またはユニットの各々は物理的に単独で存在してもよいし、または2つ以上のユニットは1つのユニットに統合される。統合したユニットを、ハードウェアの形式で実装してもよいし、またはソフトウェア機能ユニットの形式で実装してもよい。
【０２３８】
統合したユニットをソフトウェア機能ユニットの形式で実装し独立した製品として販売または使用する場合には、統合したユニットが、コンピュータ可読記憶媒体に記憶されていてもよい。そのような見解に基づいて、本質的には本発明の技術的解決手法、または従来技術に貢献する部分、または技術的解決手法のすべてまたは一部を、ソフトウェア製品の形式で実装してもよい。ソフトウェア製品は、記憶媒体に記憶されており、コンピュータデバイス(パーソナルコンピュータ、サーバ、またはネットワークデバイスであってもよい)またはプロセッサ(processor)に本発明の実施形態に記載した方法のステップのすべてまたは一部を行うように指示するためのいくつかの命令を含む。前述の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリーメモリ(ROM、Read-Only Memory)、ランダムアクセスメモリ(RAM、Random Access Memory)、磁気ディスク、または光ディスクなどの、プログラムコードを記憶し得る任意の媒体を含む。
【０２３９】
前述の記載は、本発明の特定の実施様態にすぎず、本発明の保護範囲を限定することを意図していない。本発明に開示の技術的範囲において当業者が容易に想到する任意の変形または置換は、本発明の保護範囲に含まれるものとする。したがって、本発明の保護範囲は、特許請求の範囲の保護範囲に従うものとする。
【符号の説明】
【０２４０】
1  符号化装置
10  取得ユニット
11  修正ユニット
12  割り振りユニット
13  量子化ユニット
14  多重化ユニット
15  決定ユニット
16  記憶ユニット
20  プロセッサ
21  メモリ
22  通信インターフェース
23  システムバス
【図１】
0006319753.tif 000008
【図２】
0006319753.tif 000009
【図３】
0006319753.tif 000010
【図４】
0006319753.tif 000011
【図５】
0006319753.tif 000012
【図６】
0006319753.tif 000013
【図７】
0006319753.tif 000014