(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-13
(45)【発行日】2022-05-23
(54)【発明の名称】スケールパラメータのダウンサンプリングまたは補間を使用してオーディオ信号をエンコードおよびデコードするための装置および方法
(51)【国際特許分類】
G10L 19/035 20130101AFI20220516BHJP
G10L 19/02 20130101ALI20220516BHJP
G10L 19/00 20130101ALI20220516BHJP
【FI】
G10L19/035 A
G10L19/02 150
G10L19/00 330B
(21)【出願番号】P 2020524593
(86)(22)【出願日】2018-11-05
(86)【国際出願番号】 EP2018080137
(87)【国際公開番号】W WO2019091904
(87)【国際公開日】2019-05-16
【審査請求日】2020-06-13
(31)【優先権主張番号】PCT/EP2017/078921
(32)【優先日】2017-11-10
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500341779
【氏名又は名称】フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン
(74)【代理人】
【識別番号】100134119
【氏名又は名称】奥町 哲行
(72)【発明者】
【氏名】ラヴェッリ・エマニュエル
(72)【発明者】
【氏名】シュネル・マーカス
(72)【発明者】
【氏名】ベンドルフ・コンラッド
(72)【発明者】
【氏名】ルツキー・マンフレッド
(72)【発明者】
【氏名】ディーツ・マーティン
(72)【発明者】
【氏名】コーセ・スリカンス
【審査官】大野 弘
(56)【参考文献】
【文献】特表平01-501435(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 19/035
G10L 19/02
G10L 19/00
(57)【特許請求の範囲】
【請求項1】
オーディオ信号
(160)をエンコードするための装
置であって、
前記オーディオ信号
(160)をスペクトル表現に変換するための変換器(100)と、
前記スペクトル表現から第1セットのスケールパラメータを計算するためのスケールパラメータ計算機(110)と、
第2セットのスケールパラメータを取得するために前記第1セットのスケールパラメータをダウンサンプリングするためのダウンサンプラ(130)であって、前記第2セットのスケールパラメータ内の第2の数のスケールパラメータは前記第1セットのスケールパラメータ内の第1の数のスケールパラメータよりも少ない、ダウンサンプラ(130)と、
前記第2セットのスケールパラメータのエンコード表現を生成するためのスケールパラメータエンコーダ(140)と、
前記第1セットのスケールパラメータを使用するかまたは第3セットのスケールパラメータを使用して前記スペクトル表現を処理するためのスペクトルプロセッサ(120)であって、前記第3セットのスケールパラメータは、前記第2の数のスケールパラメータよりも多い第3の数のスケールパラメータを有し、前記スペクトルプロセッサ(120)は、
第3セットのスケールパラメータを使用するときに、補間演算を使用して、前記第2セットのスケールパラメータから、または前記第2セットのスケールパラメータの前記エンコード表現から前記第3セットのスケールパラメータを導出するように構成されている、スペクトルプロセッサ(120)と、
前記スペクトル表現
のエンコード表現に関する情報および前記第2セットのスケールパラメータの前記エンコード表現に関する情報を備えるエンコード済み出力信号(170)を生成するための出力インターフェース(150)と、
を備え
、
前記スケールパラメータ計算機(110)は、前記スペクトル表現の複数の帯域の各帯域について、第1セットの線形領域量を取得するために線形領域内の振幅関連量を計算し、かつ前記第1セットのスケールパラメータとして第1セットの対数状領域量を取得するために、前記第1セットの線形領域量を対数状領域に変換するように構成されており、
前記ダウンサンプラ(130)は、前記対数状領域内の前記第2セットのスケールパラメータを取得するために、前記第1セットのスケールパラメータを前記対数状領域内にダウンサンプリングするように構成されている、装置。
【請求項2】
前記スペクトルプロセッサ(120)は、前記スペクトル表現を処理するために前記線形領域内で前記第1セットのスケールパラメータを使用し、または補間された対数状領域スケール
パラメータを取得するために前記対数状領域内の前記第2セットのスケールパラメータを補間し、前記第3セットのスケールパラメータを取得するために前記対数状領域スケール
パラメータを
前記線形領域に変換するように構成されている、
請求項
1に記載の装置。
【請求項3】
前記スケールパラメータ計算機(110)は、不均一な帯域について前記第1セットのスケールパラメータを計算するように構成されており、
前記ダウンサンプラ(130)は、前記第1セットの第1の所定数の周波数隣接スケールパラメータを有する第1のグループを組み合わせることによって前記第2セットの第1のスケール
パラメータを取得するために、前記第1セットのスケールパラメータをダウンサンプリングするように構成されており、前記ダウンサンプラ
(130)は、前記第1セットの第2の所定数の周波数隣接スケールパラメータを有する第2のグループを組み合わせることによって前記第2セットの第2のスケールパラメータを取得するために、前記第1セットのスケールパラメータをダウンサンプリングするように構成されており、前記第2の所定数は前記第1の所定数に等しく、前記第2のグループは、前記第1
のグループの要素とは異なる要素を有する、
請求項1
または2に記載の装置。
【請求項4】
前記第1セットの前記第1のグループの周波数隣接スケールパラメータおよび前記第1セットの前記第2のグループの周波数隣接スケールパラメータは、前記第1のグループおよび前記第2のグループが互いに重複するように、前記第1セットの少なくとも1つのスケールパラメータを共通して有する、請求項
3に記載の装置。
【請求項5】
前記ダウンサンプラ(130)は、
前記第1セットのスケールパラメータのあるグループの最初のスケールパラメータの間で平均演算を使用するように構成されており、前記グループは2つ以上の要素を有する、請求項1から
4のいずれか一項に記載の装置。
【請求項6】
前記平均演算は、前記グループの端のスケールパラメータよりも強い前記グループの中央のスケールパラメータを重み付けするように構成されている、
請求項
5に記載の装置。
【請求項7】
前記ダウンサンプラ(130)は、前記第2セットのスケールパラメータの平均がなくなるように、平均値除去(133)を実行するように構成されている、
請求項1から
6のいずれか一項に記載の装置。
【請求項8】
前記ダウンサンプラ(130)は、
前記対数状領域内の1.0より小さく0.0より大きいスケーリング係数を使用してスケーリング演算(134)を実行するように構成されている、
請求項1から
7のいずれか一項に記載の装置。
【請求項9】
前記スケールパラメータエンコーダ(140)は、ベクトル量子化器(141)を使用して前記第2セットを量子化およびエンコードするように構成されており、前記エンコード表現は、1つ以上のベクトル量子化器コードブックについて1つ以上のインデックス(146)を備える、
請求項1から
8のいずれか一項に記載の装置。
【請求項10】
前記スケール
パラメータエンコーダ(140)は、前記エンコード表
現に関連付けられた第2セットの量子化済みスケール
パラメータを提供するように構成されており、
前記スペクトルプロセッサ(120)は、前記第2セットの量子化済みスケール
パラメータ(145)から前記第
3セットのスケール
パラメータを導出するように構成されている、
請求項1から
9のいずれか一項に記載の装置。
【請求項11】
前記スペクトルプロセッサ(120)は、前記第3の数が前記第1の数に等しくなるようにこの
前記第3セットのスケールパラメータを決定するように構成されている、
請求項1から
10のいずれか一項に記載の装置。
【請求項12】
前記スペクトルプロセッサ(120)は、量子化済みスケール
パラメータ、および周波数に関して昇順の一連の量子化済みスケール
パラメータにおける前記量子化済みスケール
パラメータと次の量子化済みスケール
パラメータとの差に基づいて、補間されたスケール
パラメータ(121)を決定するように構成されている、
請求項1から
11のいずれか一項に記載の装置。
【請求項13】
前記スペクトルプロセッサ(120)は、前記量子化済みスケール
パラメータおよび前記差から、少なくとも2つの補間されたスケール
パラメータを決定するように構成されており、前記2つの補間されたスケール
パラメータの各々について、異なる重み係数が使用される、
請求項
12に記載の装置。
【請求項14】
前記重み係数は、前記補間されたスケール
パラメータに関連する周波数の増加とともに増加する、
請求項
13に記載の装置。
【請求項15】
前記スペクトルプロセッサ(120)は、
前記対数状領域で補間演算(121)を実行し、
前記第3セットのスケールパラメータを取得するために、補間されたスケール
パラメータを
前記線形領域に変換(122)するように構成されている、
請求項1から
14のいずれか一項に記載の装置。
【請求項16】
前記スケールパラメータ計算機(110)は、1セットの振幅関連量(111)を取得するために各帯域の振幅関連量を計算し、
前記第1セットのスケール
パラメータとして1セットの平滑化された振幅関連量を取得するために、前記
振幅関連量を平滑化(112)するように構成されている、
請求項1から
15のいずれか一項に記載の装置。
【請求項17】
前記スケールパラメータ計算機
(110)は、1セットの振幅関連量を取得するために、各帯域の振幅関連量を計算し、
前記
1セットの振幅関連量に対してプリエンファシス演算を実行(113)するように構成されており、前記プリエンファシス演算は、低周波数振幅が高周波数振幅に対して強調されるようになっている、
請求項1から
16のいずれか一項に記載の装置。
【請求項18】
前記スケールパラメータ計算機(110)は、1セットの振幅関連量を取得するために、各帯域の振幅関連量を計算し、
ノイズフロア加算演算(114)を実行するように構成されており、ノイズフロアは、前記スペクトル表現の2つ以上の周波数帯域からの平均値として導出された振幅関連量から計算される、
請求項1から
17のいずれか一項に記載の装置。
【請求項19】
前記スケール
パラメータ計算機(110)は、演算のグループのうちの少なくとも1つを実行するように構成されており、前記演算のグループは、複数の帯域の振幅関連量を計算すること(111)と、平滑化演算を実行すること(112)と、プリエンファシス演算を実行すること(113)と、ノイズフロア加算演算を実行すること(114)と、前記第1セットのスケールパラメータを取得するために対数状領域変換演算(115)を実行することを備える、請求項1から
18のいずれか一項に記載の装置。
【請求項20】
前記スペクトルプロセッサ(120)は、重み付けされたスペクトル表現を取得するために前記第3セットのスケール
パラメータを使用して、前記スペクトル表現におけるスペクトル値を重み付け(123)し、前記重み付けされたスペクトル表現に対して時間的ノイズ成形(TNS)演算(124)を適用するように構成されており、前記スペクトルプロセッサ(120)は、前記スペクトル表現の前記エンコード表現を取得するために、前記時間的ノイズ成形演算(124)の結果を量子化(125)およびエンコードするように構成されている、
請求項1から
19のいずれか一項に記載の装置。
【請求項21】
前記変換器(100)は、ウィンドウ化オーディオサンプルの一連のブロックを生成するための分析windower(101)と、ウィンドウ化オーディオサンプルの前記ブロックを一連のスペクトル表現に変換するための時間スペクトル変換器(102)とを備え、スペクトル表現はスペクトルフレームである、
請求項1から
20のいずれか一項に記載の装置。
【請求項22】
前記変換器(100)は、時間領域サンプルのブロックからMDCTスペクトルを取得するために、MDCT(修正離散コサイン変換)演算を適用するように構成されており、または
前記スケール
パラメータ計算機
(110)は、各帯域について、前記帯域のエネルギーを計算するように構成されており、前記計算は、スペクトル線を2乗すること、2乗したスペクトル線を加算すること、および前記2乗したスペクトル線を前記帯域の線の本数で除算することを含み、または
前記スペクトルプロセッサ(120)は、前記スペクトル表現のスペクトル値を重み付け(123)し、帯域スキームにしたがって前記スペクトル表現から導出されたスペクトル値を重み付け(123)するように構成されており、前記帯域スキームは、前記スケール
パラメータ計算機(110)によって前記第1セットのスケール
パラメータを計算する際に使用された前記帯域スキームと同一であり、または
帯域の数は64であり、第1の数は64であり、第2の数は16であり、第3の数は64であり、または
前記スペクトルプロセッサ
(120)は、すべての帯域のグローバルゲインを計算し、スカラー量子化器を使用する前記第3の数のスケール
パラメータを伴うスケーリング(123)に続いて、前記スペクトル値を量子化(125)するように構成されており、前記スペクトルプロセッサ(120)は、前記グローバルゲインに応じて前記スカラー量子化器(125)のステップサイズを制御するように構成されている、
請求項1から
21のいずれか一項に記載の装置。
【請求項23】
オーディオ信号(160)をエンコードする方法であって、
前記オーディオ信号
(160)をスペクトル表現に変換するステップ(100)と、
前記スペクトル表現から第1セットのスケールパラメータを計算するステップ(110)と、
第2セットのスケールパラメータを取得するために前記第1セットのスケールパラメータをダウンサンプリングするステップ(130)であって、前記第2セットのスケールパラメータ内の第2の数のスケールパラメータは前記第1セットのスケールパラメータ内の第1の数のスケールパラメータよりも少ない、ステップと、
前記第2セットのスケールパラメータのエンコード表現を生成するステップ(140)と、
前記第1セットのスケールパラメータを使用するかまたは第3セットのスケールパラメータを使用して前記スペクトル表現を処理するステップ(120)であって、前記第3セットのスケールパラメータは、前記第2の数のスケールパラメータよりも多い第3の数のスケールパラメータを有し、前記処理ステップ(120)は、
第3セットのスケールパラメータを使用するときに、補間演算を使用して、前記第2セットのスケールパラメータから、または前記第2セットのスケールパラメータの前記エンコード表現から前記第3セットのスケールパラメータを導出する、ステップと、
前記スペクトル表現の
エンコード表現に関する情報および前記第2セットのスケールパラメータの前記エンコード表現に関する情報を備えるエンコード済み出力信号(170)を生成するステップ(150)と、
を備え
、
第1セットのスケールパラメータを計算するステップ(110)は、前記スペクトル表現の複数の帯域の各帯域について、第1セットの線形領域量を取得するために線形領域内の振幅関連量を計算すること、および前記第1セットのスケールパラメータとして第1セットの対数状領域量を取得するために、前記第1セットの線形領域量を対数状領域に変換することを含み、
前記ダウンサンプリングするステップ(130)は、前記対数状領域内の前記第2セットのスケールパラメータを取得するために、前記第1セットのスケールパラメータを前記対数状領域内にダウンサンプリングすることを含む、方法。
【請求項24】
エンコード済みスペクトル表現に関する情報および第2セットのスケールパラメータのエンコード表現に関する情報を備えるエンコード済みオーディオ信号をデコードするための装置であって、
前記エンコード済み
オーディオ信号を受信し、前記エンコード済みスペクトル表現および前記第2セットのスケールパラメータの前記エンコード表現を抽出するための入力インターフェース(200)と、
デコード済みスペクトル表現を取得するために前記エンコード済みスペクトル表現をデコードするためのスペクトルデコーダ(210)と、
第1セットのスケールパラメータを取得するために、前記エンコードされた第2セットのスケールパラメータをデコードするためのスケールパラメータデコーダ(220)であって、前記第2セットのスケールパラメータの
数は、前記第1セットのスケールパラメータの数よりも少ない、スケールパラメータデコーダ(220)と、
スケーリングされたスペクトル表現を取得するために、前記第1セットのスケールパラメータを使用して前記デコード済みスペクトル表現を処理するためのスペクトルプロセッサ(230)と、
デコード済みオーディオ信号を取得するために、前記スケーリングされたスペクトル表現を変換するための変換器(240)と、
を備え
、
前記スケールパラメータデコーダ(220)は、補間された対数状領域スケールパラメータを取得するために、対数状領域内の前記第2セットのスケールパラメータを補間(222)するように構成されている、装置。
【請求項25】
前記スケールパラメータデコーダ(220)は、1つ以上の量子化インデックスについて、前記第2セットのデコード済みスケールパラメータを提供するベクトル逆量子化器(210)を使用して、前記エンコード済みスペクトル表現をデコードするように構成されており、
前記スケールパラメータデコーダ(220)は、前記第1セットのスケールパラメータを取得するために、前記第2セットのデコード済みスケールパラメータを補間(222)するように構成されている、
請求項
24に記載の装置。
【請求項26】
前記スケールパラメータデコーダ(222)は、
量子化済みスケールパラメータ、および周波数に関して昇順の一連の量子化済みスケールパラメータにおける前記量子化済みスケールパラメータと次の量子化済みスケールパラメータとの差に基づいて、補間されたスケールパラメータを決定するように構成されている、
請求項
24または25に記載の装置。
【請求項27】
前記スケールパラメータデコーダ(222)は、前記量子化済みスケールパラメータおよび前記差から、少なくとも2つの補間されたスケールパラメータを決定するように構成されており、前記2つの補間されたスケールパラメータの各々の生成のため、異なる重み係数が使用される、
請求項
26に記載の装置。
【請求項28】
前記スケールパラメータデコーダ(220)は、前記重み係数を使用するように構成されており、前記重み係数は、前記補間されたスケールパラメータに関連する周波数の増加とともに増加する、
請求項
27に記載の装置。
【請求項29】
前記スケールパラメータデコーダは、
前記対数状領域で
補間演算(222)を実行し、
前記第1セットのスケールパラメータを取得するために、補間されたスケールパラメータを
前記線形領域に変換(223)するように構成されており、前記対数状領域は、10の基数または2の基数を有する対数領域である、請求項
24から
28のいずれか一項に記載の装置。
【請求項30】
前記スペクトルプロセッサ(230)は、
TNSデコード済みスペクトル表現を取得するために、前記デコード済みスペクトル表現に時間的ノイズ成形(TNS)デコーダ演算を適用(211)し、
前記第1セットのスケールパラメータを使用して、前記TNSデコード済みスペクトル表現を重み付け(212)する
ように構成されている、請求項
24から
29のいずれか一項に記載の装置。
【請求項31】
前記スケールパラメータデコーダ(220)は、補間された量子化済みスケールパラメータが以下の式を使用して取得された値の±20%の範囲内の値を有するように量子化済みスケールパラメータを補間するように構成されており、
ここで、scfQ(n)はインデックスnの前記量子化済みスケールパラメータであり、scfQint(k)はインデックスkの前記補間されたスケールパラメータである、
請求項
24から
30のいずれか一項に記載の装置。
【請求項32】
前記スケールパラメータデコーダ(220)は、周波数に関して、前記第1セットのスケールパラメータ内のスケールパラメータを取得するために補間(222)を実行し、周波数に関して、前記第1セットのスケールパラメータの端でスケールパラメータを取得するために外挿演算を実行するように構成されている、
請求項
24から
31のいずれか一項に記載の装置。
【請求項33】
前記スケールパラメータデコーダ(220)は、外挿演算によって、昇順の周波数帯域に関して前記第1セットのスケールパラメータの少なくとも最初のスケールパラメータおよび最後のスケールパラメータを決定するように構成されている、
請求項
32に記載の装置。
【請求項34】
前記スケールパラメータデコーダ(220)は、補間(222)および
前記対数状領域から
前記線形領域へのその後の変換を実行するように構成されており、前記対数状領域はlog2領域であり、前記
線形領域における線形領域値は2の基数を有するべき乗を使用して計算される、
請求項
24から
33のいずれか一項に記載の装置。
【請求項35】
前記エンコード済みオーディオ信
号は、前記エンコード済みスペクトル表現のグローバルゲインに関する情報を備え、
前記スペクトルデコーダ(210)は、前記グローバルゲインを使用して前記エンコード済みスペクトル表現を逆量子化(210)するように構成されており、
前記スペクトルプロセッサ(230)は、帯域の前記第1セットのスケールパラメータの同じスケールパラメータを使用して、各逆量子化スペクトル値または前記帯域の前記逆量子化スペクトル表現から導出された各値を重み付けすることによって、前記逆量子化スペクトル表現または前記逆量子化スペクトル表現から導出された値を処理するように構成されている、
請求項
24から
34のいずれか一項に記載の装置。
【請求項36】
前記変換器(240)は、
時間的に後のスケーリングされたスペクトル表現を変換(241)し、
変換された時間的に後のスケーリングされたスペクトル表現を合成ウィンドウ化(242)し、
デコード済みオーディオ信
号を取得するために、ウィンドウ化および変換された表現を重複および加算(243)する
ように構成されている、請求項
24から
35のいずれか一項に記載の装置。
【請求項37】
前記変換器(240)は逆修正離散コサイン変換(MDCT)変換器を備え、または
前記スペクトルプロセッサ(230)は、スペクトル値に前記第1セットのスケールパラメータの対応するスケールパラメータを乗算するように構成されており、または
前記
第2セットのスケールパラメータ内のスケールパラメータの第2の数は16であって前記第1の数は64であり、または
前記第1セットの各スケールパラメータは帯域に関連付けられており、より高い周波数に対応する帯域はより低い周波数に関連付けられた帯域よりも広く、高周波数帯域に関連付けられた前記第1セットのスケールパラメータのあるスケールパラメータは、低周波数帯域に関連付けられたスケールパラメータと比較してより多くのスペクトル値を重み付けするために使用され前記低周波数帯域に関連付けられた前記スケールパラメータは、前記低周波数帯域の少数のスペクトル値を重み付けするために使用される、
請求項
24から
36のいずれか一項に記載の装置。
【請求項38】
エンコード済みスペクトル表現に関する情報および第2セットのスケールパラメータのエンコード表現に関する情報を備えるエンコード済みオーディオ信号をデコードする方法であって、
前記エンコード済み
オーディオ信号を受信し、前記エンコード済みスペクトル表現および前記第2セットのスケールパラメータの前記エンコード表現を抽出するステップ(200)と、
デコード済みスペクトル表現を取得するために前記エンコード済みスペクトル表現をデコードするステップ(210)と、
第1セットのスケールパラメータを取得するために、前記エンコードされた第2セットのスケールパラメータをデコードするステップ(220)であって、前記第2セットのスケールパラメータの
数は、前記第1セットのスケールパラメータの数よりも少ない、ステップと、
スケーリングされたスペクトル表現を取得するために、前記第1セットのスケールパラメータを使用して前記デコード済みスペクトル表現を処理するステップ(230)と、
デコード済みオーディオ信号を取得するために、前記スケーリングされたスペクトル表現を変換するステップ(240)と、
を備える方法。
【請求項39】
コンピュータまたはプロセッサ上で実行されたときに、請求項
23の方法または請求項
38の方法を実行するための、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はオーディオ処理に関し、特に、スペクトル帯域のスケールパラメータを使用してスペクトル領域で動作するオーディオ処理に関する。
【背景技術】
【0002】
従来技術1:アドバンストオーディオコーディング(AAC)
最も広く使用されている最先端の知覚オーディオコーデックの1つであるアドバンストオーディオコーディング(AAC)[1-2]では、いわゆるスケール係数の助けを借りてスペクトルノイズ成形が実行される。
【0003】
このアプローチでは、MDCTスペクトルは多数の不均一なスケール係数帯域に分割される。たとえば48kHzで、MDCTは1024個の係数を有し、これが49個のスケール係数帯域に分割される。各帯域では、その帯域のMDCT係数をスケーリングするためにスケール係数が使用される。次に、スケーリングされたMDCT係数を量子化するために、一定のステップサイズのスカラー量子化器が採用される。デコーダ側では、各帯域で逆スケーリングが実行され、スカラー量子化器によって導入された量子化ノイズを成形する。
【0004】
49個のスケール係数は、サイド情報としてビットストリームにエンコードされる。比較的多数のスケール係数および必要な高精度のため、通常、スケール係数をエンコードするにはかなり大量のビットを必要とする。これは、低ビットレートおよび/または低遅延において問題となる可能性がある。
【0005】
従来技術2:MDCTベースのTCX
MDCTベースのTCX、すなわちMPEG-D USAC[3]および3GPP EVS[4]規格で使用される変換ベースのオーディオコーデックでは、最近のACELPベースの音声コーデック(たとえば、AMR-WB)で使用されるのと同じ知覚フィルタである、LPCベースの知覚ファイラの助けを借りて、スペクトルノイズ成形が実行される。
【0006】
このアプローチでは、プリエンファシスされた入力信号に基づいて16個のLPCのセットが最初に推定される。次に、LPCが重み付けおよび量子化される。次に、重み付けおよび量子化されたLPCの周波数応答が、64個の等間隔の帯域で計算される。次に、計算された周波数応答を使用して、MDCT係数が各帯域内でスケーリングされる。次に、スケーリングされたMDCT係数は、ステップサイズがグローバルゲインによって制御されたスカラー量子化器を使用して量子化される。デコーダでは、64帯域ごとに逆スケーリングが実行され、スカラー量子化器によって導入された量子化ノイズを成形する。
【0007】
このアプローチは、AACアプローチに対する明らかな利点を有する。これは、サイド情報(AACにおける49個のパラメータとは対照的に)16(LPC)+1(グローバルゲイン)個のみのパラメータのエンコードを必要とする。また、16個のLPCは、LSF表現およびベクトル量子化器を採用することによって、少ないビット数で効率的にエンコードされ得る。その結果、従来技術2のアプローチは従来技術1のアプローチよりも少ないサイド情報ビットを必要とし、これにより、低ビットレートおよび/または低遅延において著しい違いをもたらすことができる。
【0008】
しかしながら、このアプローチは、いくつかの欠点も有する。第1の欠点は、LPCは時間領域内で推定されるため、ノイズ成形の周波数スケールが線形(すなわち等間隔の帯域を使用する)に制限されることである。人間の耳は高周波数よりも低周波数の方が敏感なので、これは不利である。第2の欠点は、このアプローチに必要とされる高度な複雑さである。LPC推定(自己相関、レビンソン・ダービン)、LPC量子化(LPC<->LSF変換、ベクトル量子化)、およびLPC周波数応答計算はすべて、コストのかかる演算である。第3の欠点は、LPCベースの知覚フィルタは容易に修正できず、これにより重要なオーディオアイテムに必要とされるであろういくつかの特定のチューニングを妨げるので、このアプローチはあまり柔軟性がないことである。
【0009】
従来技術3:改良されたMDCTベースのTCX
最近のいくつかの研究は、従来技術2の第1の欠点および部分的に第2の欠点に対処してきた。これは、米国特許第9595262B2号明細書、欧州特許第2676266B1号明細書で公開された。この新しいアプローチでは、自己相関(LPCを確立するため)はもはや時間領域内では実行されないが、代わりにMDCT係数エネルギーの逆変換を使用してMDCT領域内で計算される。これにより、単にMDCT係数を64個の不均一な帯域にグループ化して各帯域のエネルギーを計算することで、不均一な周波数スケールを使用できるようになる。これは、自己相関を計算するために必要とされる複雑さも低減する。
【0010】
しかしながら、新しいアプローチを使用しても、第2の欠点および第3の欠点のほとんどが残る。
【先行技術文献】
【特許文献】
【0011】
【文献】米国特許第9595262B2号明細書
【文献】欧州特許第2676266B1号明細書
【発明の概要】
【発明が解決しようとする課題】
【0012】
本発明の目的は、オーディオ信号を処理するための改善された概念を提供することである。
【課題を解決するための手段】
【0013】
この目的は、請求項1のオーディオ信号をエンコードするための装置、請求項24のオーディオ信号をエンコードする方法、請求項25のエンコード済みオーディオ信号をデコードするための装置、請求項40のエンコード済みオーディオ信号をデコードする方法、および請求項41のコンピュータプログラムによって達成される。
【0014】
オーディオ信号をエンコードするための装置は、オーディオ信号をスペクトル表現に変換するための変換器を備える。さらに、スペクトル表現から第1セットのスケールパラメータを計算するためのスケールパラメータ計算機が提供される。加えて、ビットレートを可能な限り低く保つために、第2セットのスケールパラメータを取得するために第1セットのスケールパラメータがダウンサンプリングされ、第2セットのスケールパラメータ内の第2の数のスケールパラメータは、第1セットのスケールパラメータ内の第1の数のスケールパラメータよりも少ない。さらに、第3セットのスケールパラメータを使用してスペクトル表現を処理するためのスペクトルプロセッサに加えて、第2セットのスケールパラメータのエンコード表現を生成するためのスケールパラメータエンコーダが提供され、第3セットのスケールパラメータは、第2の数のスケールパラメータよりも多い第3の数のスケールパラメータを有する。特に、スペクトルプロセッサは、第1セットのスケールパラメータを使用するように、または第3セットのスケールパラメータを第2セットのスケールパラメータから、またはスペクトル表現のエンコード表現を取得するために補間演算を使用して第2セットのスケールパラメータのエンコード表現から導出するように、構成されている。さらに、スペクトル表現のエンコード表現に関する情報を備え、第2セットのスケールパラメータのエンコード表現に関する情報も備えるエンコード済み出力信号を生成するために、出力インターフェースが提供される。
【0015】
本発明は、エンコーダ側で、より多くのスケール係数でスケーリングし、エンコーダ側のスケールパラメータを第2セットのスケールパラメータまたはスケール係数にダウンサンプリングすることによって、実質的な品質の損失を伴わずに低ビットレートを得ることができるという発見に基づいており、後に出力インターフェースを介してエンコードおよび送信または記憶される第2セット内のスケールパラメータは、第1の数のスケールパラメータよりも少ない。したがって、一方では細かいスケーリングが、他方では低ビットレートが、エンコーダ側で得られる。
【0016】
デコーダ側では、第1セットのスケール係数を取得するために、送信された少数のスケール係数がスケール係数デコーダによってデコードされ、第1セット内のスケール係数またはスケールパラメータの数は、第2セット内のスケール係数またはスケールパラメータの数よりも多く、するとやはり、細かくスケーリングされたスペクトル表現を取得するために、スペクトルプロセッサ内のデコーダ側で、より多くのスケールパラメータを使用する細かいスケーリングが実行される。
【0017】
このようにして、一方では低ビットレートが、他方ではそれにもかかわらずオーディオ信号スペクトルの高品質スペクトル処理が、得られる。
【0018】
好適な実施形態で行われるようなスペクトルノイズ成形は、非常に低いビットレートのみを使用して実施される。したがって、このスペクトルノイズ成形は、低ビットレート変換ベースのオーディオコーデックであっても不可欠のツールであり得る。スペクトルノイズ成形は、量子化ノイズが人間の耳によって最小限に知覚されるように、したがってデコード済み出力信号の知覚品質が最大化され得るように、周波数領域内の量子化ノイズを成形する。
【0019】
好適な実施形態は、スペクトル表現のエネルギーなど、振幅関連量から計算されたスペクトルパラメータに依存する。特に、帯域単位のエネルギー、または一般に、帯域単位の振幅関連量は、スケールパラメータの基底として計算され、帯域単位の振幅関連量を計算する際に使用される帯域幅は、人間の聴覚の特性に可能な限り近づけるために、低帯域から高帯域まで増加する。好ましくは、スペクトル表現の帯域への分割は、公知のバークスケールにしたがって行われる。
【0020】
さらなる実施形態では、線形領域スケールパラメータが計算され、特に多数のスケールパラメータを用いて第1セットのスケールパラメータ向けに計算され、この多数のスケールパラメータは対数状領域に変換される。対数状領域は一般に、小さい値が拡張されて高い値が圧縮される領域である。次に、基数10を有する対数領域、または基数2を有する対数領域であり得る対数状領域内で、スケールパラメータのダウンサンプリングまたは間引き演算が行われるが、実施目的では後者が好ましい。次に、第2セットのスケール係数が対数状領域内で計算され、好ましくは、第2セットのスケール係数のベクトル量子化が実行され、スケール係数は対数状領域内にある。したがって、ベクトル量子化の結果は、対数状領域スケールパラメータを示す。第2セットのスケール係数またはスケールパラメータは、たとえば、第1セットの数の半分、または三分の一、またはより好ましくは四分の一の数のスケール係数を有する。次に、第2セットのスケールパラメータ内の量子化された少数のスケールパラメータがビットストリーム内にもたらされ、次にエンコーダ側からデコーダ側に送信されるか、またはやはりこれらのパラメータを使用して処理された量子化スペクトルとともにエンコード済みオーディオ信号として記憶され、この処理は追加で、グローバルゲインを使用する量子化を伴う。しかしながら、好ましくは、エンコーダは、これらの量子化された対数状領域の第2のスケール係数から、もう一度第3セットのスケール係数である線形領域スケール係数のセットを導出し、第3セットのスケール係数内のスケール係数の数は、第2の数よりも多く、好ましくは第1セットの第1のスケール係数内の第1の数のスケール係数にさえ等しい。次に、エンコーダ側では、これらの補間されたスケール係数は、スペクトル表現を処理するために使用され、処理されたスペクトル表現は、最終的に量子化され、ハフマン符号化、算術符号化、またはベクトル量子化ベースの符号化などによって、いずれかの方法でエントロピーエンコードされる。
【0021】
スペクトル表現のエンコード表現とともに少数のスペクトルパラメータを有するエンコード済み信号を受信するデコーダでは、少数のスケールパラメータが多数のスケールパラメータに補間され、すなわち第2セットのスケール係数またはスケールパラメータのスケール係数のスケールパラメータの数が、第1セット、すなわちスケール係数/パラメータデコーダによって計算されたセットのスケールパラメータの数よりも少ない、第1セットのスケールパラメータを取得する。次に、エンコード済みオーディオ信号をデコードするための装置内に配置されたスペクトルプロセッサは、スケーリングされたスペクトル表現を取得するために、この第1セットのスケールパラメータを使用して、デコード済みスペクトル表現を処理する。次に、スケーリングされたスペクトル表現を変換するための変換器は、好ましくは時間領域内にあるデコード済みオーディオ信号を最終的に取得するように動作する。
【0022】
さらなる実施形態は、以下に明記される追加の利点をもたらす。好適な実施形態では、スペクトルノイズ成形は、従来技術1で使用されるスケール係数と類似の16個のスケーリングパラメータの助けを借りて実行される。これらのパラメータは、最初に(従来技術3の64個の不均一な帯域と類似の)64個の不均一帯域内のMDCTスペクトルのエネルギーを計算し、次に64個のエネルギーに何らかの処理を適用し(平滑化、プリエンファシス、ノイズフロア、対数変換)、次に、最終的に正規化およびスケーリングされる16個のパラメータを取得するために、4の係数で64個の処理されたエネルギーをダウンサンプリングすることによって、エンコーダ内で取得される。次に、これら16個のパラメータは、ベクトル量子化を使用して(従来技術2/3で使用されるのと類似のベクトル量子化を使用して)量子化される。次に、量子化されたパラメータは、64個の補間されたスケーリングパラメータを取得するために補間される。次に、これら64個のスケーリングパラメータは、64個の不均一な帯域内でMDCTスペクトルを直接成形するために使用される。従来技術2および3と同様に、スケーリングされたMDCT係数はその後、ステップサイズがグローバルゲインによって制御されたスカラー量子化器を使用して量子化される。デコーダでは、64帯域ごとに逆スケーリングが実行され、スカラー量子化器によって導入された量子化ノイズを成形する。
【0023】
従来技術2/3と同様に、好適な実施形態は、16+1個のパラメータのみをサイド情報として使用し、パラメータは、ベクトル量子化を使用して低ビット数で効率的にエンコードされ得る。その結果、好適な実施形態は、従来の2/3と同じ利点を有する。これは従来技術1のアプローチよりも少ないサイド情報ビットを必要とし、これにより、低ビットレートおよび/または低遅延において著しい違いをもたらすことができる。
【0024】
従来技術3と同様に、好適な実施形態は、非線形周波数スケーリングを使用し、したがって従来技術2の第1の欠点を有していない。
【0025】
従来技術2/3とは対照的に、好適な実施形態は、高度な複雑さを有するLPC関連機能のいずれも使用しない。必要な処理機能(平滑化、プリエンファシス、ノイズフロア、対数変換、正規化、スケーリング、補間)は、比較すると非常に小さな複雑さを必要とする。ベクトル量子化のみが、依然として比較的高度な複雑さを有する。しかし、いくつかのあまり複雑ではないベクトル量子化技術は、少ない性能損失で使用され得る(多分割/多段アプローチ)。したがって、好適な実施形態は、複雑さに関して従来技術2/3の第2の欠点を有していない。
【0026】
従来技術2/3とは対照的に、好適な実施形態は、LPCベースの知覚フィルタに依存していない。これは、多くの自由度で計算され得る16個のスケーリングパラメータを使用する。好適な実施形態は、従来技術2/3よりも柔軟であり、したがって従来技術2/3の第3の欠点を有していない。
【0027】
結論として、好適な実施形態は、いずれの欠点もなく、従来技術2/3のすべての利点を有する。
【0028】
本発明の好適な実施形態は、以下の添付図面を参照して、引き続きより詳細に説明される。
【図面の簡単な説明】
【0029】
【
図1】オーディオ信号をエンコードするための装置のブロック図である。
【
図2】
図1のスケール係数計算機の好適な実施の概略図である。
【
図3】
図1のダウンサンプラの好適な実施の概略図である。
【
図4】
図4のスケール係数エンコーダの概略図である。
【
図5】
図1のスペクトルプロセッサの概略説明図である。
【
図6】スペクトルノイズ成形(SNS)を実施する、一方ではエンコーダおよび他方ではデコーダの一般的な図である。
【
図7】時間的ノイズ成形(TNS)がスペクトルノイズ成形(SNS)とともに実施される、一方ではエンコーダおよび他方ではデコーダのより詳細な図である。
【
図8】エンコード済みオーディオ信号をデコードするための装置のブロック図である。
【
図9】
図8のスケール係数デコーダ、スペクトルプロセッサ、およびスペクトルデコーダの詳細を示す概略説明図である。
【
図10】64帯域へのスペクトルの細分化を示す図である。
【
図11】一方ではダウンサンプリング演算および他方では補間演算の概略説明図である。
【
図12a】フレームが重複している時間領域オーディオ信号を示す図である。
【発明を実施するための形態】
【0030】
図1は、オーディオ信号160をエンコードするための装置を示す。オーディオ信号160は好ましくは時間領域において利用可能であるが、予測領域またはその他いずれかの領域など、オーディオ信号のほかの表現も主として有用であろう。装置は、変換器100、スケール係数計算機110、スペクトルプロセッサ120、ダウンサンプラ130、スケール係数エンコーダ140、および出力インターフェース150を備える。変換器100は、オーディオ信号160をスペクトル表現に変換するように構成されている。スケール係数計算機110は、スペクトル表現から第1セットのスケールパラメータまたはスケール係数を計算するように構成されている。
【0031】
本明細書全体を通じて、用語「スケール係数」または「スケールパラメータ」は、同じパラメータまたは値、すなわち何らかの処理に続いて、ある種のスペクトル値の重み付けに使用される値またはパラメータ値を指すために使用される。この重み付けは、線形領域内で実行されるとき、実際にスケーリング係数を用いた乗算演算である。しかしながら、対数領域内で重み付けが実行されるときには、スケール係数を用いた重み付け演算が、実際の加算または減算演算によって行われる。したがって、本出願の条件において、スケーリングは、乗算または除算のみを意味するのではなく、特定の領域に応じて、加算または減算も示し、または一般に、たとえばスペクトル値がスケール係数またはスケールパラメータを使用して重み付けまたは修正される、各演算を示す。
【0032】
ダウンサンプラ130は、第2セットのスケールパラメータを取得するために第1セットのスケールパラメータをダウンサンプリングするように構成されており、第2セットのスケールパラメータ内の第2の数のスケールパラメータは、第1セットのスケールパラメータ内の第1の数のスケールパラメータよりも少ない。これは、第2の数が第1の数よりも小さいと述べている
図1のボックスでも概説されている。
図1に示されるように、スケール係数エンコーダは、第2セットのスケール係数のエンコード表現を生成するように構成されており、このエンコード表現は、出力インターフェース150に転送される。第2セットのスケール係数は第1セットのスケール係数よりも少数のスケール係数を有するという事実のため、第2セットのスケール係数のエンコード表現を送信または記憶するためのビットレートは、ダウンサンプラ130内で実行されるスケール係数のダウンサンプリングが実行されなかった場合の状況と比較して、低い。
【0033】
さらに、スペクトルプロセッサ120は、第3セットのスケールパラメータを使用して、
図1の変換器100によって出力されたスペクトル表現を処理するように構成されており、第3セットのスケールパラメータまたはスケール係数は、第2の数のスケール係数よりも多い第3の数のスケール係数を有し、スペクトルプロセッサ120は、スペクトル処理の目的のため、線171を介してブロック110からすでに利用可能なものとして第1セットのスケール係数を使用するように構成されている。あるいは、スペクトルプロセッサ120は、線172によって示されるように、第3セットのスケール係数の計算のためにダウンサンプラ130によって出力されたものとして第2セットのスケール係数を使用するように構成されている。さらなる実施では、スペクトルプロセッサ120は、
図1の線173によって示されるように、第3セットのスケール係数を計算する目的のため、スケール係数/パラメータエンコーダ140によって出力されたエンコード表現を使用する。好ましくは、スペクトルプロセッサ120は、第1セットのスケール係数を使用しないが、ダウンサンプラによって計算された通りの第2セットのスケール係数を使用するか、またはより好ましくはエンコード表現、または一般的には量子化された第2セットのスケール係数を使用し、その後、補間演算によってより多くのスケールパラメータを有する第3セットのスケールパラメータを取得するために、量子化された第2セットのスペクトルパラメータを補間するための補間演算を実行する。
【0034】
したがって、ブロック140によって出力される第2セットのスケール係数のエンコード表現は、好ましくは使用されたスケールパラメータコードブック用のコードブックインデックス、または対応するコードブックインデックスのセットのいずれかを備える。別の実施形態では、エンコード表現は、コードブックインデックスまたはコードブックインデックスのセット、または一般にはエンコード表現がデコーダ側ベクトルデコーダまたはその他いずれかのデコーダに入力されるときに、取得された量子化済みスケール係数の量子化済みスケールパラメータを備える。
【0035】
好ましくは、スペクトルプロセッサ120は、デコーダ側でも利用可能な同じセットのスケール係数を使用し、すなわち最終的に第3セットのスケール係数を取得するために、補間演算とともに量子化された第2セットのスケールパラメータを使用する。
【0036】
好適な実施形態では、第3セットのスケール係数内の第3の数のスケール係数は、第1の数のスケール係数に等しい。しかしながら、より少数のスケール係数もまた有用である。例示的には、たとえば、ブロック110において64個のスケール係数を導出することができ、次いで送信のために64個のスケール係数を16個のスケール係数にダウンサンプリングすることができる。次に、スペクトルプロセッサ120内で、必ずしも64個のスケール係数ではなく、32個のスケール係数への補間を実行することができる。あるいは、エンコード済み出力信号170で送信されたスケール係数の数が、
図1のブロック110で計算された、またはブロック120で計算および使用されたスケール係数の数よりも少ない限り、場合によっては、64超など、さらに多くのスケール係数への補間を実行することができる。
【0037】
好ましくは、スケール係数計算機110は、
図2に示されるいくつかの演算を実行するように構成されている。これらの演算は、帯域あたりの振幅関連量の計算111を指す。帯域あたりの好適な振幅関連量は帯域あたりのエネルギーであるが、たとえば、帯域あたりの振幅の規模の総和、またはエネルギーに対応する振幅の2乗の総和など、ほかの振幅関連量もまた使用され得る。しかしながら、帯域あたりのエネルギーを計算するために使用される2の累乗は別として、信号のラウドネスを反映する3の累乗などの別の累乗もまた使用可能であり、1.5または2.5の累乗など、整数とは異なる累乗さえも、帯域あたりの振幅関連量を計算するために使用され得る。このような累乗によって処理された値が正の値であることが確認される限り、1.0未満の累乗でさえも使用され得る。
【0038】
スケール係数計算機によって実行されるさらなる演算は、帯域間平滑化112であり得る。この帯域間平滑化は、好ましくは、ステップ111によって取得されたような振幅関連量のベクトルに現れる可能性のある、あり得る不安定性を平滑化するために使用される。この平滑化を実行しない場合、これらの不安定性は、特にエネルギーが0に近いスペクトル値で、115で示されるように後に対数領域に変換されたときに、増幅されるだろう。しかしながら、別の実施形態では、帯域間平滑化は実行されない。
【0039】
スケール係数計算機110によって実行されるさらなる好適な演算は、プリエンファシス演算113である。プリエンファシス演算は、従来技術に関して先に論じられたようなMDCTベースのTCX処理のLPCベースの知覚フィルタで使用されるプリエンファシス演算と類似の目的を有する。この手順は、低周波数の量子化ノイズを減少させることになる低周波数の成形スペクトルの振幅を増加させる。
【0040】
しかしながら、実施に応じて、(ほかの特定の演算のように)プリエンファシス演算は必ずしも実行される必要はない。
【0041】
さらなる任意選択的な処理演算は、ノイズフロア加算処理114である。この手順は、谷における成形スペクトルの振幅増幅を制限することによって、たとえばグロッケンシュピールなど、非常に高いスペクトルダイナミクスを含む信号の品質を改善し、これは谷における量子化ノイズの増加を犠牲にして、ピークにおける量子化ノイズを低減する間接的効果を有し、ここで量子化ノイズは、絶対聴覚閾値、マスキング前、マスキング後、または一般的なマスキング閾値などの人間の耳のマスキング特性のためどうしても知覚できず、これは通常、周波数が大音量のトーンに比較的近い低音量のトーンが全く知覚できない、すなわち人間の聴覚メカニズムによって完全にマスクされるかまたは大まかにしか知覚されないことを示し、このスペクトル貢献は非常に大まかにしか量子化され得ない。
【0042】
しかしながら、ノイズフロア加算演算114は、必ずしも実行される必要はない。
【0043】
さらに、ブロック115は、対数状領域変換を示す。好ましくは、
図2のブロック111、112、113、114のうちの1つの出力の変換は、対数状領域内で実行される。対数状領域は、0に近い値が拡張されて高い値が圧縮される領域である。好ましくは、対数領域は2の基底を有する領域であるが、別の対数領域もまた使用され得る。しかしながら、2の基底を有する対数領域の方が、定点信号プロセッサでの実施には適している。
【0044】
スケール係数計算機110の出力は、第1セットのスケール係数である。
【0045】
図2に示されるように、ブロック112から115の各々はブリッジされることが可能であり、すなわち、たとえばブロック111の出力は、すでに第1セットのスケール係数であり得る。しかしながら、すべての処理演算および、特に対数状領域変換が好ましい。したがって、たとえばステップ112から114の手順なしにステップ111および115を実行するだけで、スケール係数計算機を実装することさえできる。
【0046】
したがって、スケール係数計算機は、いくつかのブロックを接続する入力/出力線で示されるように、
図2に示される手順の1つまたは2つまたはそれ以上を実行するように構成されている。
【0047】
図3は、
図1のダウンサンプラ130の好適な実施を示す。好ましくは、ローパスフィルタリング、または一般には特定のウィンドウw(k)を用いるフィルタリングがステップ131で実行され、次に、フィルタリングの結果のダウンサンプリング/間引き演算が実行される。ローパスフィルタリング131および好適な実施形態ではダウンサンプリング/間引き演算132が両方とも算術演算であるという事実のため、フィルタリング131およびダウンサンプリング132は、後で概説されるように、単一の演算において実行され得る。好ましくは、ダウンサンプリング/間引き演算は、第1セットのスケールパラメータにおける個々のグループのスケールパラメータの間の重複が実行されるように実行される。好ましくは、間引かれて計算された2つのパラメータ間のフィルタリング演算における1つのスケール係数の重複が実行される。したがって、ステップ131は、間引きの前にスケールパラメータのベクトルに対してローパスフィルタを実行する。このローパスフィルタは、心理音響モデルで使用される広がり関数と類似の効果を有する。これは、ピークにおける量子化ノイズに対して少なくともさらに、いずれにせよ知覚的にマスクされるピークの周りの量子化ノイズの増加を犠牲にして、ピークでの量子化ノイズを減少させる。
【0048】
さらに、ダウンサンプラは、平均値除去133および追加のスケーリングステップ134を追加で実行する。しかしながら、ローパスフィルタリング演算131、平均値除去ステップ133、およびスケーリングステップ134は、任意選択的なステップに過ぎない。したがって、
図3に示される、または
図1に示されるダウンサンプラは、ステップ132を実行するだけのために、またはステップ132とステップ131、133、および134のうちの1つなど、
図3に示される2つのステップを実行するために、実装され得る。あるいは、ダウンサンプラは、ダウンサンプリング/間引き演算132が実行される限り、
図3に示される4つすべてのステップまたは4つのステップのうちの3つのステップを実行することができる。
【0049】
図3で概説されたように、ダウンサンプラによって実行される
図3のオーディオ演算は、よりよい結果を得るために、対数状領域内で実行される。
【0050】
図4は、スケール係数エンコーダ140の好適な実施を示す。スケール係数エンコーダ140は、好ましくは対数状領域の第2セットのスケール係数を受信し、最終的にフレームごとに1つ以上のインデックスを出力するために、ブロック141に示されるようなベクトル量子化を実行する。これらフレームごとに1つ以上のインデックスは、出力インターフェースに転送されてビットストリームに書き込まれ、すなわちいずれか利用可能な出力インターフェース手順によって、出力されたエンコード済みオーディオ信号170に導入される。好ましくは、ベクトル量子化器141は、量子化された対数状領域の第2セットのスケール係数を追加で出力する。したがって、このデータは、矢印144によって示されるように、ブロック141によって直接出力されることが可能である。しかしながら、代わりに、デコーダコードブック142もまた、エンコーダ内で別個に利用可能である。このデコーダコードブックは、フレームごとに1つ以上のインデックスを受信し、線145によって示されるように、これらのフレームごとに1つ以上のインデックスから、量子化された好ましく対数状の領域の第2セットのスケール係数を導出する。典型的な実施では、デコーダコードブック142は、ベクトル量子化器141内に組み込まれる。好ましくは、ベクトル量子化器141は、たとえば、示された従来技術の手順のいずれかで使用されるような、多段または分割レベル、または複合多段/分割レベルのベクトル量子化器である。
【0051】
したがって、デコーダ側、すなわち、線146を介してブロック141によって出力されたフレームごとに1つ以上のインデックスを有するエンコード済みオーディオ信号のみを受信するデコーダ内でも利用可能な、同じ量子化された第2セットのスケール係数であることが確実となる。
【0052】
図5は、スペクトルプロセッサの好適な実施を示す。
図1のエンコーダに含まれるスペクトルプロセッサ120は、量子化された第2セットのスケールパラメータを受信し、第3セットのスケールパラメータを出力する、補間器121を備え、第3の数が第2の数よりも大きく、好ましくは第1の数に等しい。さらに、スペクトルプロセッサは、線形領域変換器120を備える。次に、一方では線形スケールパラメータ、および他方では変換器100によって取得されたスペクトル表現を使用して、ブロック123においてスペクトル成形が実行される。好ましくは、ブロック124の出力でスペクトル残差値を取得するために、後続の時間的ノイズ成形、すなわち周波数にわたる予測が実行され、同時にTNSサイド情報は、矢印129によって示されるように、出力インターフェースに転送される。
【0053】
最後に、スペクトルプロセッサ125は、スペクトル表現、すなわちフレーム全体の単一のグローバルゲインを受信するように構成された、スカラー量子化器/エンコーダを有する。好ましくは、グローバルゲインは、特定のビットレート考慮事項に応じて導出される。したがって、グローバルゲインは、ブロック125によって生成されたスペクトル表現のエンコード表現が、ビットレート要件、品質要件、またはその両方などの特定の要件を満たすように設定される。グローバルゲインは、繰り返し計算されることが可能であり、または場合により、フィードフォワード量で計算されることが可能である。一般に、グローバルゲインは量子化器とともに使用され、高グローバルゲインは通常、より粗い量子化をもたらし、低グローバルゲインはより細かい量子化をもたらす。したがって、言い換えると、固定量子化器が得られると、高グローバルゲインはより高い量子化ステップサイズをもたらし、その一方で低グローバルゲインはより小さい量子化ステップサイズをもたらす。しかしながら、高い値である種の圧縮機能を有する、すなわち、たとえば高い値の方が低い値よりも圧縮されるようなある種の非線形圧縮機能を有する量子化器など、グローバルゲイン機能とともに別の量子化器もまた使用されることが可能である。対数領域での加算に対応する線形領域での量子化の前の値にグローバルゲインが乗じられると、グローバルゲインと量子化粗度との間の上記の依存性が有効になる。しかしながら、線形領域での除算によって、または対数領域での減算によってグローバルゲインが適用される場合、依存性は逆になる。「グローバルゲイン」が逆の値を表すときも、同様である。
【0054】
続いて、
図1から
図5に関連して説明された個々の手順の好適な実施が与えられる。
【0055】
好適な実施形態の詳細なステップごとの説明
エンコーダ:
・ステップ1:帯域あたりのエネルギー(111)
帯域あたりのエネルギー
は、以下のように計算される。
はMDCT係数、
は帯域の数、
は帯域インデックスである。帯域は不均一であり、知覚的に関連するバークスケールに従う(低周波数では小さく、高周波数では大きい)。
【0056】
・ステップ2:平滑化(112)
帯域あたりのエネルギー
は、以下を用いて平滑化される。
備考:このステップは主に、ベクトル
に現れる可能性のある、あり得る不安定性を平滑化するために使用される。平滑化されない場合には、これらの不安定性は、特にエネルギーが0に近い谷において、対数領域に変換されたとき(ステップ5参照)、増幅される。
【0057】
・ステップ3:プリエンファシス(113)
帯域あたりの平滑化されたエネルギー
はその後、以下を使用してプリエンファシスされる。
ここで、
は、プリエンファシスの傾斜を制御し、サンプリング周波数に依存する。これはたとえば、16kHzで18、および48kHzで30である。このステップで使用されるプリエンファシスは、従来技術2のLPCベースの知覚フィルタで使用されるプリエンファシスと同じ目的を有し、これは低周波数での成形スペクトルの振幅を増加させ、結果として低周波数における量子化ノイズを低減する。
【0058】
・ステップ4:ノイズフロア(114)
-40dBでのノイズフロアは、
を使用して
に追加され、ノイズフロアは以下によって計算される。
このステップは、谷における成形スペクトルの振幅増幅を制限することによって、たとえばグロッケンシュピールなど、非常に高いスペクトルダイナミクスを含む信号の品質を改善し、これはどうしても知覚できない谷における量子化ノイズの増加を犠牲にして、ピークにおける量子化ノイズを低減する間接的効果を有する。
【0059】
・ステップ5:対数(115)
次に、対数領域への変換は、以下を使用して実行される。
【0060】
・ステップ6:ダウンサンプリング(131、132)
次に、ベクトル
は、
を使用して4の係数によってダウンサンプリングされ、ここで
である。
【0061】
このステップは、間引きの前のベクトル
に対してローパスフィルタ(w(k))を適用する。このローパスフィルタは、心理音響モデルで使用される広がり関数と類似の効果を有する。これは、いずれにせよ知覚的にマスクされるピークの周りの量子化ノイズの増加を犠牲にして、ピークでの量子化ノイズを減少させる。
【0062】
・ステップ7:平均除去およびスケーリング(133、134)
最終的なスケール係数は、0.85の係数による平均除去およびスケーリングの後に取得される。
コーデックは追加のグローバルゲインを有するので、情報を全く失わずに平均を除去することができる。平均を除去することで、より効率的なベクトル量子化を可能にする。
【0063】
0.85の係数は、ノイズ成形曲線の振幅をわずかに圧縮する。これは、ステップ6で言及した広がり関数と類似の知覚効果を有する。ピークで量子化ノイズを低減し、谷で量子化ノイズを増加させる。
【0064】
・ステップ8:量子化(141、142)
スケール係数は、ベクトル量子化を使用して量子化され、後にビットストリームにパックされてデコーダに送信されるインデックス、および量子化済みスケール係数
を生成する。
【0065】
・ステップ9:補間(121、122)
量子化済みスケール係数
は、
を使用して補間され、
を使用して線形領域に変換し直される。
【0066】
補間は、平滑なノイズ成形曲線を取得し、ひいては隣り合う帯域間のいかなる大きな振幅ジャンプも回避するために、使用される。
【0067】
・ステップ10:スペクトル成形(123)
成形スペクトル
を生成するために、SNSスケール係数
は、各帯域のMDCT周波数線路に対して別個に適用される。
【0068】
図8は、エンコード済みスペクトル表現に関する情報および第2セットのスケールパラメータのエンコード表現に関する情報を備えるエンコード済みオーディオ信号250をデコードするための装置の好適な実施を示す。デコーダは、入力インターフェース200、スペクトルデコーダ210、スケール係数/パラメータデコーダ220、スペクトルプロセッサ230、および変換器240を備える。入力インターフェース200は、エンコード済みオーディオ信号250を受信し、スペクトルデコーダ210に転送されるエンコード済みスペクトル表現を抽出し、スケール係数デコーダ220に転送される第2セットのスケール係数のエンコード表現を抽出するように構成されている。さらに、スペクトルデコーダ210は、スペクトルプロセッサ230に転送されるデコード済みスペクトル表現を取得するために、エンコード済みスペクトル表現をデコードするように構成されている。スケール係数デコーダ220は、スペクトルプロセッサ230に転送される第1セットのスケールパラメータを取得するためにエンコードされた第2セットのスケールパラメータをデコードするように構成されている。第1セットのスケール係数は、第2セットにおけるスケール係数またはスケールパラメータの数よりも多い数のスケール係数またはスケールパラメータを有する。スペクトルプロセッサ230は、スケーリングされたスペクトル表現を取得するために、第1セットのスケールパラメータを使用して、デコード済みスペクトル表現を処理するように構成されている。次に、スケーリングされたスペクトル表現は、最終的にデコード済みオーディオ信号260を取得するために、変換器240によって変換される。
【0069】
好ましくは、スケール係数デコーダ220は、ブロック141または142に関して、特に
図5のブロック121、122に関連して論じられたような第3セットのスケール係数またはスケールパラメータの計算に関して
図1のスペクトルプロセッサ120に関連して論じられたのと実質的に同じ方法で動作するように構成されている。特に、線形領域に戻る補間および変換について、スケール係数デコーダは、ステップ9に関連して以前に論じられたのと実質的に同じ手順を実行するように構成されている。したがって、
図9に示されるように、スケール係数デコーダ220は、エンコードされたスケールパラメータ表現を表すフレームごとに1つ以上のインデックスにデコーダコードブック221を適用するように構成されている。次に、ブロック222において、
図5のブロック121に関連して論じられたのと実質的に同じ補間である補間が実行される。次に、
図5に関連して論じられたのと実質的に同じ線形領域変換器122である、線形領域変換器223が使用される。しかしながら、別の実施では、ブロック221、222、223は、エンコーダ側の対応するブロックに関連して論じられたのとは異なるように動作することができる。
【0070】
さらに、
図8に示されるスペクトルデコーダ210は、入力として、エンコードされたスペクトルを受信し、エンコードされた形式のエンコード済みオーディオ信号内でエンコーダ側からデコーダ側へ付加的に送信されるグローバルゲインを使用して好ましく逆量子化される逆量子化スペクトルを出力する、逆量子化器/デコーダブロックを備える。逆量子化器/デコーダ210は、たとえば、入力としてある種のコードを受信し、スペクトル値を表す量子化インデックスを出力する、算術またはハフマンデコーダ機能を備えることができる。次に、これらの量子化インデックスは、グローバルゲインとともに逆量子化器に入力され、出力は、そうはいっても任意選択的であるTNSデコーダ処理ブロック211における周波数に対する逆予測などのTNS処理を後に受けることができる、逆量子化されたスペクトル値である。特に、TNSデコーダ処理ブロックは、線129によって示されるように、
図5のブロック124によって生成されたTNSサイド情報を追加で受信する。TNSデコーダ処理ステップ211の出力は、スペクトル成形ブロック212に入力され、スケール係数デコーダによって計算された通りの第1セットのスケール係数は、場合により、TNS処理され得るまたはされ得ないデコード済みスペクトル表現に適用され、出力は、後に
図8の変換器240に入力される、スケーリングされたスペクトル表現である。
【0071】
デコーダの好適な実施形態のさらなる手順は、引き続き論じられる。
【0072】
デコーダ:
・ステップ1:量子化(221)
エンコーダステップ8で生成されたベクトル量子化器インデックスは、ビットストリームから読み取られ、量子化済みスケール係数
をデコードするために使用される。
【0073】
・ステップ2:補間(222、223)
エンコーダステップ9と同じ。
【0074】
・ステップ3:スペクトル成形(212)
以下のコードによって概説されるように、デコードされたスペクトル
を生成するために、SNSスケール係数
は、各帯域の量子化されたMDCT周波数線路に対して別個に適用される。
図6および
図7は一般的なエンコーダ/デコーダ設定を示しており、
図6はTNS処理のない実施を表し、
図7はTNS処理を含む実施を示す。
図6および
図7に示される類似の機能は、同一の参照番号が示されるとき、別の図における類似の機能に対応する。特に、
図6に示されるように、入力信号160は変換段110に入力され、その後、スペクトル処理120が実行される。特に、スペクトル処理は、参照番号123、110、130、140によって示されるSNSエンコーダによって反映され、ブロックSNSエンコーダがこれらの参照番号によって示される機能を実施することを示す。SNSエンコーダブロックに続いて、量子化エンコード演算125が実行され、エンコード済み信号は、
図6の180で示されるように、ビットストリームに入力される。次に、ビットストリーム180はデコーダ側で行われ、参照番号210によって示される逆量子化およびデコードに続いて、最終的に、逆変換240に続いてデコード済み出力信号260が得られるように、
図8のブロック210、220、230によって示されるSNSデコーダ演算が実行される。
【0075】
図7は、
図6と類似の図を示すが、好ましくは、TNS処理はエンコーダ側でのSNS処理に続いて実行され、したがって、TNS処理211はデコーダ側の処理シーケンスに関連するSNS処理212の前に実行されることが、示されている。
【0076】
好ましくは、スペクトルノイズ成形(SNS)と量子化/符号化との間の追加のツールTNS(下のブロック図参照)が使用される。TNS(時間的ノイズ成形)は、量子化ノイズも成形するが、(SNSの周波数領域成形とは対照的に)時間領域成形も行う。TNSは、シャープアタックを含む信号、および音声信号にとって有用である。
【0077】
TNSは通常、変換とSNSとの間に(たとえばAACで)適用される。しかしながら、好ましくは、成形スペクトルにTNSを適用することが好ましい。これにより、低ビットレートでコーデックを操作するときにTNSデコーダによって生成されたいくつかのアーチファクトを回避する。
【0078】
図10は、エンコーダ側のブロック100によって取得されたスペクトル係数またはスペクトル線の帯域への好適な細分化を示す。特に、低い帯域の方が、高い帯域よりも少数のスペクトル線を有することが示されている。
【0079】
特に、
図10のx軸は、帯域のインデックスに対応し、64帯域の好適な実施形態を示しており、y軸は、1つのフレーム内で320個のスペクトル係数を示すスペクトル線のインデックスに対応する。特に、
図10は、32kHzのサンプリング周波数がある超広帯域(SWB)の場合の状況を例示的に示す。
【0080】
広帯域の場合、個々の帯域に関する状況は、1つのフレームで160個のスペクトル線が得られるようになっており、サンプリング周波は、いずれの場合も、1つのフレームが10ミリ秒の時間的長さを有するように、16kHzである。
【0081】
図11は、
図1のダウンサンプラ130において実行された好適なダウンサンプリング、または
図8のスケール係数デコーダ220において実行された、または
図9のブロック222に示されるような、対応するアップサンプリングまたは補間のさらなる詳細を示す。
【0082】
x軸に沿って、帯域0から63のインデックスが与えられる。特に、0から63までの64帯域がある。
【0083】
scfQ(i)に対応する16個のダウンサンプルポイントが、垂直線1100として示されている。特に、
図11は、最終的にダウンサンプルポイント1100を取得するために、スケールパラメータの特定のグループ化がどのように実行されるかを示している。例として、4つの帯域の最初のブロックは(0,1,2,3)からなり、この最初のブロックの中間点は、x軸に沿ったインデックス1.5のアイテム1100によって示される1.5にある。
【0084】
相応に、4つの帯域の第2のブロックは(4,5,6,7)であり、第2のブロックの中間点は5.5である。
【0085】
ウィンドウ1110は、前述のステップ6のダウンサンプリングに関連して論じられたウィンドウw(k)に対応する。前述のように、これらのウィンドウはダウンサンプルポイントにあり、各側に1つのブロックの重複があることがわかる。
【0086】
図9の補間ステップ222は、16個のダウンサンプルポイントから64帯域を回収する。これは、特定の線1120の周りに1100で示される2つのダウンサンプルポイントの関数として、線1120のいずれかの位置を計算することによって、
図11に見られる。以下の例は、これを例示している。
【0087】
第2の帯域の位置は、その周りの2つの垂直線(1.5および5.5)の関数として計算される:2=1.5+1/8x(5.5-1.5)。
【0088】
相応に、第3の帯域の位置は、その周りの2つの垂直線(1.5および5.5)1100の関数として計算される:3=1.5+3/8x(5.5-1.5)。
【0089】
最初の2つの帯域および最後の2つの帯域について、特定の手順が実行される。これらの帯域では、垂直線または0から63までの範囲外の垂直線1100に対応する値が存在しないので、補間を実行することができない。したがって、この問題に対処するために、ステップ9に関連して説明されたように外挿が実行され、補間は、一方では2つの帯域0,1および他方では62および63について先に概説した通りである。
【0090】
続いて、一方では
図1の変換器100および他方では
図8の変換器240の好適な実施形態が論じられる。
【0091】
特に、
図12aは、変換器100内のエンコーダ側で実行されるフレーミングを示すためのスケジュールを示す。
図12bは、エンコーダ側での
図1の変換器100の好適な実施を示し、
図12cは、デコーダ側の変換器240の好適な実施を示す。
【0092】
エンコーダ側の変換器100は、好ましくは、フレーム2がフレーム1と重複してフレーム3がフレーム2およびフレーム4と重複するように、50%重複など、重複するフレームを用いてフレーミングを実行するために実装される。しかしながら、ほかの重複または非重複処理もまた実行できるが、MDCTアルゴリズムとともに50%重複を実行することが好ましい。この目的のために、変換器100は、変換器100に続くブロックへの
図1の入力としての一連のスペクトル表現に対応する一連のフレームを取得するために、FFT処理、MDCT処理、またはその他いずれかの種類の時間-スペクトル変換処理を実行するための、分析ウィンドウ101および後に接続されるスペクトル変換器102を備える。
【0093】
相応に、スケーリングされたスペクトル表現は、
図8の変換器240に入力される。特に、変換器は、逆FFT演算、逆MDCT演算、または対応するスペクトル-時間変換演算を実施する時間変換器241を備える。出力は合成ウィンドウ242に挿入され、合成ウィンドウ242の出力は、最終的にデコード済みオーディオ信号を取得するために重複加算演算を実行するための重複加算プロセッサ243に入力される。特に、たとえば、ブロック243の重複加算処理は、
図12aのアイテム1200によって示されるようなフレーム3とフレーム4との間の重複のオーディオサンプリング値が得られるように、たとえば、フレーム3の後半およびフレーム4の前端の対応するサンプル間でサンプルごとの加算を実行する。デコードされたオーディオ出力信号の残りのオーディオサンプリング値を取得するために、類似の重複加算演算がサンプルごとに実行される。
【0094】
必然的にエンコード済みのオーディオ信号は、デジタル記憶媒体または非一時的記憶媒体に記憶することができ、もしくはインターネットなど、無線伝送媒体または有線伝送媒体などの伝送媒体上で伝送され得る。
【0095】
いくつかの態様は装置の文脈で説明されてきたが、これらの態様が、対応する方法の説明も表すことは明らかであり、ブロックまたはデバイスは、方法ステップまたは方法ステップの特徴に対応する。同様に、方法ステップの文脈で説明された態様もまた、対応する装置の対応するブロックまたはアイテムまたは特徴の説明を表す。
【0096】
特定の実施要件に応じて、本発明の実施形態は、ハードウェアまたはソフトウェアで実装され得る。実装は、それぞれの方法が実行されるようにプログラム可能なコンピュータシステムと協働する(または協働することが可能な)、電子的可読制御信号が記憶されたデジタル記憶媒体、たとえばフロッピーディスク、DVD、CD、ROM、PROM、EPROM、EEPROM、またはフラッシュメモリを使用して実行できる。
【0097】
本発明によるいくつかの実施形態は、本明細書に記載された方法の1つが実行されるように、プログラム可能なコンピュータシステムと協働することが可能な電子的可読制御信号を有するデータキャリアを備える。
【0098】
一般に、本発明の実施形態は、プログラムコードを有するコンピュータプログラム製品として実装されることが可能であり、プログラムコードは、コンピュータプログラム製品がコンピュータ上で実行されると方法の1つを実行するように動作する。プログラムコードは、たとえば機械可読キャリアに記憶されてもよい。
【0099】
別の実施形態は、機械可読キャリアまたは非一時的記憶媒体に記憶された、本明細書に記載された方法の1つを実行するためのコンピュータプログラムを備える。
【0100】
したがって、言い換えると、本発明の方法の実施形態は、コンピュータプログラムがコンピュータ上で実行されると、本明細書に記載された方法の1つを実行するためのプログラムコードを有するコンピュータプログラムである。
【0101】
したがって、本発明の方法のさらなる実施形態は、本明細書に記載された方法の1つを実行するためのコンピュータプログラムを備え、該コンピュータプログラムが記録されたデータキャリア(またはデジタル記憶媒体またはコンピュータ可読媒体)である。
【0102】
したがって、本発明の方法のさらなる実施形態は、本明細書に記載された方法の1つを実行するためのコンピュータプログラムを表すデータストリームまたは一連の信号である。データストリームまたは一連の信号はたとえば、データ通信接続を介して、たとえばインターネットを介して転送されるように構成されてもよい。
【0103】
さらなる実施形態は、本明細書に記載された方法の1つを実行するように構成または適合された処理手段、たとえばコンピュータまたはプログラマブルロジックデバイスを備える。
【0104】
さらなる実施形態は、本明細書に記載された方法の1つを実行するためのコンピュータプログラムがインストールされたコンピュータを備える。
【0105】
いくつかの実施形態では、本明細書に記載された方法の機能の一部またはすべてを実行するために、プログラマブルロジックデバイス(たとえばフィールドプログラマブルゲートアレイ)が使用されてもよい。いくつかの実施形態では、フィールドプログラマブルゲートアレイは、本明細書に記載された方法の1つを実行するために、マイクロプロセッサと協働し得る。一般に、方法は、好ましくはいずれかのハードウェア装置によって実行される。
【0106】
上記の実施形態は、本発明の原理を単に例示するものである。本明細書に記載される配置および詳細の修正および変形が当業者にとって明らかであろうことは、理解される。したがって、喫緊の請求項の範囲によってのみ限定され、本明細書の実施形態の記載および説明によって提示される具体的詳細によっては限定されないことが意図される。
【0107】
参考文
[1] ISO/IEC 14496-3:2001; Information technology - Coding of audio-visual objects - Part 3: Audio
【0108】
[2] 3GPP TS 26.403; General audio codec audio processing functions; Enhanced aacPlus general audio codec; Encoder specification; Advanced Audio Coding (AAC) part
【0109】
[3] ISO/IEC 23003-3; Information technology - MPEG audio technologies - Part 3: Unified speech and audio coding
【0110】
[4] 3GPP TS 26.445; Codec for Enhanced Voice Services (EVS); Detailed algorithmic description.