IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヴォイスエイジ・コーポレーションの特許一覧

特表2024-503392音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス
<>
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図1
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図2
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図3
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図4
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図5
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図6
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図7
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図8
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図9
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図10
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図11
  • 特表-音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-01-25
(54)【発明の名称】音響信号の統合時間領域/周波数領域符号化のための方法およびデバイス
(51)【国際特許分類】
   G10L 19/00 20130101AFI20240118BHJP
   G10L 19/02 20130101ALI20240118BHJP
【FI】
G10L19/00 400A
G10L19/02 150
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023541804
(86)(22)【出願日】2022-01-05
(85)【翻訳文提出日】2023-09-11
(86)【国際出願番号】 CA2022050006
(87)【国際公開番号】W WO2022147615
(87)【国際公開日】2022-07-14
(31)【優先権主張番号】63/135,171
(32)【優先日】2021-01-08
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】504226412
【氏名又は名称】ヴォイスエイジ・コーポレーション
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】トミー・ヴァイヤンクール
(72)【発明者】
【氏名】ウラジミール・マレノフスキー
(57)【要約】
入力音響信号を符号化するための統合時間領域/周波数領域符号化方法およびデバイスは、入力音響信号を、入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む複数の音響信号カテゴリのうちの1つに分類する分類器を含む。入力音響信号が不明瞭信号タイプカテゴリに分類される場合、入力音響信号を符号化するために複数の符号化サブモードのうちの1つが選択される。混合時間領域/周波数領域エンコーダは、選択された符号化サブモードを使用して入力音響信号を符号化する。混合時間領域/周波数領域エンコーダは、量子化する周波数帯域を選択し、選択された周波数帯域間で量子化に利用可能なビットバジェットを分配するための周波数帯域の選択器およびビットの割り当て器を含む。対応する音響信号デコーダおよびデコード方法も提供される。
【特許請求の範囲】
【請求項1】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器と、
前記選択された符号化サブモードを使用して前記入力音響信号を符号化するための混合時間領域/周波数領域エンコーダとを含む統合時間領域/周波数領域符号化デバイス。
【請求項2】
前記音響信号カテゴリは、音声、音楽、および前記入力音響信号が音声にも音楽にも分類されないことを示す不明瞭信号タイプを含む請求項1に記載の統合時間領域/周波数領域符号化デバイス。
【請求項3】
前記分類器が前記入力音響信号を前記音楽カテゴリに分類する場合、前記入力音響信号を符号化するための周波数領域エンコーダを含む請求項2に記載の統合時間領域/周波数領域符号化デバイス。
【請求項4】
前記分類器が前記入力音響信号を前記音声カテゴリに分類する場合、前記入力音響信号を符号化するための時間領域エンコーダを含む請求項2または3に記載の統合時間領域/周波数領域符号化デバイス。
【請求項5】
前記選択器は、前記入力音響信号を符号化するためのビットレートおよび前記不明瞭信号タイプカテゴリに分類された前記入力音響信号の特性に応じて前記符号化サブモードを選択する請求項1から4のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項6】
前記符号化サブモードは、それぞれのサブモードフラグによって識別される請求項1から5のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項7】
前記選択器は、(a)前記入力音響信号を符号化するために利用可能なビットレートが第1の所与の値以下であり、(b)前記入力音響信号が音声にも音楽にも分類されない場合、前記入力音響信号を符号化するためのレガシーの統合時間領域および周波数領域符号化モデルを使用する後方符号化サブモードを選択する請求項5または6に記載の統合時間領域/周波数領域符号化デバイス。
【請求項8】
前記選択器は、前記入力音響信号において「音声」に似た特性が検出された場合、第1の符号化サブモードを選択する請求項5から7のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項9】
前記選択器は、(a)前記入力音響信号が前記分類器によって音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第2の所与の値より高く、(b)前記入力音響信号が音楽である確率が第3の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出されない場合、前記第1の符号化サブモードを選択する請求項8に記載の統合時間領域/周波数領域符号化デバイス。
【請求項10】
前記選択器は、前記入力音響信号において時間攻撃が検出された場合、第2の符号化サブモードを選択する請求項5から9のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項11】
前記選択器は、(a)前記入力音響信号が前記分類器によって音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第4の所与の値より高く、(b)前記入力音響信号が音楽である確率が第5の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出された場合、前記第2の符号化サブモードを選択する請求項10に記載の統合時間領域/周波数領域符号化デバイス。
【請求項12】
前記選択器は、前記入力音響信号において「音楽」に似た特性が検出された場合、第3の符号化サブモードを選択する請求項5から11のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項13】
前記選択器は、(a)前記入力音響信号が前記分類器によって音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第6の所与の値より高く、(b)前記入力音響信号が音楽である確率が第7の所与の値より大きい場合、前記第3の符号化サブモードを選択する請求項12に記載の統合時間領域/周波数領域符号化デバイス。
【請求項14】
前記選択器は、前記入力音響信号において「音声」に似た特性が検出された場合、第1の符号化サブモードを選択し、
前記選択器は、前記入力音響信号において時間攻撃が検出された場合、第2の符号化サブモードを選択し、
前記選択器は、前記入力音響信号において「音楽」に似た特性が検出された場合、第3の符号化サブモードを選択する請求項1から13のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項15】
前記選択器は、(a)前記第3の符号化サブモードにおいて、前記入力音響信号を符号化するためにフレーム毎の所有の数のサブフレームを、ならびに(b)第1および第2の符号化サブモードにおいて、前記所与の数より少ない、前記入力音響信号を符号化するために利用可能なビットレートに依存する、数のサブフレームを選択する請求項14に記載の統合時間領域/周波数領域符号化デバイス。
【請求項16】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、
前記入力音響信号を前記不明瞭信号タイプカテゴリに分類したことに応じて前記入力音響信号を符号化するための混合時間領域/周波数領域エンコーダとを含み、
前記混合時間領域/周波数領域エンコーダは、量子化する周波数帯域を選択し、前記選択された周波数帯域間で量子化に利用可能なビットバジェットを分配するための周波数帯域の選択器およびビットの割り当て器を含む統合時間領域/周波数領域符号化デバイス。
【請求項17】
前記混合時間領域/周波数領域エンコーダは、前記入力音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と時間領域励振寄与の周波数表現との間の差分ベクトルの計算器を含み、前記周波数帯域は、前記差分ベクトルの周波数帯域である請求項16に記載の統合時間領域/周波数領域符号化デバイス。
【請求項18】
(a)前記混合時間領域/周波数領域エンコーダは、前記入力音響信号の混合時間領域/周波数領域符号化に時間領域励振寄与が使用されないカットオフ周波数の計算器を含み、(b)前記統合時間領域/周波数領域符号化デバイスは、前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器を含み、周波数帯域の前記選択器およびビットの割り当て器は、量子化する前記周波数帯域を選択し、前記カットオフ周波数および前記選択された符号化サブモードに応じて量子化に利用可能な前記ビットバジェットを分配する請求項16または17に記載の統合時間領域/周波数領域符号化デバイス。
【請求項19】
前記混合時間領域/周波数領域エンコーダは、(a)時間領域励振寄与が前記入力音響信号の混合時間領域/周波数領域符号化に使用されないカットオフ周波数の計算器と、(b)前記入力音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と前記時間領域励振寄与の周波数表現との間の差分ベクトルの計算器とを含み、
周波数帯域の前記選択器およびビットの割り当て器は、前記カットオフ周波数の関数として前記差分ベクトルのより低い周波数を周波数量子化するための利用可能なビットバジェットの割合を推定する推定器を含む請求項16に記載の統合時間領域/周波数領域符号化デバイス。
【請求項20】
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器を含み、前記利用可能なビットバジェットの割合を推定する前記推定器は、前記選択された符号化サブモードに基づき前記利用可能なビットバジェットの前記割合を調整する請求項19に記載の統合時間領域/周波数領域符号化デバイス。
【請求項21】
前記利用可能なビットバジェットの割合を推定する前記推定器は、前記選択された符号化サブモードが前記入力音響信号における時間攻撃の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第1の所与のパーセンテージだけ増やし、前記選択された符号化サブモードが前記入力音響信号における音楽特性の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第2の所与のパーセンテージだけ減らす請求項20に記載の統合時間領域/周波数領域符号化デバイス。
【請求項22】
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器を含み、周波数帯域の前記選択器およびビットの割り当て器は、前記選択された符号化サブモードに関して量子化する前記差分ベクトルの周波数帯域の最大数を推定する推定器を含む請求項17に記載の統合時間領域/周波数領域符号化デバイス。
【請求項23】
周波数帯域の最大数を推定する前記推定器は、量子化する前記差分ベクトルの周波数帯域の前記最大数を、(a)前記入力音響信号における「音声」に似た特性の検出に応じて第1の符号化サブモードが選択される場合、第1の値に、(b)前記入力音響信号における時間攻撃の存在の検出に応じて第2の符号化サブモードが選択される場合、第2の値に、(c)前記入力音響信号における「音楽」に似た特性の検出に応じて第3の符号化サブモードが選択される場合、第3の値に、設定する請求項22に記載の統合時間領域/周波数領域符号化デバイス。
【請求項24】
周波数帯域の最大数を推定する前記推定器は、前記差分ベクトルの周波数量子化に利用可能なビットバジェットに応じて量子化する前記差分ベクトルの周波数帯域の前記最大数を再調整する請求項22または23に記載の統合時間領域/周波数領域符号化デバイス。
【請求項25】
周波数帯域の最大数を推定する前記推定器は、前記差分ベクトルの中間以上の高さの周波数帯域の周波数量子化に割り当てられるビットの数に関連して量子化する周波数帯域の前記最大数をさらに減らす請求項22から24のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項26】
周波数帯域の前記選択器およびビットの割り当て器は、前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットを、(a)前記差分ベクトルのより低い周波数を周波数量子化するために利用可能な前記ビットの数、および(b)前記より低い周波数を周波数量子化するための前記利用可能なビットバジェットの前記割合に応じて計算する計算器を含む請求項19から21のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項27】
前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットの前記計算器は、(a)周波数帯域を周波数量子化するために割り当てられたビットの最小数、(b)前記より低い周波数帯域に続く第1の周波数帯域を量子化するために割り当てられたビットの数、および(c)量子化する周波数帯域の推定された最大数と、量子化する周波数帯域の補正されたさらに減らされた最大数との差にも応じる請求項26に記載の統合時間領域/周波数領域符号化デバイス。
【請求項28】
周波数帯域の前記選択器およびビットの割り当て器は、(a)隣接周波数帯域と比較してより低いエネルギーを有する周波数帯域を見つけ、これらのより低いエネルギーの周波数帯域を周波数量子化するために所定の最小数のビットのみが割り当てられることができるように前記より低いエネルギーの周波数帯域をマークし、(b)他の中間以上の高さのエネルギーの周波数帯域の位置ソートを行うための周波数帯域特性化器を含む請求項16から27のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項29】
前記周波数帯域特性化器は、前記中間以上の高さのエネルギー周波数帯域をエネルギーの降順で位置ソートする請求項28に記載の統合時間領域/周波数領域符号化デバイス。
【請求項30】
周波数帯域の前記選択器およびビットの割り当て器は、前記周波数帯域の前記周波数およびエネルギーを考慮して量子化する前記周波数帯域の間のビットの最終分配器を含む請求項28または29に記載の統合時間領域/周波数領域符号化デバイス。
【請求項31】
ビットの前記最終分配器は、より低い周波数帯域を周波数量子化するために、前記より低い周波数を周波数量子化するために割り当てられた前記ビットを、最初の最も低い周波数帯域に割り当てられた前記ビットの第1のパーセンテージおよび最後のより低い周波数帯域に割り当てられた前記ビットの第2のパーセンテージで線形に分配する請求項30に記載の統合時間領域/周波数領域符号化デバイス。
【請求項32】
前記最終分配器は、前記他の中間以上の高さの周波数帯域にわたって前記差分ベクトルを周波数量子化するために割り当てられた残りのビットを線形関数として分配するが、より高いエネルギーの周波数帯域にはより多くのビットが割り当てられ、より低いエネルギーの周波数帯域にはより少ないビットが割り当てられるように前記周波数帯域特性化器からの前記周波数帯域エネルギー特性化を考慮する請求項30または31に記載の統合時間領域/周波数領域符号化デバイス。
【請求項33】
前記最終分配器は、任意の非割り当てビットを前記より低い周波数帯域に分配する請求項32に記載の統合時間領域/周波数領域符号化デバイス。
【請求項34】
入力音響信号を符号化するための統合時間領域/周波数領域符号化方法であって、
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類するステップであって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、ステップと、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択するステップと、
前記選択された符号化サブモードを使用して前記入力音響信号を混合時間領域/周波数領域符号化するステップとを含む統合時間領域/周波数領域符号化方法。
【請求項35】
前記音響信号カテゴリは、音声、音楽、および前記入力音響信号が音声にも音楽にも分類されないことを示す不明瞭信号タイプを含む請求項34に記載の統合時間領域/周波数領域符号化方法。
【請求項36】
前記分類器が前記入力音響信号を前記音楽カテゴリに分類する場合、前記入力音響信号を周波数領域符号化するステップを含む請求項35に記載の統合時間領域/周波数領域符号化方法。
【請求項37】
前記分類器が前記入力音響信号を前記音声カテゴリに分類する場合、前記入力音響信号を時間領域符号化するステップを含む請求項35または36に記載の統合時間領域/周波数領域符号化方法。
【請求項38】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号を符号化するためのビットレートおよび前記不明瞭信号タイプカテゴリに分類された前記入力音響信号の特性に応じて前記符号化サブモードを選択するステップを含む請求項34から37のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項39】
それぞれのサブモードフラグによって前記符号化サブモードを識別するステップを含む請求項34から38のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項40】
複数の符号化サブモードのうちの1つを選択するステップは、(a)前記入力音響信号を符号化するために利用可能なビットレートが第1の所与の値以下であり、(b)前記入力音響信号が音声にも音楽にも分類されない場合、前記入力音響信号を符号化するためのレガシーの統合時間領域および周波数領域符号化モデルを使用する後方符号化サブモードを選択するステップを含む請求項38または39に記載の統合時間領域/周波数領域符号化方法。
【請求項41】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号において「音声」に似た特性が検出された場合、第1の符号化サブモードを選択するステップを含む請求項38から40のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項42】
前記第1の符号化サブモードは、(a)前記入力音響信号が音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第2の所与の値より高く、(b)前記入力音響信号が音楽である確率が第3の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出されない場合、選択される請求項41に記載の統合時間領域/周波数領域符号化方法。
【請求項43】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号において時間攻撃が検出された場合、第2の符号化サブモードを選択するステップを含む請求項38から42のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項44】
前記第2の符号化サブモードは、(a)前記入力音響信号が音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第4の所与の値より高く、(b)前記入力音響信号が音楽である確率が第5の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出された場合、選択される請求項43に記載の統合時間領域/周波数領域符号化方法。
【請求項45】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号において「音楽」に似た特性が検出された場合、第3の符号化サブモードを選択するステップを含む請求項38から44のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項46】
前記第3の符号化サブモードは、(a)前記入力音響信号が音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第6の所与の値より高く、(b)前記入力音響信号が音楽である確率が第7の所与の値より大きい場合、選択される請求項45に記載の統合時間領域/周波数領域符号化方法。
【請求項47】
前記第1の符号化サブモードは、前記入力音響信号において「音声」に似た特性が検出された場合、選択され、
前記第2の符号化サブモードは、前記入力音響信号において時間攻撃が検出された場合、選択され、
前記第3の符号化サブモードは、前記入力音響信号において「音楽」に似た特性が検出された場合、選択される請求項34から46のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項48】
複数の符号化サブモードのうちの1つを選択するステップは、(a)前記第3の符号化サブモードにおいて、前記入力音響信号を符号化するためにフレーム毎の所有の数のサブフレームを、ならびに(b)前記第1および第2の符号化サブモードにおいて、前記所与の数より少ない、前記入力音響信号を符号化するために利用可能なビットレートに依存する、数のサブフレームを、選択するステップを含む請求項47に記載の統合時間領域/周波数領域符号化方法。
【請求項49】
入力音響信号を符号化するための統合時間領域/周波数領域符号化方法であって、
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類するステップであって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、ステップと、
前記入力音響信号を前記不明瞭信号タイプカテゴリに分類したことに応じて前記入力音響信号を混合時間領域/周波数領域符号化するステップとを含み、
前記入力音響信号を混合時間領域/周波数領域符号化するステップは、量子化する周波数帯域を選択し、前記選択された周波数帯域間で量子化に利用可能なビットバジェットを分配するための周波数帯域選択およびビット割り当てを行うステップを含む統合時間領域/周波数領域符号化方法。
【請求項50】
前記入力音響信号を混合時間領域/周波数領域符号化するステップは、前記入力音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と時間領域励振寄与の周波数表現との間の差分ベクトルを計算するステップを含み、前記周波数帯域は、前記差分ベクトルの周波数帯域である請求項49に記載の統合時間領域/周波数領域符号化方法。
【請求項51】
(a)前記入力音響信号を混合時間領域/周波数領域符号化するステップは、前記入力音響信号の混合時間領域/周波数領域符号化に時間領域励振寄与が使用されないカットオフ周波数を計算するステップを含み、b)前記統合時間領域/周波数領域符号化方法は、前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するための複数の符号化サブモードのうちの1つを選択するステップを含み、前記周波数帯域選択およびビット割り当てでは、量子化する前記周波数帯域を選択し、前記カットオフ周波数および前記選択された符号化サブモードに応じて量子化に利用可能な前記ビットバジェットを分配する請求項49または50に記載の統合時間領域/周波数領域符号化方法。
【請求項52】
前記入力音響信号を混合時間領域/周波数領域符号化するステップは、(a)前記入力音響信号の混合時間領域/周波数領域符号化に時間領域励振寄与が使用されないカットオフ周波数を計算するステップと、(b)前記入力音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と前記時間領域励振寄与の周波数表現との差分ベクトルを計算するステップとを含み、
前記周波数帯域選択およびビット割り当ては、前記カットオフ周波数の関数として前記差分ベクトルのより低い周波数を周波数量子化するための利用可能なビットバジェットの割合を推定するステップを含む請求項49に記載の統合時間領域/周波数領域符号化方法。
【請求項53】
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択するステップを含み、前記利用可能なビットバジェットの割合を推定するステップは、前記選択された符号化サブモードに基づき前記利用可能なビットバジェットの前記割合を調整するステップを含む請求項52に記載の統合時間領域/周波数領域符号化方法。
【請求項54】
前記利用可能なビットバジェットの割合を推定するステップは、前記選択された符号化サブモードが前記入力音響信号における時間攻撃の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第1の所与のパーセンテージだけ増やすステップと、前記選択された符号化サブモードが前記入力音響信号における音楽特性の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第2の所与のパーセンテージだけ減らすステップとを含む請求項53に記載の統合時間領域/周波数領域符号化方法。
【請求項55】
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択するステップを含み、前記周波数帯域選択およびビット割り当ては、前記選択された符号化サブモードに関して量子化する前記差分ベクトルの周波数帯域の最大数を推定するステップを含む請求項50に記載の統合時間領域/周波数領域符号化方法。
【請求項56】
前記差分ベクトルの周波数帯域の最大数を推定するステップは、量子化する前記差分ベクトルの周波数帯域の前記最大数を、(a)前記入力音響信号における「音声」に似た特性の検出に応じて第1の符号化サブモードが選択される場合、第1の値に、(b)前記入力音響信号における時間攻撃の存在の検出に応じて第2の符号化サブモードが選択される場合、第2の値に、(c)前記入力音響信号における「音楽」に似た特性の検出に応じて第3の符号化サブモードが選択される場合、第3の値に、設定するステップを含む請求項55に記載の統合時間領域/周波数領域符号化方法。
【請求項57】
前記差分ベクトルの周波数帯域の最大数を推定するステップは、前記差分ベクトルの周波数量子化に利用可能なビットバジェットに応じて量子化する前記差分ベクトルの周波数帯域の前記最大数を再調整するステップを含む請求項55または56に記載の統合時間領域/周波数領域符号化方法。
【請求項58】
前記差分ベクトルの周波数帯域の最大数を推定するステップは、前記差分ベクトルの中間以上の高さの周波数帯域の周波数量子化に割り当てられるビットの数に関連して量子化する周波数帯域の前記最大数を減らすステップを含む請求項55から57のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項59】
前記周波数帯域選択およびビットの割り当ては、前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットを、(a)前記差分ベクトルのより低い周波数を周波数量子化するために利用可能な前記ビットの数、および(b)前記より低い周波数を周波数量子化するための前記利用可能なビットバジェットの前記割合に応じて、計算するステップを含む請求項52から54のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項60】
前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットを計算するステップは、(a)周波数帯域を周波数量子化するために割り当てられたビットの最小数、(b)前記より低い周波数帯域に続く第1の周波数帯域を量子化するために割り当てられたビットの数、および(c)量子化する周波数帯域の推定された最大数と、量子化する周波数帯域の補正されたさらに減らされた最大数との差にも応じて行われる請求項59に記載の統合時間領域/周波数領域符号化方法。
【請求項61】
前記周波数帯域選択およびビット割り当ては、(a)隣接周波数帯域と比較してより低いエネルギーを有する周波数帯域を見つけ、これらのより低いエネルギーの周波数帯域を周波数量子化するために所定の最小数のビットのみが割り当てられることができるように前記より低いエネルギーの周波数帯域をマークし、(b)他の中間以上の高さのエネルギーの周波数帯域の位置ソートを行うための周波数帯域特性化を含む請求項49から60のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項62】
前記周波数帯域特性化は、前記中間以上の高さのエネルギー周波数帯域をエネルギーの降順で位置ソートするステップを含む請求項61に記載の統合時間領域/周波数領域符号化方法。
【請求項63】
前記周波数帯域選択およびビット割り当ては、前記周波数帯域の前記周波数およびエネルギーを考慮して量子化する前記周波数帯域の間のビットの最終分配を含む請求項61または62に記載の統合時間領域/周波数領域符号化方法。
【請求項64】
ビットの前記最終分配は、より低い周波数帯域を周波数量子化するために、前記より低い周波数を周波数量子化するために割り当てられた前記ビットを、最初の最も低い周波数帯域に割り当てられた前記ビットの第1のパーセンテージおよび最後のより低い周波数帯域に割り当てられた前記ビットの第2のパーセンテージで線形に分配する請求項63に記載の統合時間領域/周波数領域符号化方法。
【請求項65】
ビットの前記最終分配は、前記他の中間以上の高さの周波数帯域にわたって前記差分ベクトルを周波数量子化するために割り当てられた残りのビットを線形関数として分配するが、より高いエネルギーの周波数帯域にはより多くのビットが割り当てられ、より低いエネルギーの周波数帯域にはより少ないビットが割り当てられるように前記周波数帯域エネルギー特性化を考慮するステップを含む請求項63または64に記載の統合時間領域/周波数領域符号化方法。
【請求項66】
ビットの前記最終分配は、任意の非割り当てビットを前記より低い周波数帯域に分配するステップを含む請求項65に記載の統合時間領域/周波数領域符号化方法。
【請求項67】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器と、
前記選択された符号化サブモードを使用して前記入力音響信号を符号化するための混合時間領域/周波数領域エンコーダと
を実装させる非一時的命令を記憶するメモリとを含む統合時間領域/周波数領域符号化デバイス。
【請求項68】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類することであって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類することと、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択することと、
前記選択された符号化サブモードを使用して前記入力音響信号を混合時間領域/周波数領域符号化することと
を実行させる非一時的命令を記憶するメモリとを含む統合時間領域/周波数領域符号化デバイス。
【請求項69】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、
前記入力音響信号を前記不明瞭信号タイプカテゴリに分類したことに応じて前記入力音響信号を符号化するための混合時間領域/周波数領域エンコーダと
を実装させる非一時的命令を記憶するメモリとを含み、
前記混合時間領域/周波数領域エンコーダは、量子化する周波数帯域を選択し、前記選択された周波数帯域間で量子化に利用可能なビットバジェットを分配するための周波数帯域の選択器およびビットの割り当て器を含む統合時間領域/周波数領域符号化デバイス。
【請求項70】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類することであって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類することと、
前記入力音響信号を前記不明瞭信号タイプカテゴリに分類したことに応じて前記入力音響信号を混合時間領域/周波数領域符号化することと、
前記入力音響信号を混合時間領域/周波数領域符号化した後に、量子化する周波数帯域を選択し、前記選択された周波数帯域間で量子化に利用可能なビットバジェットを分配することと
を実行させる非一時的命令を記憶するメモリとを含む統合時間領域/周波数領域符号化デバイス。
【請求項71】
音響信号デコーダであって、
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器であって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記入力音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信器と、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成する再構成器と、
前記混合時間領域/周波数領域励振を時間領域に変換する変換器と、
時間領域に変換された前記混合時間領域/周波数領域励振をフィルタリングして前記音響信号の合成バージョンを生成する合成フィルタとを含む音響信号デコーダ。
【請求項72】
前記符号化サブモードは、サブモードフラグによって前記ビットストリームにおいて識別される請求項71に記載の音響信号デコーダ。
【請求項73】
前記符号化サブモードは、(a)前記音響信号が「音声」に似た特性を含む場合、第1の符号化サブモード、(b)前記音響信号が時間攻撃を含む場合、第2の符号化サブモード、(c)前記音響信号が「音楽」に似た特性を含む場合、第3の符号化サブモードを含む請求項71または72に記載の音響信号デコーダ。
【請求項74】
前記再構成器は、前記ビットストリームで伝達される情報から時間領域励振寄与の周波数表現を回復し、周波数領域励振寄与と前記時間領域励振寄与の前記周波数表現との間の周波数量子化差分ベクトルを再構成し、周波数量子化差分信号を前記時間領域励振寄与の前記周波数表現に加え、前記混合時間領域/周波数領域励振を生成する請求項71から73のいずれか一項に記載の音響信号デコーダ。
【請求項75】
音響信号デコーダであって、
(a)音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された、また(b)(i)量子化のために選択された周波数帯域および(ii)前記周波数帯域の間で分配される量子化に利用可能なビットバジェットを使用して符号化された、前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器と、
前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成する再構成器であって、前記再構成器は、量子化に使用される前記周波数帯域および前記周波数帯域間の量子化に利用可能な前記ビットバジェットの前記分配を選択する、再構成器と、
前記混合時間領域/周波数領域励振を時間領域に変換する変換器と、
時間領域に変換された前記混合時間領域/周波数領域励振をフィルタリングして前記音響信号の合成バージョンを生成する合成フィルタとを含む音響信号デコーダ。
【請求項76】
(a)前記ビットストリームからの前記情報は、前記音響信号の混合時間領域/周波数領域符号化に時間領域励振寄与が使用されないカットオフ周波数と、前記不明瞭信号タイプカテゴリに分類される前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つとを含み、(b)前記再構成器は、前記量子化された周波数帯域を選択し、前記カットオフ周波数および前記使用された符号化サブモードに応じて前記選択された周波数帯域間の逆量子化に利用可能な前記ビットバジェットを分配する請求項75に記載の音響信号デコーダ。
【請求項77】
前記ビットストリームからの前記情報は、時間領域励振寄与が前記音響信号の混合時間領域/周波数領域符号化に使用されないカットオフ周波数を含み、
前記再構成器は、前記音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と前記時間領域励振寄与の周波数表現との間の差分ベクトルのより低い周波数を周波数量子化するための利用可能なビットバジェットの割合を推定する推定器を含む請求項75に記載の音響信号デコーダ。
【請求項78】
前記ビットストリームからの前記情報は、前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含み、前記利用可能なビットバジェットの割合を推定する前記推定器は、前記使用される符号化サブモードに基づき前記利用可能なビットバジェットの前記割合を調整する請求項77に記載の音響信号デコーダ。
【請求項79】
前記利用可能なビットバジェットの割合を推定する前記推定器は、前記符号化サブモードが前記音響信号における時間攻撃の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第1の所与のパーセンテージだけ増やし、前記符号化サブモードが前記入力音響信号における音楽特性の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第2の所与のパーセンテージだけ減らす請求項78に記載の音響信号デコーダ。
【請求項80】
前記ビットストリームからの前記情報は、前記不明瞭信号タイプカテゴリに分類された前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含み、前記再構成器は、前記使用される符号化サブモードに関して量子化差分ベクトルの周波数帯域の最大数を推定する推定器を含み、前記差分ベクトルは前記音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と時間領域励振寄与の周波数表現との間で決定される請求項75から79のいずれか一項に記載の音響信号デコーダ。
【請求項81】
周波数帯域の最大数を推定する前記推定器は、前記量子化差分ベクトルの周波数帯域の前記最大数を、(a)前記音響信号における「音声」特性の検出に応じて第1の符号化サブモードが使用される場合、第1の値に、(b)前記音響信号における時間攻撃の存在の検出に応じて第2の符号化サブモードが使用される場合、第2の値に、(c)前記音響信号における「音楽」特性の検出に応じて第3の符号化サブモードが選択される場合、第3の値に設定する請求項80に記載の音響信号デコーダ。
【請求項82】
周波数帯域の最大数を推定する前記推定器は、前記差分ベクトルの周波数量子化に利用可能なビットバジェットに応じて前記量子化差分ベクトルの周波数帯域の前記最大数を再調整する請求項80または81に記載の音響信号デコーダ。
【請求項83】
周波数帯域の最大数を推定する前記推定器は、前記差分ベクトルの中間以上の高さの周波数帯域の周波数量子化に割り当てられるビットの数に関連して量子化された周波数帯域の前記最大数をさらに減らす請求項80から82のいずれか一項に記載の音響信号デコーダ。
【請求項84】
前記再構成器は、前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットを、(a)前記差分ベクトルのより低い周波数を周波数量子化するために利用可能な前記ビットの数、および(b)前記より低い周波数を周波数量子化するための前記利用可能なビットバジェットの前記割合に応じて計算する計算器を含む請求項77から79のいずれか一項に記載の音響信号デコーダ。
【請求項85】
前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットの前記計算器は、(a)前記量子化された周波数帯域に割り当てられたビットの最小数、(b)前記より低い周波数帯域に続く第1の周波数帯域を量子化するために割り当てられたビットの数、および(c)量子化された周波数帯域の推定最大数と、量子化された周波数帯域の補正されたさらに減らされた最大数との差にも応じる請求項84に記載の音響信号デコーダ。
【請求項86】
前記再構成器は、(a)それらの隣接周波数帯域と比較してより低いエネルギーを有する周波数帯域を見つけ、これらのより低いエネルギーの周波数帯域を周波数量子化するために所定の最小数のビットのみが割り当てられることができるように前記より低いエネルギーの周波数帯域をマークし、(b)他の中間以上の高さのエネルギーの周波数帯域の位置ソートを行うための周波数帯域特性化器を含む請求項75から85のいずれか一項に記載の音響信号デコーダ。
【請求項87】
前記周波数帯域特性化器は、前記中間以上の高さのエネルギー周波数帯域をエネルギーの降順で位置ソートする請求項86に記載の音響信号デコーダ。
【請求項88】
前記再構成器は、前記周波数帯域の前記周波数およびエネルギーを考慮して前記量子化された周波数帯域間のビットの最終分配器を含む請求項86または87に記載の音響信号デコーダ。
【請求項89】
ビットの前記最終分配器は、より低い周波数帯域を周波数逆量子化するために、前記より低い周波数に割り当てられた前記ビットを、最初の最も低い周波数帯域に割り当てられた前記ビットの第1のパーセンテージおよび最後のより低い周波数帯域に割り当てられた前記ビットの第2のパーセンテージで線形に分配する請求項88に記載の音響信号デコーダ。
【請求項90】
前記最終分配器は、前記他の中間以上の高さの周波数帯域にわたって前記差分ベクトルを周波数逆量子化するために割り当てられた残りのビットを線形関数として分配するが、より高いエネルギーの周波数帯域にはより多くのビットが割り当てられ、より低いエネルギーの周波数帯域にはより少ないビットが割り当てられるように前記周波数帯域特性化器からの前記周波数帯域エネルギー特性化を考慮する請求項88または89に記載の音響信号デコーダ。
【請求項91】
前記最終分配器は、任意の非割り当てビットを前記より低い周波数帯域に分配する請求項90に記載の音響信号デコーダ。
【請求項92】
前記再構成器は、前記ビットストリームで伝達される情報から時間領域励振寄与の周波数表現を回復し、前記ビットストリームで伝達される情報から周波数領域励振寄与と前記時間領域励振寄与の前記周波数表現との間の周波数量子化差分ベクトルを再構成し、前記周波数量子化差分信号を前記時間領域励振寄与の前記周波数表現に加え、前記混合時間領域/周波数領域励振を生成する請求項75から91のいずれか一項に記載の音響信号デコーダ。
【請求項93】
前記再構成器は、前記周波数帯域選択および前記周波数帯域間のビットバジェットの前記分配を使用して前記周波数量子化差分ベクトルを再構成する請求項92に記載の音響信号デコーダ。
【請求項94】
音響信号デコード方法であって、
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信するステップであって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、ステップと、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて、前記混合時間領域/周波数領域励振を再構成するステップと、
前記混合時間領域/周波数領域励振を時間領域に変換するステップと、
時間領域に変換された前記混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして前記音響信号の合成バージョンを生成するステップとを含む音響信号デコード方法。
【請求項95】
前記符号化サブモードは、サブモードフラグによって前記ビットストリームにおいて識別される請求項94に記載の音響信号デコード方法。
【請求項96】
前記符号化サブモードは、(a)前記音響信号が「音声」に似た特性を含む場合、第1の符号化サブモード、(b)前記音響信号が時間攻撃を含む場合、第2の符号化サブモード、(c)前記音響信号が「音楽」に似た特性を含む場合、第3の符号化サブモードを含む請求項94または95に記載の音響信号デコード方法。
【請求項97】
前記混合時間領域/周波数領域励振を再構成するステップは、前記ビットストリームで伝達された前記情報から時間領域励振寄与の周波数表現を回復するステップと、前記ビットストリームで伝達された前記情報から周波数領域励振寄与と前記時間領域励振寄与の前記周波数表現との間の周波数量子化差分ベクトルを再構成するステップと、前記周波数量子化差分信号を前記時間領域励振寄与の前記周波数表現に加えて前記混合時間領域/周波数領域励振を生成するステップとを含む請求項94から96のいずれか一項に記載の音響信号デコード方法。
【請求項98】
音響信号デコード方法であって、
(a)音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された、また(b)(i)量子化のために選択された周波数帯域および(ii)前記周波数帯域の間で分配される量子化に利用可能なビットバジェットを使用して符号化された、前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信するステップと、
前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成するステップであって、前記混合時間領域/周波数領域励振を再構成するステップは、量子化に使用される前記周波数帯域および前記周波数帯域間の量子化に利用可能な前記ビットバジェットの前記分配を選択するステップを含む、ステップと、
前記混合時間領域/周波数領域励振を時間領域に変換するステップと、
時間領域に変換された前記混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして前記音響信号の合成バージョンを生成するステップとを含む音響信号デコード方法。
【請求項99】
(a)前記ビットストリームからの前記情報は、前記音響信号の混合時間領域/周波数領域符号化に時間領域励振寄与が使用されないカットオフ周波数と、前記不明瞭信号タイプカテゴリに分類される前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つとを含み、(b)前記混合時間領域/周波数領域励振を再構成するステップは、前記量子化された周波数帯域を選択するステップと、前記カットオフ周波数および前記使用された符号化サブモードに応じて前記選択された周波数帯域間の逆量子化に利用可能な前記ビットバジェットを分配するステップとを含む請求項98に記載の音響信号デコード方法。
【請求項100】
前記ビットストリームからの前記情報は、時間領域励振寄与が前記音響信号の混合時間領域/周波数領域符号化に使用されないカットオフ周波数を含み、
前記混合時間領域/周波数領域励振再構成するステップは、前記音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と前記時間領域励振寄与の周波数表現との間の差分ベクトルのより低い周波数を周波数量子化するための利用可能なビットバジェットの割合を推定するステップを含む請求項98に記載の音響信号デコード方法。
【請求項101】
前記ビットストリームからの前記情報は、前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含み、前記利用可能なビットバジェットの割合を推定するステップは、前記使用される符号化サブモードに基づき前記利用可能なビットバジェットの前記割合を調整するステップを含む請求項100に記載の音響信号デコード方法。
【請求項102】
前記利用可能なビットバジェットの割合を推定するステップは、前記符号化サブモードが前記音響信号における時間攻撃の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第1の所与のパーセンテージだけ増やすステップと、前記符号化サブモードが前記入力音響信号における音楽特性の存在を指示する場合、前記利用可能なビットバジェットの前記割合を前記利用可能なビットバジェットの第2の所与のパーセンテージだけ減らすステップとを含む請求項101に記載の音響信号デコード方法。
【請求項103】
前記ビットストリームからの前記情報は、前記不明瞭信号タイプカテゴリに分類された前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含み、前記混合時間領域/周波数領域励振を再構成するステップは、前記使用される符号化サブモードに関して量子化差分ベクトルの周波数帯域の最大数を推定するステップを含み、前記差分ベクトルは前記音響信号の混合時間領域/周波数領域符号化において生成される周波数領域励振寄与と時間領域励振寄与の周波数表現との間で決定される請求項98から102のいずれか一項に記載の音響信号デコード方法。
【請求項104】
周波数帯域の最大数を推定するステップは、前記量子化差分ベクトルの周波数帯域の前記最大数を、(a)前記音響信号における「音声」特性の検出に応じて第1の符号化サブモードが使用される場合、第1の値に、(b)前記音響信号における時間攻撃の存在の検出に応じて第2の符号化サブモードが使用される場合、第2の値に、(c)前記音響信号における「音楽」特性の検出に応じて第3の符号化サブモードが選択される場合、第3の値に設定するステップを含む請求項103に記載の音響信号デコード方法。
【請求項105】
前記差分ベクトルの周波数帯域の最大数を推定するステップは、前記差分ベクトルの周波数量子化に利用可能なビットバジェットに応じて前記差分ベクトルの量子化された周波数帯域の前記最大数を再調整するステップを含む請求項103または104に記載の音響信号デコード方法。
【請求項106】
前記差分ベクトルの周波数帯域の最大数を推定するステップは、前記差分ベクトルの中間以上の高さの周波数帯域の周波数量子化に割り当てられるビットの数に関連して量子化周波数帯域の前記最大数を減らすステップを含む請求項103から105のいずれか一項に記載の音響信号デコード方法。
【請求項107】
前記混合時間領域/周波数領域励振を再構成するステップは、前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットの数を、(a)前記差分ベクトルのより低い周波数を周波数量子化するために利用可能な前記ビットの数、および(b)前記より低い周波数を周波数量子化するための前記利用可能なビットバジェットの前記割合に応じて計算するステップを含む請求項100から102のいずれか一項に記載の音響信号デコード方法。
【請求項108】
前記差分ベクトルのより低い周波数帯域を周波数量子化するために割り当てられたビットの数を計算するステップは、(a)前記量子化された周波数帯域に割り当てられたビットの最小数、(b)前記より低い周波数帯域に続く第1の周波数帯域を量子化するために割り当てられたビットの数、および(c)量子化された周波数帯域の推定最大数と、量子化された周波数帯域の補正されたさらに減らされた最大数との差にも応じる請求項107に記載の音響信号デコード方法。
【請求項109】
前記混合時間領域/周波数領域励振を再構成するステップは、(a)隣接周波数帯域と比較してより低いエネルギーを有する周波数帯域を見つけ、これらのより低いエネルギーの周波数帯域を周波数量子化するために所定の最小数のビットのみが割り当てられることができるように前記より低いエネルギーの周波数帯域をマークし、(b)他の中間以上の高さのエネルギーの周波数帯域の位置ソートを行うために前記周波数帯域を特性化するステップを含む請求項98から108のいずれか一項に記載の音響信号デコード方法。
【請求項110】
前記周波数帯域を特性化するステップは、前記中間以上の高さのエネルギー周波数帯域をエネルギーの降順で位置ソートするステップを含む請求項109に記載の音響信号デコード方法。
【請求項111】
前記混合時間領域/周波数領域励振を再構成するステップは、前記周波数帯域の前記周波数およびエネルギーを考慮して前記量子化された周波数帯域間のビットの最終分配を含む請求項109または110に記載の音響信号デコード方法。
【請求項112】
ビットの前記最終分配は、より低い周波数帯域を周波数逆量子化するために、前記より低い周波数に割り当てられた前記ビットを、最初の最も低い周波数帯域に割り当てられた前記ビットの第1のパーセンテージおよび最後のより低い周波数帯域に割り当てられた前記ビットの第2のパーセンテージで線形に分配するステップを含む請求項111に記載の音響信号デコード方法。
【請求項113】
ビットの前記最終分配は、前記他の中間以上の高さの周波数帯域にわたって前記差分ベクトルを周波数逆量子化するために割り当てられた残りのビットを線形関数として分配するが、より高いエネルギーの周波数帯域にはより多くのビットが割り当てられ、より低いエネルギーの周波数帯域にはより少ないビットが割り当てられるように前記周波数帯域エネルギー特性化を考慮するステップを含む請求項111または112に記載の音響信号デコード方法。
【請求項114】
前記最終な分配は、任意の非割り当てビットを前記より低い周波数帯域に分配するステップを含む請求項113に記載の音響信号デコード方法。
【請求項115】
前記混合時間領域/周波数領域励振を再構成するステップは、前記ビットストリームで伝達された前記情報から時間領域励振寄与の周波数表現を回復するステップと、前記ビットストリームで伝達された前記情報から周波数領域励振寄与と前記時間領域励振寄与の前記周波数表現との間の周波数量子化差分ベクトルを再構成するステップと、前記周波数量子化差分信号を前記時間領域励振寄与の前記周波数表現に加えて前記混合時間領域/周波数領域励振を生成するステップとを含む請求項98から114のいずれか一項に記載の音響信号デコード方法。
【請求項116】
前記混合時間領域/周波数領域励振を再構成するステップは、前記周波数帯域選択および前記周波数帯域間のビットバジェットの前記分配を使用して前記周波数量子化差分ベクトルを再構成するステップを含む請求項115に記載の音響信号デコード方法。
【請求項117】
音響信号デコーダであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器であって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信器と、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成する再構成器と、
前記混合時間領域/周波数領域励振を時間領域に変換する変換器と、
時間領域に変換された前記混合時間領域/周波数領域励振をフィルタリングして前記音響信号の合成バージョンを生成する合成フィルタと
を実装させる非一時的命令を記憶するメモリとを含む音響信号デコーダ。
【請求項118】
音響信号デコーダであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信することであって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記入力音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信することと、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて、前記混合時間領域/周波数領域励振を再構成することと、
前記混合時間領域/周波数領域励振を時間領域に変換することと、
時間領域に変換された前記混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして前記音響信号の合成バージョンを生成することと
を実行させる非一時的命令を記憶するメモリとを含む音響信号デコーダ。
【請求項119】
音響信号デコーダであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
(a)音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された、また(b)(i)量子化のために選択された周波数帯域および(ii)前記周波数帯域の間で分配される量子化に利用可能なビットバジェットを使用して符号化された、前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器と、
前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成する再構成器であって、前記再構成器は、量子化に使用される前記周波数帯域および前記周波数帯域間の量子化に利用可能な前記ビットバジェットの前記分配を選択する、再構成器と、
前記混合時間領域/周波数領域励振を時間領域に変換する変換器と、
時間領域に変換された前記混合時間領域/周波数領域励振をフィルタリングして前記音響信号の合成バージョンを生成する合成フィルタと
を実装させる非一時的命令を記憶するメモリとを含む音響信号デコーダ。
【請求項120】
音響信号デコーダであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
(a)音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された、また(b)(i)量子化のために選択された周波数帯域および(ii)前記周波数帯域の間で分配される量子化に利用可能なビットバジェットを使用して符号化された、前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信することと、
前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成することであって、前記再構成は、量子化に使用される前記周波数帯域および前記周波数帯域間の量子化に利用可能な前記ビットバジェットの前記分配を選択する、再構成することと、
前記混合時間領域/周波数領域励振を時間領域に変換することと、
時間領域に変換された前記混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして前記音響信号の合成バージョンを生成することと
を実行させる非一時的命令を記憶するメモリとを含む音響信号デコーダ。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、入力音響信号(sound signal)を符号化するための混合時間領域および周波数領域符号化モード(mixed time-domain and frequency-domain coding mode)を使用する統合時間領域/周波数領域符号化(unified time-domain/frequency-domain coding)デバイスおよび方法、ならびに対応するデコーダデバイスおよびデコード方法に関する。
【0002】
本開示および添付の特許請求の範囲において、
- 「音響」という用語は、音声(speech)、音楽および残響音声などの一般オーディオ(generic audio)信号、ならびに任意の他の音響に関係するものとしてよい。
【背景技術】
【0003】
先行技術の会話コーデックは、約8kbpsのビットレートでクリーンな音声信号を非常に良い品質で表現することができ、16kbpsのビットレートでは透明性に近づくことができる。しかしながら、16kbps未満のビットレートでは、ほとんどの場合に入力音声信号を時間領域で符号化する低処理遅延会話コーデックは、音楽および残響音声などの、一般オーディオ信号には適さない。この欠点を克服するために、基本的に時間領域アプローチを使用して音声主体入力音響信号を符号化し、周波数領域アプローチを使用して一般オーディオ信号を符号化する、スイッチングコーデック(switched codecs)が導入されている。しかしながら、そのようなスイッチング方式の解決方法は、典型的には、音声音楽分類および周波数領域への変換の計算の両方に必要な、より長い処理遅延時間を必要とする。
【0004】
より長い処理遅延時間に関係する上記の欠点を克服するために、より統合された時間領域および周波数領域符号化モデルが、米国特許第9,015,038号において提案されている(その全内容が参照により本明細書に組み込まれている文献[1]を参照)。この統合時間領域および周波数領域符号化モデルは、その全内容が参照により本明細書に組み込まれている参照文献[2]において説明されているように3GPP(登録商標)(第3世代パートナーシッププロジェクト)によって標準化されたEVS(拡張音声サービス)音響コーデックの一部である。近年、3GPPは、EVSコーデックに基づきIVAS(没入型音声およびオーディオサービス(Immersive Voice and Audio Services))と呼ばれる没入型サービス用の3D(3次元)音響コーデックの開発に取り組み始めた(その全内容が参照により本明細書に組み込まれている文献[3]を参照)。
【0005】
符号化モデルを特定の種類の信号に対してさらに効率的にするために、利用可能なビットを時間領域と周波数領域との間、および低周波数と高周波数との間に効率的に割り当てるための符号化モードが追加された。追加の符号化モードは、新しい音声/音楽分類器によってトリガーされ、その出力は、音楽にも音声にも明瞭に分類できない信号に対する不明瞭カテゴリを可能にする(その全内容が参照により本明細書に組み込まれている文献[4]を参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】米国特許第9,015,038号
【発明の概要】
【課題を解決するための手段】
【0007】
本開示は、入力音響信号を符号化するための統合時間領域/周波数領域符号化方法に関係する。この方法は、入力音響信号を複数の音響信号カテゴリのうちの1つに分類することであって、音響信号カテゴリは、入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類することと、入力音響信号が不明瞭信号タイプカテゴリに分類される場合、入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択することと、選択された符号化サブモードを使用して入力音響信号を混合時間領域/周波数領域符号化することとを含む。
【0008】
本開示は、また、入力音響信号を符号化するための統合時間領域/周波数領域符号化方法に関係し、これは入力音響信号を複数の音響信号カテゴリのうちの1つに分類することであって、音響信号カテゴリは、入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類することと、入力音響信号を不明瞭信号タイプカテゴリに分類したことに応じて入力音響信号を混合時間領域/周波数領域符号化することとを含む。入力音響信号を混合時間領域/周波数領域符号化することは、量子化する周波数帯域を選択し、選択された周波数帯域間で量子化に利用可能なビットバジェットを分配するための周波数帯域選択およびビット割り当てを含む。
【0009】
本開示によれば、入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスがさらに提供され、これは入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、音響信号カテゴリは、入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、入力音響信号が不明瞭信号タイプカテゴリに分類される場合、入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器と、選択された符号化サブモードを使用して入力音響信号を符号化するための混合時間領域/周波数領域エンコーダとを含む。
【0010】
本開示は、なおもさらに、入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスに関わり、これは入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、音響信号カテゴリは、入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、入力音響信号を不明瞭信号タイプカテゴリに分類したことに応じて入力音響信号を符号化するための混合時間領域/周波数領域エンコーダとを含む。混合時間領域/周波数領域エンコーダは、量子化する周波数帯域を選択し、選択された周波数帯域間で量子化に利用可能なビットバジェットを分配するための周波数帯域の選択器およびビットの割り当て器を含む。
【0011】
本開示は、音響信号デコード方法を提供し、これは音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信することであって、情報は、不明瞭信号タイプカテゴリに分類された入力音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信することと、入力音響信号を符号化するために使用される符号化サブモードを含む、ビットストリームで伝達される情報に応じて、混合時間領域/周波数領域励振を再構成することと、混合時間領域/周波数領域励振を時間領域に変換することと、時間領域に変換された混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして音響信号の合成バージョンを生成することとを含む。
【0012】
本開示は、音響信号デコード方法を提案し、これは(a)音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された、また(b)(i)量子化のために選択された周波数帯域および(ii)周波数帯域の間で分配される量子化に利用可能なビットバジェットを使用して符号化された、音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信することと、ビットストリームで伝達される情報に応じて混合時間領域/周波数領域励振を再構成することであって、混合時間領域/周波数領域励振を再構成することは、量子化に使用される周波数帯域および周波数帯域間の量子化に利用可能なビットバジェットの分配を選択することを含む、再構成することと、混合時間領域/周波数領域励振を時間領域に変換することと、時間領域に変換された混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして音響信号の合成バージョンを生成することとを含む。
【0013】
本開示によれば、音響信号デコーダが提供され、これは、音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器であって、情報は、不明瞭信号タイプカテゴリに分類された音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信器と、入力音響信号を符号化するために使用される符号化サブモードを含む、ビットストリームで伝達される情報に応じて混合時間領域/周波数領域励振を再構成する再構成器と、混合時間領域/周波数領域励振を時間領域に変換する変換器と、時間領域に変換された混合時間領域/周波数領域励振をフィルタリングして音響信号の合成バージョンを生成する合成フィルタとを含み含む。
【0014】
本開示は、なおもさらに、音響信号デコーダに関わり、これは、(a)音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された、また(b)(i)量子化のために選択された周波数帯域および(ii)周波数帯域の間で分配される量子化に利用可能なビットバジェットを使用して符号化された、音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器と、ビットストリームで伝達される情報に応じて混合時間領域/周波数領域励振を再構成する再構成器であって、再構成器は、量子化に使用される周波数帯域および周波数帯域間の量子化に利用可能なビットバジェットの分配を選択する、再構成器と、混合時間領域/周波数領域励振を時間領域に変換する変換器と、時間領域に変換された混合時間領域/周波数領域励振をフィルタリングして音響信号の合成バージョンを生成する合成フィルタとを含み含む。
【0015】
前述のおよび他の特徴は、添付図面を参照しつつ例のみを用いて与えられている、統合時間領域/周波数領域符号化方法、統合時間領域/周波数領域符号化デバイス、デコード方法、およびデコーダデバイスの例示的な実施形態の次の非限定的な説明を読むことでより明らかになるであろう。
【0016】
添付図面の説明を以下に示す。
【図面の簡単な説明】
【0017】
図1】統合時間領域/周波数領域CELP(符号励振線形予測)符号化方法、および対応する統合時間領域/周波数領域CELP符号化デバイス、たとえばACELP(代数符号励振線形予測)符号化方法およびデバイスの概要を同時に例示する概略ブロック図である。
図2図1の統合時間領域/周波数領域符号化方法およびデバイスのより詳細な構造を示す概略ブロック図であり、プリプロセッサが入力音響信号を分類するために第1のレベルの分析を行う様子を示す、図である。
図3】時間領域励振寄与のカットオフ周波数の計算器およびカットオフ周波数を推定する対応する動作の概要を同時に例示する概略ブロック図である。
図4図3のカットオフ周波数の計算器およびカットオフ周波数を推定する対応する動作のより詳細な構造を例示する概略ブロック図である。
図5】周波数量子化器および対応する周波数量子化動作の概要を同時に例示する概略ブロック図である。
図6図5の周波数量子化器および周波数量子化動作のより詳細な構造の概略ブロック図である。
図7】統合時間領域/周波数領域CELP符号化方法および対応する統合時間領域/周波数領域CELP符号化デバイスの代替的実装形態を同時に例示する概略ブロック図である。
図8】符号化サブモードを選択する動作および対応するサブモード選択器を同時に例示する概略ブロック図である。
図9図7および図8の代替的実装形態において入力音響信号が音声にも音楽にも分類されないときに利用可能なビットバジェットを周波数領域符号化モードに分配するための帯域選択器およびビット割り当て器ならびに帯域選択およびビット割り当ての対応する動作を同時に例示する概略ブロック図である。
図10】入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスおよび方法を形成するハードウェアコンポーネントの例示的な構成の簡略化されたブロック図である。
図11図7の統合時間領域/周波数領域符号化デバイスおよび対応する統合時間領域/周波数領域符号化方法からビットストリームをデコードするためのデコーダデバイス1100および対応するデコード方法1150を同時に例示する概略ブロック図である。
図12】不明瞭信号タイプカテゴリに分類された音響信号の場合、統合時間領域/周波数領域符号化デバイスおよび対応する統合時間領域/周波数領域符号化方法からのビットストリームをデコードするための音響信号デコーダおよび対応する音響信号デコード方法を同時に例示する概略ブロック図である。
【発明を実施するための形態】
【0018】
本開示は、処理遅延およびビットレートを増大させることなく、たとえば音楽および/または残響音声などの、一般オーディオ信号に対する合成品質を改善する統合時間領域および周波数領域符号化モデルを提案する。この統合時間領域および周波数領域符号化モデルは、
- 線形予測(LP)残差領域で動作し、利用可能なビットが適応コードブック、1つまたは複数の固定コードブック(たとえば、代数コードブック、ガウスコードブックなど)、可変長固定コードブックの間で動的に割り当てられる、時間領域符号化モード、および
- 周波数領域符号化モードを含み、
これは入力音響信号の特性に依存する。
【0019】
たとえば、音楽および/または残響音声などの一般オーディオ信号の合成品質を改善する低処理遅延および低ビットレートの会話音響コーデックを実現するために、周波数領域符号化モードは、CELP(符号励振線形予測)時間領域符号化モードに可能な限り近くなるように統合される。その目的のために、周波数領域符号化モードは、LP(線形予測)残差領域で実行される周波数変換を使用する。これは、一方のフレーム、たとえば、20msのフレームから他方のフレームへ、ほぼアーチファクトなしに切り替えることを可能にする。音響コーデックの技術分野ではよく知られているように、入力音響信号は、所与のサンプリングレートでサンプリングされ、通常は多数の「サブフレーム」に分割される、「フレーム」と呼ばれるこれらのサンプルのグループによって処理される。ここで、2つの時間領域符号化モードおよび周波数領域符号化モードの統合は、現在の符号化モードが十分に効率的でないと決定された場合、ビットバジェットを他方の符号化モードに動的に再割り当てすることを可能にするくらい十分に近い。
【0020】
提案された統合時間領域および周波数領域符号化モデルの1つの特徴は、時間領域成分の可変時間サポートであり、この可変時間サポートは、フレーム毎に1/4フレーム(サブフレーム)から完全なフレームまで変化する。非限定的な例示的例として、フレームは、入力音響信号の20msを表し得る。そのようなフレームは、音響コーデックの内部サンプリングレートが16kHzの場合、入力音響信号の320サンプル、またはコーデックの内部サンプリングレートが12.8kHzの場合、1フレームあたり256サンプルに対応する。サブフレーム(本発明の例では1フレームの1/4)は、音響コーデックの内部サンプリングレートに応じて80または64サンプルを表す。本発明の非制限的な例示的な実施形態では、音響コーデックの内部サンプリングレートは、12.8kHzであり、入力音響信号の256サンプルのフレーム長および64サンプルのサブフレーム長を与える。
【0021】
可変時間サポートは、基本的時間領域励振寄与を生成するための最小ビットレートで主要時間的事象をキャプチャすることを可能にする。非常に低いビットレートでは、時間サポートは、通常、フレーム全体である。その場合、励振の時間領域寄与は、適応コードブックのみからなり、対応する適応コードブック(ピッチ)情報および利得はフレーム毎に1伝送される。より多くのビットレートが利用可能なときに、時間サポートを短くし、時間領域符号化モードに割り当てられるビットレートを増やすことによってより多くの時間的事象をキャプチャすることが可能である。最終的に、時間サポートが十分に短く(1フレームの4分の1(サブフレーム)よりも短い)、利用可能なビットレートが十分に高いときに、励振の時間領域寄与は、各サブフレームについて、対応する適応コードブック利得を伴う適応コードブック寄与、対応する固定コードブック利得を伴う固定コードブック寄与、または対応する利得を伴う適応コードブック寄与と固定コードブック寄与の両方を含み得る。代替的に、フレームの各半分(サブフレーム)について、対応する適応コードブック利得を伴う適応コードブック寄与と、対応する固定コードブック利得を伴う固定コードブック寄与をトランスポートすることも可能であり、これは時間的事象をそのまま符号化することができる一方でビットレートを消費しすぎないという利点を有する。次いで、コードブックインデックスおよび利得を記述するパラメータは、各サブフレームについて伝送される。
【0022】
低ビットレートでは、会話音響コーデックは、より高い周波数を適切に符号化することができない。これは、入力音響信号が音楽および/または残響音声を含むときに合成品質の重要な劣化を引き起こす。この問題を解決するために、時間領域励振寄与の効率を計算する特徴が追加されている。いくつかの場合において、入力ビットレートおよび時間フレームサポートがどのようなものであっても、時間領域励振寄与は価値がない。それらの場合において、すべてのビットは、周波数領域符号化の次のステップに再割り当てされる。しかし、その時間のほとんどにおいて、時間領域励振寄与は、特定の周波数(ここでは「カットオフ周波数」の後)までのみ価値がある。これらの場合において、時間領域励振寄与はカットオフ周波数より上でフィルタリング除去される。フィルタリング動作は、時間領域励振寄与で符号化された価値のある情報を保持し、カットオフ周波数より上の価値のない情報を取り除くことを可能にする。非制限的な例示的実施形態において、フィルタリングは、特定の周波数(カットオフ周波数)より上の周波数ビンをゼロに設定することによって周波数領域内で実行される。
【0023】
可変カットオフ周波数と組み合わせた可変時間サポートは、統合時間領域および周波数領域符号化モデルの内側のビット割り当てを非常に動的なものにする。LPフィルタの量子化の後のビットレートは、完全に時間領域に割り当てられるか、または完全に周波数領域に割り当てられるか、またはその中間のどこかに割り当てられることもできる。時間領域と周波数領域との間のビットレートの割り当ては、時間領域励振寄与に使用されるサブフレームの数、利用可能なビットバジェット、および計算されたカットオフ周波数の関数として実行される。統合時間領域および周波数領域符号化モデルを特定の種類の入力音響信号に対してなおいっそう効率的なモデルにするために、利用可能なビットを時間領域、周波数領域の間、および低周波数と高周波数の間の領域に効率的に割り当てる特定の符号化サブモードが追加される。これらの追加された特定の符号化サブモードは、不明瞭信号カテゴリ(音楽にも音声にも明確に分類できない信号)を可能にする出力を生成する新しい音声/音楽オーディオ分類器を使用して決定される。
【0024】
入力LP残差とより効率的に一致する全励振を生成するために、周波数領域符号化モードが適用される。周波数領域符号化が、入力LP残差の周波数表現(周波数変換)と、カットオフ周波数までのフィルタリングされた時間領域励振寄与の周波数表現(周波数変換)との差を含み、そのカットオフ周波数より上の入力LP残差それ自体の周波数表現(周波数変換)を含む、ベクトルに対して実行されるということが特徴である。カットオフ周波数のすぐ上では両方のセグメントの間に滑らかなスペクトル遷移が挿入される。言い換えると、時間領域励振寄与の周波数表現の高周波数部分は、最初に、カットオフ周波数より上でゼロにされる。スペクトルの無変更部分と時間領域励振寄与のスペクトルのゼロにされた部分との間の遷移領域は、スペクトルの両方の部分の間の滑らかな遷移を確実にするためにカットオフ周波数のすぐ上に挿入される。次いで、時間領域励振寄与のこの修正されたスペクトルは、入力LP残差の周波数表現から差し引かれる。その結果得られるスペクトルは、それにより、カットオフ周波数より下の両方のスペクトルの差、およびカットオフ周波数より上のLP残差の周波数表現に対応し、何らかの遷移領域がある。カットオフ周波数は、上述したように、フレーム毎に異なることができる。
【0025】
どのような周波数量子化方法(周波数領域符号化モード)が選択されたとしても、特に長いウィンドウがある場合にプリエコーの可能性が常にある。本明細書において開示されている技術では、使用されるウィンドウは、正方形のウィンドウであり、したがって符号化された入力音響信号と比較した余分なウィンドウ長は0である、すなわち、重畳加算は使用されない。これは、潜在的なプリエコーを低減するための最良のウィンドウに対応するが、時間的な攻撃ではある程度のプリエコーがまだ聞こえ得る。そのようなプリエコー問題を解決するための技術は数多く存在するが、本開示では、このプリエコー問題を相殺するための単純な特徴を提案する。この特徴は、全内容が参照により本明細書に組み込まれている、ITU-T勧告G.718の「Transition Mode」、文献[5]、6.8.1.4項および6.8.4.2項、から導出されるメモリレス時間領域符号化モードに基づく。この特徴の背後にある考え方は、提案された統合時間領域および周波数領域符号化モデルがLP残差領域に統合されているという事実を利用することであり、これはほとんどいつでもアーチファクトなしでスイッチングを可能にする。入力音響信号が一般オーディオ(音楽および/または残響音声)であると考えられるときに、また1つのフレーム内で時間攻撃が検出されたときに、このフレームのみが、メモリレス時間領域符号化モードでエンコード(encode)される。このメモリレス時間領域符号化モードは時間攻撃に備え、それにより、そのフレームの周波数領域符号化を使用するときに導入される可能性のあるプリエコーを回避する。
【0026】
非制限的な例示的実施形態
提案された統合時間領域および周波数領域符号化モデルでは、上述の適応コードブック、1つまたは複数の固定コードブック(たとえば、代数コードブック、ガウスコードブックなど)、すなわち、いわゆる時間領域コードブック、および周波数領域量子化(周波数領域符号化モード)は、コードブックライブラリとして見なすことができ、ビットは、すべての利用可能なコードブック、またはそのサブセットの間で分配され得る。これは、たとえば、入力音響信号がクリーンな音声の場合、すべてのビットが時間領域符号化モードに割り当てられ、基本的に符号化をレガシーCELP方式に縮小することを意味する。他方、いくつかの音楽セグメントについては、入力LP残差をエンコードするために割り当てられたすべてのビットは、ときには、周波数領域、たとえば変換領域において費やされるのが最もよい。さらに、(a)時間領域が全利用可能ビットレートのより大きな部分を使用して、周波数情報の一部を符号化するためにビットをそのまま維持しながらより多くの時間領域事象を符号化するか、または(b)低周波数コンテンツが高周波数コンテンツよりも高い優先度を付けられ、およびその逆に優先度を付けられる、特定の場合が追加され得る。
【0027】
前述の説明で示されているように、時間領域符号化モードおよび周波数領域符号化モードに対する時間サポートは同じである必要はない。異なる時間領域符号化動作(適応および代数コードブック検索)に費やされるビットは、通常、サブフレームベース(典型的には、1フレームの4分の1、または時間サポートの5ミリ秒)で分配されるが、周波数領域符号化モードに割り当てられるビットは、周波数分解能を改善するために、フレームベース(典型的には、時間サポートの20ミリ秒)で分配される。
【0028】
時間領域CELP符号化モードに割り当てられるビットバジェットはまた、入力音響信号に応じて動的に制御され得る。いくつかの場合において、時間領域CELP符号化モードに割り当てられるビットバジェットは、ゼロにすることができ、これは事実上、全ビットバジェットが周波数領域符号化モードに帰属することを意味する。時間領域符号化モードおよび周波数領域符号化モードの両方に対してLP残差領域で動作することの選択は、2つの主な利点を有する。第1に、音声信号符号化で効率的であることが証明された、時間領域CELP符号化モードと互換性がある。その結果、2つのタイプの符号化モード(時間領域符号化モードおよび周波数領域符号化モード)のスイッチングに起因するアーチファクトが導入されない。第2に、元の入力音響信号に対するLP残差のダイナミクスが低く、相対的に平坦であるので、周波数変換に対して正方形のウィンドウを使用することが容易になり、非重複ウィンドウの使用が可能になる。
【0029】
コーデックの内部サンプリングレートが12.8kHz(1フレームあたり256サンプルを意味する)である非限定的な例では、ITU-T勧告G.718(文献[5])と同様に、時間領域CELP符号化モードで使用されるサブフレームの長さは、フレーム長の典型的な1/4(5ms)から半フレーム(10ms)または完全フレーム長(20ms)まで変化することができる。サブフレーム長の決定は、利用可能なビットレート、および入力音響信号の分析、特にこの入力音響信号のスペクトルダイナミックスに基づく。サブフレーム長の決定は、閉ループ方式で実行され得る。複雑さを軽減するために、オープンループ方式のサブフレーム長の決定をベースとすることも可能である。サブフレーム長の決定は、信号分類器、たとえば音声/音楽分類器によって検出されるような入力音響信号の性質によっても制御され得る。サブフレーム長は、フレーム毎に変更することができる。
【0030】
サブフレームの長さが現在のフレームにおいて選択された後、標準閉ループピッチ分析が実行され、励振信号への第1の寄与は適応コードブックから選択される。次いで、利用可能なビットバジェットおよび入力音響信号の特性(たとえば、入力音声信号の場合)に応じて、変換領域での変換の前に、1つまたは複数の固定コードブックからの第2の寄与が追加され得る。その結果得られる励振寄与は、時間領域励振寄与である。他方、非常に低いビットレートにおいて、および一般オーディオ信号の場合、、固定コードブック段階をスキップし、残りのビットをすべて変換領域符号化に使用することがよい場合が多い。変換領域符号化は、たとえば、周波数領域符号化モードとすることができる。上で説明されているように、サブフレーム長は、フレームの1/4、フレームの1/2、または1フレーム長とすることができる。固定コードブック寄与は、サブフレーム長がフレーム長の1/4に等しい場合にのみ使用される。サブフレーム長がフレームの半分またはフレーム全体の長さとなるように決定された場合、適応コードブック寄与のみが、時間領域励振寄与を表すために使用され、残りのすべてのビットは、周波数領域符号化モードに割り当てられる。代替的に、サブフレーム長がフレーム長の半分に等しいときに固定コードブックが使用され得る追加の符号化モードが説明される。この追加は、周波数領域励振寄与を符号化するための許容可能なビットバジェットを維持しながら時間的事象を含む特定の種類の入力音響信号の品質を改善するために行われた。
【0031】
時間領域励振寄与の計算が完了した後、その効率が評価され、量子化される必要がある。時間領域における符号化の利得が非常に低い場合、時間領域励振寄与を完全に取り除き、周波数領域符号化モードに対してすべてのビットを使用することがより効率的である。他方、たとえば、入力音声信号がクリーンな場合、周波数領域符号化モードは必要なく、すべてのビットは、時間領域符号化モードに割り当てられる。しかし、多くの場合に、時間領域での符号化は、特定の周波数までしか効率的でない。この周波数は、時間領域励振寄与の上述のカットオフ周波数に対応する。そのようなカットオフ周波数の決定は、時間領域符号化全体が、周波数領域符号化に不利に働くのではなくむしろ、より良い最終合成を得るのに役立つことを保証する。
【0032】
カットオフ周波数は、周波数領域内で推定され得る。カットオフ周波数を計算するために、LP残差および時間領域励振寄与の両方のスペクトルは、最初に、事前定義された数の周波数帯域に分割され、その各々において多数の周波数ビンが定義される。周波数帯域の数および各周波数帯域によってカバーされる周波数ビンの数は、実装形態毎に異なることができる。周波数帯域の各々について、時間領域励振寄与の周波数表現とLP残差の周波数表現との間の正規化相関が計算され、相関は隣接する周波数帯域間で平滑化される。非限定的な例として、帯域毎の相関は0.5に低く制限され、0と1との間で正規化され、次いで、平均相関はすべての周波数帯域に対する相関の平均として計算される。カットオフ周波数の最初の推定を目的として、平均相関は、次いで、0と内部サンプリングレートの半分(正規化相関値1に対応する内部サンプリングレートの半分)との間でスケーリングされる。非常に低いビットレートにおいて、または本明細書において以下で説明されているような追加の符号化サブモードについて、平均相関は、カットオフ周波数を見つける前に倍にされる。これは、使用されるビットレートが低いので相関があまり高くない場合であっても、または入力音響信号のタイプが高い相関を許容しないので、時間領域の励振寄与が必要であることが知られている場合に行われる。カットオフ周波数の最初の推定値は、スケーリングされた平均相関の値に最も近い周波数帯域の上限として求められる。実装形態の一例において、12.8kHzの内部サンプリングレートの16固の周波数帯域が、相関計算のために定義される。
【0033】
人間の耳の音響心理特性を利用して、カットオフ周波数の推定の信頼性は、ピッチの第8次高調波周波数の推定位置を相関計算によって推定されたカットオフ周波数と比較することによって改善され得る。この位置が相関計算によって推定されたカットオフ周波数よりも高い場合、カットオフ周波数は、ピッチの第8次高調波周波数の位置に対応するように修正される。追加の符号化サブモードの1つが使用される場合、カットオフ周波数は、たとえば2775Hz(第7の帯域)以上の最小値を有する。次いで、カットオフ周波数の最終値は、量子化され、遠くのデコーダに伝送される。実装形態の一例において、3または4ビットがそのような量子化に使用され、これによりビットレートに応じて8または16個の可能なカットオフ周波数を与える。
【0034】
カットオフ周波数が知られた後、周波数領域励振寄与の周波数量子化が実行される。最初に、入力LP残差の周波数表現(周波数変換)と、時間領域励振寄与の周波数表現(周波数変換)との差が決定される。次いで、カットオフ周波数までのこの差と、残りのスペクトルに対する入力LP残差の周波数表現への滑らかな遷移とからなる、新しいベクトルが作成される。周波数量子化が、次いで、新しいベクトル全体に適用される。実装形態の一例において、量子化は、支配的な(最もエネルギーの高い)スペクトルパルスの符号および位置を符号化することからなる。周波数帯域毎に量子化されるべきパルスの数は、周波数領域符号化モードに利用可能なビットレートに関係する。利用可能なビットがすべての周波数帯域をカバーするのに不十分な場合、残りの帯域はノイズのみで埋められる。
【0035】
前の段落で説明されている量子化方法を使用する周波数帯域の周波数量子化は、この帯域内のすべての周波数ビンが量子化されることを保証しない。これは、周波数帯域毎に量子化されるスペクトルパルスの数が比較的少ない低ビットレートにおいて特に当てはまる。これらの非量子化ビンに起因する可聴アーチファクトの出現を防ぐため、何らかのノイズが加えられこれらのギャップを埋める。低ビットレートでは、量子化されたスペクトルパルスは、挿入されたノイズよりもむしろ、スペクトルを支配すべきであるので、ノイズスペクトル振幅はパルスの振幅のほんの一部にしか対応しない。スペクトラム内の追加されるノイズの振幅は、利用可能なビットバジェットが低いときに(より多くのノイズを許容する)高く、利用可能なビットバジェットが高いときに低い。
【0036】
周波数領域符号化モードでは、利得は、非量子化信号のエネルギーを量子化信号に一致させるために各周波数帯域に対して計算される。利得は、ベクトル量子化され、帯域毎に量子化信号に適用される。たとえば、統合時間領域および周波数領域符号化モデルが、ビット割り当てを時間領域のみの符号化モードから混合時間領域/周波数領域符号化モードに変更するときに、時間領域のみの符号化モードの帯域毎の励振スペクトルエネルギーは、混合時間領域/周波数領域符号化モードの帯域毎の励振スペクトルエネルギーと一致しない。このエネルギーの不一致は、特に低ビットレートにおいて何らかのスイッチングアーチファクトを発生させることができる。このビット再割り当てによって生じる任意の可聴音劣化を低減するために、長期利得が各帯域について計算され、時間領域のみの符号化モードから混合時間領域/周波数領域符号化モードへのスイッチング後の少数のフレームについて各周波数帯域のエネルギーを補正するために適用され得る。
【0037】
周波数領域符号化モードの完了後、全励振は、周波数領域励振寄与を時間領域励振寄与の周波数表現(周波数変換)に加えることによって見つけられ、次いで、これら2つの励振寄与の総和は、時間領域に変換されて全励振を形成する。最後に、合成信号は、LP合成フィルタを通して全励振をフィルタリングすることによって計算される。
【0038】
一実施形態において、CELP符号化メモリは、時間領域励振寄与のみを使用してサブフレームベースで更新されるが、全励振は、フレーム境界でこれらのメモリを更新するために使用される。
【0039】
他の可能な実装形態において、CELP符号化メモリは、サブフレームベースで更新され、時間領域励振寄与のみを使用してフレーム境界でも更新される。この結果、周波数領域符号化信号がコアCELP層と無関係に上位量子化層を構成する埋め込み構造が得られる。この特定の場合において、固定コードブックは、適応コードブックの内容を更新するために常に使用される。しかしながら、周波数領域符号化モードは、フレーム全体に適用することができる。この埋め込みアプローチは、約12kbps以上のビットレートで機能する。
【0040】
1)音響信号タイプ分類
図1は、統合時間領域/周波数領域CELP符号化方法150、および対応する統合時間領域/周波数領域CELP符号化デバイス100、たとえばACELP方法およびデバイスの概要を同時に例示する概略ブロック図である。もちろん、他のタイプのCELP符号化方法およびデバイスも同じ概念を使用して実装され得る。
【0041】
図2は、図1の統合時間領域/周波数領域CELP符号化方法150およびデバイス100のより詳細な構造を示す概略ブロック図である。
【0042】
統合時間領域/周波数領域CELP符号化デバイス100は、入力音響信号101(図1および図2)のパラメータを分析する動作152を実行するためのプリプロセッサ102(図1)を含む。図2を参照すると、プリプロセッサ102は、入力音響信号101のLP分析の動作251を実行するためのLP分析器201と、スペクトル分析の動作252を実行するためのスペクトル分析器202と、開ループピッチ分析の動作253を実行するための開ループピッチ分析器203と、入力音響信号の分類の動作254を実行するための信号分類器204とを含む。分析器201および202ならびに関連付けられている動作251および252は、たとえばITU-T勧告G.718、文献[5]、6.4項および6.1.4項において説明されているように、CELP符号化において通常実行されるLP分析およびスペクトル分析を実行し、したがって、本開示においてこれ以上説明されない。
【0043】
プリプロセッサ102は、入力音響信号101を音声と非音声(一般オーディオ(音楽または残響音声))とに分類するために、たとえば、全内容が参照により本明細書に組み込まれている文献[6]において説明されている方式に類似する方式で、または任意の他の信頼できる音声/非音声弁別方法を用いて、第1のレベルの分析を実行する。
【0044】
この第1のレベルの分析の後、プリプロセッサ102は、入力信号パラメータの第2のレベルの分析を実行し、非音声特性が強いが時間領域アプローチでさらによくエンコードされたいくつかの音響信号に対して時間領域CELP符号化の使用を可能にする(周波数領域符号化なし)。エネルギーの重要な変動が生じたときに、この第2のレベルの分析は、統合時間領域/周波数領域CELP符号化デバイス100が全内容が参照により本明細書に組み込まれている文献[7]において遷移モードと一般的に呼ばれるメモリレス時間領域符号化モードにスイッチすることを可能にする。
【0045】
この第2のレベルの分析において、信号分類器204は、開ループピッチ分析器203からの開ループピッチ相関の平滑化バージョンCstの変動、現在の総フレームエネルギーEtot(現在のフレームにおける入力音響信号の総エネルギー)、および現在の総フレームエネルギーと前の総フレームエネルギーとの間の差分Ediffを計算し、使用する。最初に、信号分類器204は、たとえば以下の関係式
【0046】
【数1】
【0047】
を使用して平滑化された開ループピッチ相関の変動を計算し、
ここで、
- Cst
Cst=0.9・Col+0.1・Cst
として定義される平滑化された開ループピッチ相関であり、
- Colは、たとえば、ITU-T勧告G.718、文献[5]、6.6項において説明されているような、CELP符号化の当業者に知られている方法を使用して分析器203によって計算された開ループピッチ相関であり、
-
【0048】
【数2】
【0049】
は、平滑化された開ループピッチ相関Cstの最後の10個のフレームiにわたる平均であり、
- σcは、平滑化された開ループピッチ相関の変動である。
【0050】
第1のレベルの分析中に、信号分類器204がフレームを非音声として分類したときに、次の検証が信号分類器204によって実行され、第2のレベルの分析において、混合時間領域/周波数領域符号化モードを使用して本当に安全であるかどうかを決定する。しかしながら、時間領域符号化モードの前処理機能によって推定された時間領域アプローチのうちの1つを使用して、時間領域符号化モードのみで現在のフレームをエンコードする方がよいときもある。特に、メモリレス時間領域符号化モードを使用して、混合時間領域/周波数領域符号化モードで導入され得る可能なプリエコーを最低でも低減する方がよい場合もある。
【0051】
混合時間領域/周波数領域符号化モードが使用されるべきかどうかの第1の検証の非限定的な実装形態として、信号分類器204は、現在の総フレームエネルギーと前のフレームの総エネルギーとの間の差を計算する。現在の総フレームエネルギーEtotと前のフレームの総エネルギーとの差Ediffが、たとえば6dBより高いときに、これは、入力音響信号101におけるいわゆる「時間攻撃」に対応する。そのような状況では、音声/非音声決定および選択された符号化モードは上書きされ、メモリレス時間領域符号化モードが強制される。より具体的には、統合時間領域/周波数領域CELP符号化デバイス100は、時間領域のみの符号化と混合時間領域/周波数領域符号化との間の選択の動作153を実行するための時間/時間周波数符号化選択器103(図1)を含む。その目的のために、時間/時間周波数符号化選択器103は、入力音響信号101の分類のために音声および一般オーディオのいずれかを選択する動作255を実行するための音声/一般オーディオ選択器205(図2)と、入力音響信号101における時間攻撃を検出する動作258を実行するための時間攻撃検出器208(図2)と、メモリレス時間領域符号化モードを選択する動作256を実行するための選択器206(図2)とを含む。言い換えると、次の通りである。
- 選択器205による音声信号の決定に応じて、閉ループCELPエンコーダ207(図2)は、音声信号をCELP符号化する動作257を実行するために使用される。
- 選択器205による非音声信号(一般オーディオ)の決定および検出器208による入力音響信号101の時間攻撃の検出の両方に応じて、選択器206は、閉ループCELPエンコーダ207(図2)がメモリレス時間領域符号化モードを使用して入力音響信号を符号化することを強制する。
閉ループCELPエンコーダ207は、図1の時間領域のみのエンコーダ104の一部を形成する。閉ループCELPエンコーダは、当業者によく知られており、本明細書ではこれ以上説明しない。
【0052】
混合時間領域/周波数領域符号化モードが使用されるべきかどうかの第2の検証の非限定的な実装形態として、現在のフレーム総エネルギーEtotと前のフレームの総エネルギーとの間の差Ediffが6dB以下であるとき、ただし
- 平滑化された開ループピッチ相関Cstが0.96より大きいか、または
- 平滑化された開ループピッチ相関Cstが0.85より高く、現在の総フレームエネルギーEtotと前のフレームの総エネルギーとの差Ediffが0.3dB未満であるか、または
- 平滑化された開ループピッチ相関の変動σCが0.1未満であり、現在の総フレームエネルギーEtotと最後の前のフレームの総エネルギーとの差Ediffが0.6dB未満であるか、または
- 現在の層フレームエネルギーEtotが20dB未満であり、
これが、第1のレベルの分析の決定が変更される少なくとも第2の連続するフレーム(cnt≧2)であるときに、音声/一般オーディオ選択器205は、現在のフレームが、閉ループCELPエンコーダ207(図2)を使用して時間領域のみの符号化モードを使用して符号化されることを決定する。
【0053】
そうでない場合、時間/時間周波数符号化選択器103は、次の説明で開示されているように混合時間領域/周波数領域符号化モードを選択する。
【0054】
第2の検証は、たとえば、非音声入力音響信号が音楽であるときに、次の擬似コードを使用して要約され得る。
if (generic audio)
if (Ediff >6dB)
符号化モード=時間領域メモリレス
cnt=1
else if (Cst>0.96|(Cst>0.85&Ediff<0.3dB)|(σc<0.1&Ediff<0.6dB)|Etot<20dB)
cnt++
if(cnt>=2)
符号化モード=時間領域
else
符号化モード=混合時間/周波数領域
cnt=0
ここで、Etot
【0055】
【数3】
【0056】
として表される現在の総フレームエネルギーであり、
x(i)は現在のフレームにおける入力音響信号のサンプルを表し、Nはフレーム別の入力音響信号のサンプルの数であり、Ediffは現在の総フレームエネルギーEtotと最後の前のフレームの総エネルギーとの差である。
【0057】
図7は、統合時間領域/周波数領域CELP符号化方法750および対応する統合時間領域/周波数領域CELP符号化デバイス700の代替的一実装形態を同時に例示する概略ブロック図であり、ここではプリプロセッサ702は、また、入力音響信号101を分類するために第1のレベルの分析を実行する。
【0058】
特に、統合時間領域/周波数領域CELP符号化方法750は、この入力音響信号を分類するのに必要なパラメータを取得するために文献[4]において説明されているように入力音響信号101を前処理する動作752を含む。動作752を実行するために、混合時間領域/周波数領域CELP符号化デバイス700は、プリプロセッサ702を含む。
【0059】
統合時間領域/周波数領域CELP符号化方法750は、入力音響信号101を、文献[4]においても説明されているのと似た方式で、または任意の他の信頼できる音声/音楽および不明瞭信号タイプ弁別方法を使用して、プリプロセッサ702からのパラメータを使用して、音声、音楽および不明瞭信号タイプカテゴリに分類する動作751を含む。不明瞭信号タイプカテゴリは、入力音響信号101の性質が不明瞭であること、特に、入力音響信号101が音声にも音楽にも分類されないことを示す。動作751を実行するために、統合時間領域/周波数領域CELP符号化デバイス700は、音響信号分類器701を含む。
【0060】
音響信号分類器701が入力音響信号101を音楽カテゴリに分類した場合、周波数領域エンコーダ703は、たとえば文献[2]において説明されているように周波数領域符号化を使用して入力音響信号101を符号化する動作753を実行する。次いで、周波数領域符号化された音楽信号は、シンセサイザ704によって実行される音楽合成動作754において合成され、音楽信号を回復することができる。
【0061】
同じ方式で、音響信号分類器701が入力音響信号101を音声カテゴリに分類した場合、時間領域エンコーダ705は、たとえば文献[2]において説明されているように時間領域符号化を使用して入力音響信号101を符号化する動作755を実行する。次いで、時間領域符号化された音声信号は、合成フィルタを含むシンセサイザ706によって実行される合成フィルタリング動作756において合成され、音声信号を回復することができる。
【0062】
したがって、統合時間領域/周波数領域符号化デバイス700および方法750は、それぞれ明瞭音声特性を有する入力音響信号および明瞭音楽特性を有する入力音響信号にそれらの使用を限定することによって時間領域符号化のみおよび周波数領域符号化のみの性能を最大化する。これは、低から中のビットレートにおいてすべてのタイプの入力音響信号の全体的な品質を高める。
【0063】
符号化サブモードは、統合時間領域および周波数領域符号化モデルの一部として設計され、音声にも音楽にも分類されない入力音響信号(不明瞭信号タイプカテゴリ)を効率的に符号化する。2ビットは、対応するサブモードフラグによって識別される3つの符号化サブモードをシグナリングするために使用される。第4のサブモードは、レガシーの統合時間領域および周波数領域符号化モデル(EVS)への後方相互運用性を可能にする。
【0064】
図8に例示されているように、入力音響信号101を分類する動作751は、入力音響信号101を符号化するために利用可能なビットレートおよび不明瞭信号タイプカテゴリに分類されたこの入力音響信号の特性に応じて符号化サブモードのうちの1つを選択する動作850を含む。動作850を実行するために、音響信号分類器701は、サブモード選択器800を組み込む。
【0065】
符号化サブモードは、サブモードフラグFtfsmによって識別される。図8の非限定的な実装形態では、サブモード選択器800は、次のように符号化サブモードを選択する:
- サブモード選択器800は、(a)入力音響信号101を符号化するために利用可能なビットレートが9.2kbpsより高くなく、(b)入力音響信号101が音声にも音楽にも分類されない場合に、上述の後方符号化サブモードを選択する(803参照)。次いで、サブモードフラグFtfsmは「0」に設定される(802参照)。後方符号化モードの選択は、図1および図2のレガシーの統合時間領域および周波数領域符号化モデル(EVS)の使用を引き起こす。
- サブモード選択器800は、(a)入力音響信号101が分類器701によって音声としても音楽としても分類されず、利用可能なビットレートが適応および固定コードブックおよび利得の符号化を可能にするのに十分高く、通常9.2kbpsより高いことを意味する(803参照)、(b)入力音響信号101が音楽である確率(音楽となる傾向を有する重み付き音声/音楽決定、wdlp(n))が「0」以下である(804参照)、および(c)入力音響信号の現在のフレームにおいて時間攻撃の可能性が検出されない(ITU-T勧告G.718、文献[5]、6.8.1.4項および6.8.4.2項において説明されているように遷移カウンタが「0」以下である)場合、第1の符号化サブモードを選択する(806参照)。次いで、サブモードフラグFtfsmは「1」に設定される(801参照)。入力音響信号101は、分類器701によって音声にも音楽にも分類されないが、選択器800は、入力音響信号101において「音声」に似た特性を検出し、そのような音響信号を符号化するためにCELPは最適でないので、第1の符号化サブモード(サブモードフラグFtfsm=1)を選択する。
- サブモード選択器800は、(a)入力音響信号101が分類器701によって音声としても音楽としても分類されず、利用可能なビットレートが適応および固定コードブックおよび利得の符号化を可能にするのに十分高く、通常9.2kbpsであることを意味する(803参照)、(b)入力音響信号101が音楽である確率(音楽となる傾向を有する重み付き音声/音楽決定、wdlp(n))が「0」以下である(804参照)、および(c)入力音響信号の現在のフレームにおいて時間攻撃の可能性が検出される(ITU-T勧告G.718、文献[5]、6.8.1.4項および6.8.4.2項において説明されているように遷移カウンタが「0」より大きい)場合、第2の符号化サブモードを選択する(806参照)。次いで、サブモードフラグFtfsmは「2」に設定される(807参照)。以下の説明で説明されるように、第2の符号化サブモード(サブモードフラグFtfsm=2)は、スペクトルの下側部分に多くのビットを割り当てる。
- サブモード選択器800は、(a)入力音響信号101が分類器701によって音声にも音楽にも分類されず、利用可能なビットレートが少なくとも適応コードブックおよび利得の符号化を可能にするのに十分高く、さらに周波数符号化のために著しい量のビットを有し、通常これは9.2kbpsより高いビットレートを意味する、および(b)入力音響信号101が音楽である確率(音楽となる傾向を有する重み付き音声/音楽決定、wdlp(n))が「0」より大きい場合、第3の符号化サブモードを選択する(804参照)。次いで、サブモードフラグFtfsmは「3」に設定される(808参照)。入力音響信号101は、分類器701によって音声にも音楽にも分類されないが、選択器800は、入力音響信号101において「音楽」に似た特性を検出し、第3の符号化サブモード(サブモードフラグFtfsm=3)を選択する。そのような音響信号セグメントは、依然として非音楽と見なされるが、サブモードフラグFtfsmは、サンプルが高い周波数または音色コンテンツを含むことを指示する「3」(第3の符号化サブモードの選択)に設定される。
入力音響信号101が音声もしくは音楽であるかまたはその中間である確率は、文献[4]において説明されている。音声または音楽分類の決定が不明瞭であるときに、確率wdlp(n)が0より大きい場合、信号は何らかの音楽特性を有すると考えられる。以下の表は、確率が音楽または音声と考えられる十分な高さとなる場合の閾値を示している
【0066】
【表1】
【0067】
選択された符号化サブモード、たとえば、サブモードフラグFtfsmは、ビットストリームに入れられ遠くのデコーダに伝送される。デコーダの内側で選択された経路は、ビットストリームに含まれるシグナリングビットに依存する。デコーダが混合時間領域/周波数領域符号化を使用して符号化されたフレームの存在を検出した後、サブモードフラグFtfsmは、ビットストリームからデコードされる。検出されたサブモードフラグFtfsmが「0」である場合、EVS後方相互運用可能なレガシーの統合時間領域および周波数領域符号化モデルは、ビットストリームの残りの部分をデコードするために使用される。他方、サブモードフラグFtfsmが「0」と異なる場合、サブモードデコードがその後に続く。デコーダは、後から6.2項で説明されるようにエンコーダが後に続く手順、特に時間領域と周波数領域との間のビット分配、および異なる周波数帯域におけるビット割り当てを複製する。
【0068】
2)サブフレーム長の決定
典型的なCELPでは、入力音響信号サンプルは、10~30msのフレームで処理され、これらのフレームは、適応コードブック分析および固定コードブック分析のためにサブフレームに分割される。たとえば、20msのフレーム(内部サンプリングレートが12.8kHzのときには256サンプル)が使用され、5msの4つのサブフレームに分割され得る。可変サブフレーム長は、時間領域および周波数領域を1つの符号化モードに統合するために使用される特徴である。サブフレーム長は、フレーム長の典型的な1/4から、フレーム長の半分、または完全なフレーム長まで変化することができる。もちろん、他の数のサブフレーム(サブフレーム長)の使用も、場合によっては実装され得る。
【0069】
統合時間領域/周波数領域CELP符号化方法150のパラメータ分析動作152は、図2に例示されているように、入力音響信号101の高スペクトルダイナミックを決定する操作259、フレーム毎のサブフレーム数を計算する動作260を含む。動作259および260を実行するために、統合時間領域/周波数領域CELP符号化デバイス100のプリプロセッサ102は、それぞれ、高スペクトルダイナミック分析器209およびサブフレーム数の計算器210を含む。
【0070】
サブフレームの長さ(サブフレームの数)、すなわち時間サポートに関する決定は、利用可能なビットレートおよび入力音響信号分析、特に分析器209からの入力音響信号101の高スペクトルダイナミックおよび分析器203からの平滑化された開ループピッチ相関Cstを含む開ループピッチ分析に基づき、計算器210によって決定される。高スペクトルダイナミック分析器209は、入力音響信号101の高スペクトルダイナミックを決定するためにスペクトル分析器202からの情報に応じる。高スペクトルダイナミックは、たとえば、ITU-T勧告G.718、文献[5]、6.7.2.2項において説明されているように、入力スペクトルダイナミックの表現を与えるノイズフロアなしの入力スペクトルとして計算される。分析器209によって決定されるような4.4kHzから6.4kHzの周波数帯域における入力音響信号101の平均スペクトルダイナミックが、たとえば9.6dB未満であり、最後のフレームが高スペクトルダイナミックを有すると見なされたときに、入力音響信号101は、もはや高スペクトルダイナミックを有するとは見なされない。その場合、時間領域符号化モードにより多くのサブフレームを追加するか、または周波数領域符号化モードのより低い周波数の部分により多くのパルスを強制することによって、たとえば4kHzより低い周波数により多くのビットが割り当てられることができる。
【0071】
他方、分析器209によって決定されるような高スペクトルダイナミックを有すると見なされなかった最後のフレームの平均スペクトルダイナミックに対する入力音響信号101の平均スペクトルダイナミックの増加が、たとえば4.5dBより大きい場合、入力音響信号101は、たとえば4kHzより高い高スペクトルダイナミックコンテンツを有すると考えられる。その場合、利用可能なビットレートに応じて、いくつかの追加ビットが、入力音響信号101の高い周波数の符号化に使用され、1つまたは複数の周波数パルス符号化を可能にする。
【0072】
計算器210(図2)によって決定されるようなサブフレーム長も、入力音響信号101を符号化するために利用可能なビットバジェットに依存する。非常に低いビットレート、たとえば9kbps未満のビットレートでは、1つのサブフレームのみが、時間領域符号化に利用可能であり、そうでなければ、利用可能なビットの数は、周波数領域符号化に不十分である。中程度のビットレート、たとえば9kbpsと16kbpsとの間のビットレートでは、1つのサブフレームが、高い周波数が高スペクトルダイナミックコンテンツを含む場合には使用され、そうでない場合には2つのサブフレームが使用される。中から高のビットレート、たとえば約16kbps以上のビットレートについては、上で定義されている平滑化された開ループピッチ相関Cstがたとえば0.8より高い場合に4つのサブフレームの場合も利用可能になる。
【0073】
1つまたは2つのサブフレームを有する場合で、時間領域符号化を(符号化されたピッチラグおよびピッチ利得を有する)適応コードブック寄与のみに制限する、すなわち、その場合には、固定コードブックが使用されないが、4つのサブフレームの場合には、利用可能なビットバジェットが十分であれば、適応および固定コードブック寄与を可能にする。4つのサブフレームの場合は、約16kbps上から始まるビットレートで許容される。ビットバジェットの制限があるので、低ビットレートでは、時間領域励振寄与は、より低いビットレートで適応コードブック寄与のみからなる。より高いビットレート、たとえば24kbpsから始まるビットレートで、固定コードブック寄与が加えられることができる。すべての場合において、時間領域符号化効率は、後に評価され、そのような時間領域符号化がどの周波数(上述のカットオフ周波数)まで有益なものであるかを決定する。
【0074】
図7および図8の代替的実装形態は、入力音響信号101が分類器701によって不明瞭信号タイプカテゴリに分類され、サブモードフラグFtfsmがゼロ「0」より大きいときに上で定義された第1、第2、または第3符号化サブモードを使用する。
【0075】
音響信号分類器701は、サブモードフラグFtfsmが「1」または「2」に設定されない限り(第1または第2の符号化サブモードの選択)サブフレームの数は4であると決定し、これは入力音響信号101の内容が音声に近く(入力音響信号101において「音声」に似た特性または時間攻撃の可能性が検出される)、利用可能なビットレートが15kbps未満であることを意味する。特に、次の通りである。
- 第1または第2の符号化サブモード(サブモードフラグFtfsmが「1」または「2」に設定される)において、音響信号分類器701は、入力音響信号101を符号化するために利用可能なビットレートが15kbps未満でない限り、個数が4つのサブフレームを決定し、次いで、2つのサブフレームを使用する符号化モードが選択される。両方の場合において、対応する数の固定コードブック、すなわち、個数が2つまたは4つの固定コードブックが使用される。
- 第3の符号化モード(サブモードフラグFtfsmが3に設定され、これは入力音響信号101の内容が音楽に近い(入力音響信号101において「音楽」に似た特性が検出される)ことを意味する)では、音響信号分類器701は、入力音響信号101を符号化するために利用可能なビットレートが22.6kbps以上でない限り、サブフレームの数は4であるが、周波数領域励振寄与に利用可能なより多くのビットを保持するために固定コードブック寄与が使用されないと決定する。
【0076】
3)閉ループピッチ分析
統合時間領域/周波数領域CELP符号化デバイス100および方法150(図1)において、混合時間領域/周波数領域符号化方法170および対応する混合時間領域/周波数領域エンコーダ120は、入力音響信号101の分類として選択器205によって一般オーディオが選択され、検出器208において時間攻撃が検出されないときに使用される。代替的に、統合時間領域/周波数領域CELP符号化デバイス700および方法750(図7)において、音響信号分類器701が入力音響信号101を「不明瞭信号タイプ」カテゴリに分類し、上で定義された第1、第2および第3の符号化サブモードのうちの1つが選択される(サブモードフラグFtfsmが「1」、「2」、または「3」に設定される)ときに混合時間領域/周波数領域符号化方法770および対応する混合時間領域/周波数領域エンコーダ720が使用される。
【0077】
混合時間領域/周波数領域符号化モードが使用されるときに、必要ならば後に固定代数コードブック検索が続く、閉ループピッチ分析が実行される。その目的のために、混合時間領域/周波数領域符号化方法170/770は、時間領域励振寄与を計算する動作155を含む。動作155を実行するために、混合時間領域/周波数領域エンコーダ120/720は、時間領域励振寄与の計算器105を含む。計算器105それ自体は、開ループピッチ分析器203(またはプリプロセッサ702)で行われた開ループピッチ分析と、計算器210または音響信号分類器701で決定されたサブフレーム長(またはフレーム内のサブフレームの数)に応じる分析器211(図2)を含み、閉ループピッチ分析の動作261を実行する。閉ループピッチ分析は、当業者にはよく知られており、実装例は、たとえばITU-T G.718勧告、文献[5]、6.8.4.1.4.1項において説明されている。閉ループピッチ分析の結果、適応コードブックパラメータとしても知られている、ピッチパラメータを計算し、これは主にピッチラグ(適応コードブックインデックスT)およびピッチ利得(適応コードブック利得b)からなる。適応コードブック寄与は、通常、遅延Tにおける過去の励振またはその補間バージョンである。適応コードブックインデックスTは、エンコードされ、遠くのデコーダに伝送される。ピッチ利得bも量子化され、遠くのデコーダに伝送される。
【0078】
閉ループピッチ分析が動作261で完了し、固定コードブック寄与が使用されるときに、時間領域励振寄与の計算器105は、通常固定コードブックインデックスおよび固定コードブック利得を含む最良の固定コードブックパラメータを見つけるために、固定コードブック検索の動作262の際に検索された固定代数コードブック212を含む。固定コードブックインデックスおよび利得は、固定コードブック寄与を形成する。固定コードブックインデックスは、エンコードされ、遠くのデコーダに伝送される。固定コードブック利得も量子化され、遠くのデコーダに伝送される。固定代数コードブックおよびその検索は、CELP符号化の技術分野の当業者にはよく知られていると確信され、したがって本開示ではこれ以上説明しない。
【0079】
適応コードブックインデックスおよび利得、ならびに使用される場合に、固定コードブックインデックスおよび利得は、時間領域CELP励振寄与を形成する。
【0080】
4)周波数変換
混合時間領域/周波数領域符号化モードの周波数領域符号化において、2つの信号は変換領域、たとえば周波数領域内で表現される。一実施形態において、時間周波数変換は、12.8kHzの内部サンプリングレートで25Hzの分解能を与える256点のタイプII(またはタイプIV)DCT(離散コサイン変換)を使用して達成され得るが、任意の他の好適な変換も使用され得る。他の変換が使用される場合、周波数分解能(上で定義されている)、周波数帯域の数、帯域あたりの周波数ビンの数(以下でさらに定義される)は、しかるべく変更される必要があり得る。
【0081】
前述の説明で示されているように、統合時間領域/周波数領域CELP符号化デバイス100および方法150(図1および図2)において、混合時間領域/周波数領域符号化モードは、入力音響信号101の分類として選択器205によって一般オーディオが選択され、検出器208において時間攻撃が検出されないときに使用される。代替的に、統合時間領域/周波数領域CELP符号化デバイス700および方法750(図7)において、混合時間領域/周波数領域符号化モードは、音響信号分類器701が入力音響信号101を「不明瞭信号タイプ」カテゴリに分類したときに使用される。混合時間領域/周波数領域エンコーダ120/720は、分析器201(およびプリプロセッサ702)によって実行される入力音響信号101のLP分析の動作251の結果得られる入力LP残差res(n)(文献[5])に応じて周波数領域励振寄与を算出する動作157を実行する周波数領域励振寄与の計算器107(図1および図7)を含む。図2に例示されているように、計算器107は、入力LP残差res(n)のDCT213、たとえばタイプII DCTを計算し得る。混合時間領域/周波数領域エンコーダ120/720は、時間領域励振寄与の周波数変換を計算する動作156を実行するための計算器106(図1および図7)も含む。図2に例示されているように、計算器106は、時間領域励振寄与のDCT214、たとえばタイプII DCTを計算し得る。入力LP残差fresおよび時間領域CELP励振寄与fexcの周波数変換は、たとえば、以下の式
【0082】
【数4】
【0083】
および
【0084】
【数5】
【0085】
を使用して計算され得る。
【0086】
ここで、res(n)は入力LP残差であり、etd(n)は時間領域励振寄与であり、Nはフレーム長である。可能な一実装形態において、フレーム長は、12.8kHzの対応する内部サンプリングレートに対して256サンプルである。時間領域励振寄与は、関係式
etd(n)=bv(n)+gc(n)
で与えられる。
【0087】
ここで、v(n)は適応コードブック寄与であり、bは適応コードブック利得であり、c(n)は固定コードブック寄与であり、gは固定コードブック利得である。時間領域励振寄与は、前述の説明で説明されているように適応コードブック寄与のみからなるものとしてよいことに留意されたい。
【0088】
5)時間領域寄与のカットオフ周波数
一般オーディオ(図1)または「不明瞭信号タイプ」カテゴリ(図7)に分類される音響信号サンプルでは、時間領域励振寄与は、周波数領域符号化と比較して符号化の改善に必ずしも大きく寄与しない。多くの場合、これはスペクトルの低い部分の符号化を改善するが、スペクトルの高い部分の符号化改善は最小である。混合時間領域/周波数領域エンコーダ120/720は、時間領域励振寄与によってもたらされる符号化改善が低すぎて役立たなくなるカットオフ周波数を決定する動作158を実行するためのカットオフ周波数ファインダおよびフィルタ108(図1および図7)を含む。カットオフ周波数ファインダおよびフィルタ108は、図2に例示されているように、カットオフ周波数の計算器215およびフィルタ216から構成される。
【0089】
時間領域励振寄与のカットオフ周波数を推定する動作265は、それぞれ前述の4項において定義されているfresおよびfexcとして指定される、計算器107からの入力LP残差301の周波数変換と計算器106からの時間領域励振寄与302の周波数変換との間で各周波数帯域について正規化された相互相関の動作353を実行するコンピュータ303(図3および図4)を使用して計算器215(図2)によって最初に遂行される。たとえば、16個の周波数帯域の各々に含まれる最後の周波数Lfは、
【0090】
【数6】
【0091】
のようにHz単位で定義される。
【0092】
この例示的な例に対して、帯域あたりの周波数ビンjの数Bb、帯域あたりの累積周波数ビンCBb、および周波数帯域iあたりの正規化された相互相関Cc(i)は、たとえば、12.8kHzの内部サンプリングレートで20msフレームについて、次のように定義され、
【0093】
【数7】
【0094】
【数8】
【0095】
ただし
【0096】
【数9】
【0097】
および
【0098】
【数10】
【0099】
である。
【0100】
ここで、Bbは帯域Bbあたりの周波数ビンjの数であり、CBbは帯域あたりの累積周波数ビンであり、Cc(i)は周波数帯域iあたりの正規化された相互相関であり、
【0101】
【数11】
【0102】
は帯域に対する励振エネルギーであり、同様に
【0103】
【数12】
【0104】
は帯域あたりの残差エネルギーである。
【0105】
カットオフ周波数の計算器215は、異なる周波数帯域間の相互相関ベクトルを平滑化するためにいくつかの動作354を実行する周波数帯域における相互相関の平滑器304(図3および図4)を含む。より具体的には、周波数帯域における相互相関の平滑器304は新しい相互相関ベクトル
【0106】
【数13】
【0107】
を、たとえば、以下の関係式
【0108】
【数14】
【0109】
を使用して計算し、
例示的な一実施形態において、
α=0.95、δ=(1-α)、Nb=13、β=δ/2
である。
【0110】
カットオフ周波数の計算器215は、第1のNb個の帯域(たとえばNb=13は5575Hzを表す)にわたる新しい相互相関ベクトル
【0111】
【数15】
【0112】
の平均を計算する動作355を実行する計算器305(図3および図4)をさらに含む。
【0113】
カットオフ周波数の計算器215は、図4に例示されているように、相互相関の制限器406、相互相関の正規化器407、および相互相関が最低である場合の周波数帯域のファインダ408を含むカットオフ周波数モジュール306(図3)も含む。より具体的には、制限器406は、相互相関ベクトル
【0114】
【数16】
【0115】
の平均を0.5の最小値に制限する動作456を実行し、正規化器407は、相互相関ベクトル
【0116】
【数17】
【0117】
の制限された平均を0と1との間で正規化する動作457を実行する。ファインダ408は、周波数帯域iの最後の周波数Lfと、入力音響信号101の内部サンプリングレートの半分(Fs/2)を乗じた相互相関ベクトルの正規化された平均
【0118】
【数18】
【0119】
ただし相互相関ベクトルは
【0120】
【数19】
【0121】
である、との間の差を最小化する周波数帯域iの最後の周波数Lfを次の式において求めることによってカットオフ周波数の第1の推定値を取得する動作458を実行し、
【0122】
【数20】
【0123】
ここで、
【0124】
【数21】
【0125】
である。
【0126】
上記の関係式において、
【0127】
【数22】
【0128】
はカットオフ周波数の第1の推定値を表す。
【0129】
低いビットレートでは、正規化された平均
【0130】
【数23】
【0131】
が決して本当に高くない場合(図1の統合時間領域/周波数領域符号化デバイス100および方法150の場合)、またはサブモードフラグFtfsmが「0」より大きい、すなわち、入力音響信号が「不明瞭信号タイプ」カテゴリに分類されるとき(図7の統合時間領域/周波数領域符号化デバイス700および方法750の場合)、または人為的に
【0132】
【数24】
【0133】
の値を増やして時間領域励振寄与に対してより大きい重みを与えるために、正規化器407を使用して、固定スケーリング係数で正規化された平均
【0134】
【数25】
【0135】
の値をアップスケールすることが可能である。非限定的な例として、8kbps未満のビットレートでは、カットオフ周波数
【0136】
【数26】
【0137】
の第1の推定値に2を乗じられる。
【0138】
カットオフ周波数の精度は、次の要素を計算に追加することによって改善され得る。その目的のために、カットオフ周波数モジュール306は、対応する動作460において、フレームのサブフレームの時間領域励振寄与の最小または最小ピッチラグ値から、たとえば以下の関係式
【0139】
【数27】
【0140】
を使用して計算される第8次高調波の外挿器410(図4)を含み、
Fs=12800Hzは内部サンプリングレートまたは周波数であり、Nsubは1つのフレーム内のサブフレームの数であり、T(i)はサブフレームiに対する適応コードブックインデックスまたはピッチラグである。
【0141】
カットオフ周波数モジュール306は、第8次高調波
【0142】
【数28】
【0143】
が配置される周波数帯域のファインダ409(図4)を含む。より具体的には、サブフレームi<Nsubに対して、ファインダ409は、たとえば、以下の不等式
【0144】
【数29】
【0145】
がそのまま検証される最も高い周波数帯域を検索する動作459を実行する。
その帯域のインデックスは、
【0146】
【数30】
【0147】
と呼ばれ、これは第8次高調波が配置される可能性の高い帯域を指示する。
【0148】
カットオフ周波数モジュール306は、最終的に、最終カットオフ周波数ftcの選択器411(図4)を含む。より具体的には、選択器411は、ファインダ408からのカットオフ周波数の最初の推定値ftc1と、ファインダ409からの第8次高調波が配置される周波数帯域の最後の周波数
【0149】
【数31】
【0150】
との間の高い方の周波数を保持する動作461を、以下の関係式
【0151】
【数32】
【0152】
を使用して実行する。
【0153】
符号化サブモードが使用されるときに、図7の統合時間領域/周波数領域符号化デバイス700および方法750の場合、カットオフ周波数ftcは、たとえば、以下の関係式
【0154】
【数33】
【0155】
を使用して、さらに閾値化される。
【0156】
図3および図4に例示されているように、
- カットオフ周波数の計算器215は、ゼロにされるべき周波数帯域の周波数ビンの数を決定する動作357を実行するための決定器307(図3)をさらに含み、
- 決定器307それ自体は、パラメータの分析の動作465を実行するための分析器415(図4)と、ゼロにされるべき周波数ビンを選択する動作466を実行するための選択器416(図4)とを含み、
- フィルタ216(図2)は周波数領域で動作し、フィルタリング動作266を実行するためにゼロ化器(zeroer)308(図3)を含む。対応する動作358は、決定器307においてゼロにされることが決定された周波数ビンをゼロにする。ゼロ化器308は、(a)すべての周波数ビンをゼロにするか(図4のゼロ化器417および対応するゼロにする動作467)、または(b)平滑遷移領域(図4のフィルタ418および対応するフィルタリング動作468)で補われるカットオフ周波数ftcより上に位置するより高い周波数のビンをゼロにし得る。遷移領域は、カットオフ周波数ftcより上に、ゼロにされたビンより下に配置され、カットオフ周波数ftcより下の無変化のスペクトルと、より高い周波数におけるゼロにされたビンとの間の平滑スペクトル遷移を可能にする。
【0157】
非限定的で例示的な例として、選択器411からのカットオフ周波数ftcが775Hz以下であるときに、分析器415では、時間領域励振寄与のコストが高すぎると考える。選択器416は、ゼロにされるべき時間領域励振寄与の周波数表現のすべての周波数ビンを選択し、ゼロ化器417は、すべての周波数ビンを強制的にゼロにし、カットオフ周波数ftcも強制的にゼロにする。そして、時間領域励振寄与に割り当てられた全てのビットは、周波数領域符号化モードに再割り当てされる。さもなければ、アナライザ415は、フィルタ(ゼロ化器)418によってゼロ化されるために、カットオフ周波数より上の高周波ビンを選択するように選択器416に強制する。
【0158】
最後に、カットオフ周波数の計算器215は、カットオフ周波数ftcを、遠いデコーダへの伝送のために、このカットオフ周波数の量子化バージョンftcQに量子化する動作359を実行するための量子化器309(図3および図4)を含む。たとえば、3ビットがカットオフ周波数パラメータに関連付けられる場合、出力値の可能なセットは
ftcQ={0,1175,1575,1975,2375,2775,3175,3575}
のようにHz単位で定義される。
【0159】
多くのメカニズムが、不適切な信号セグメントにおいて量子化バージョンが0と1175との間で切り替わるのを防ぐために最終カットオフ周波数ftcの選択を安定させるために選択器411によって使用され得る。これを達成するために、非制限的な例として、分析器415は、閉ループピッチ分析器211(図2)からの長期平均ピッチ利得Glt412、開ループピッチ分析器203からの開ループピッチ相関Col413、および平滑化開ループピッチ相関Cst414に応じる。周波数領域符号化のみに切り替わることを防ぐために、分析器415は、たとえば条件
ftc>2375Hz
または
ftc>1175HzかつCol>0.7かつGlt≧0.6
または
ftc≧1175HzかつCst>0.8かつGlt≧0.4
または
ftcQ(t -1)!=0かつCol>0.5かつCst>0.5かつGlt≧0.6
が満たされるとき、すなわちftcQが0に設定され得ないときにそのような周波数領域符号化のみを許さない。
【0160】
ここで、Colは開ループピッチ相関413であり、CstはCst=0.9・Col+0.1・Cstとして定義される開ループピッチ相関414の平滑化バージョンに対応する。さらに、Glt(図4の項目412)は、時間領域励振寄与内で閉ループピッチ分析器211によって取得されるピッチ利得の長期平均に対応する。ピッチ利得412の長期平均値は
【0161】
【数34】
【0162】
のように定義され、
【0163】
【数35】
【0164】
は現在のフレームにわたる平均ピッチ利得である。周波数領域符号化のみと混合時間領域/周波数領域符号化との間のスイッチング率をさらに低減するために、ハングオーバーが追加され得る。
【0165】
6)周波数領域符号化
6.1)差分ベクトルの作成
時間領域励振寄与のカットオフ周波数ftcが決定された後、周波数領域符号化が実行される。そのような周波数領域符号化を実行するために、混合時間領域/周波数領域符号化方法170/770は、減算動作159と、周波数量子化動作160と、加算動作161とを含む。混合時間領域/周波数領域エンコーダ120/720は、減算器または計算器109、周波数量子化器110、および加算器111を含み、それぞれ動作159、160および161を実行する。
【0166】
図5は、周波数量子化器110および対応する周波数量子化動作160の概要を同時に例示する概略ブロック図である。また、図6は、周波数量子化器110および対応する周波数量子化動作160のより詳細な構造の概略ブロック図である。
【0167】
減算器または計算器109(図1図2図5および図6)は、ゼロから時間領域励振寄与のカットオフ周波数ftcまでのDCT213(図2)からの入力LP残差の周波数変換fres502(図5および図6)(または他の周波数表現)とDCT214(図2)からの時間領域励振寄与の周波数変換fexc501(図5および図6)(または他の周波数表現)との間の差で差分ベクトルfdの第1の部分を形成する。ダウンスケール係数603(図6)は、周波数変換fres502のそれぞれのスペクトル部分がそこから減算される前にftrans=2kHz(実装形態のこの例では80個の周波数ビン)の次の遷移領域に対する周波数変換fexc501に適用され得る(乗算器604および対応する乗算動作654を参照)。減算の結果は、カットオフ周波数ftcからftc+ftransまでの周波数範囲を表す差分ベクトルfdの第2の部分を構成する。入力LP残差の周波数変換fres502は、差分ベクトルfdの残りの第3の部分に使用される。
【0168】
ダウンスケール係数603の適用の結果得られる差分ベクトルfdのダウンスケールされた部分は、任意のタイプのフェードアウト関数により実行され得、いくつかの周波数ビンにのみ短縮され得るが、カットオフ周波数ftcが変化しているときに利用可能なビットバジェットがエネルギー発振アーチファクトを防ぐのに十分であると判断されるときには省略され得る。たとえば、25Hz分解能では、12.8kHzの内部サンプリングレートで256点DCTにおける1周波数ビンfbin=25Hzに対応して、差分ベクトルは、
fd(k)=fres(k)-fexc(k)、
ここで、0≦k≦ftc/fbin
【0169】
【数36】
【0170】
ここで、ftc/fbin<k≦(ftc+ftrans)/fbin
それ以外の場合、fd(k)=fres(k)
として構築され得る、
ここで、fres、fexc、およびftcは。前述の説明においてすでに定義されている。
【0171】
6.2)符号化サブモードに対する周波数領域ビット割り当て
6.2.1)利用可能なビットの一部をより低い周波数に割り当てる
図7に例示されているように統合時間領域/周波数領域CELP符号化方法750では、混合時間領域/周波数領域エンコーダ720は、帯域選択器およびビット割り当て器707を含み、混合時間領域/周波数領域符号化方法770は、帯域選択およびビット割り当て検出757の対応する動作を含む。
【0172】
図9は、図7および図8の統合時間領域/周波数領域CELP符号化方法150/750の代替的実装形態において入力音響信号101が音声にも音楽にも分類されないときに利用可能なビットバジェットを差分ベクトルfdの周波数量子化に分配するための図7の帯域選択およびビット割り当て器707および対応する帯域選択およびビット割り当て動作757を同時に例示する概略ブロック図である。
【0173】
特に、図9は、入力音響信号101が音声にも音楽にも分類されず、前に選択された符号化サブモードに応じて「不明瞭信号タイプ」に分類されるときに帯域選択器およびビット割り当て器707が利用可能なビットを周波数量子化に分配する革新的な方法を示す。図9において、周波数量子化は帯域毎に実行される。簡単のため、周波数帯域は、この例示的な例において12.8kHzの内部サンプリングレートで、16個の周波数ビンである、同じ数の周波数ビンを有する。周波数帯域「0」は、スペクトルのより低い部分を表し、周波数帯域「15」は、スペクトルのより高い部分を表す。
【0174】
周波数量子化に利用可能なビットを可能な限り最もよく使用するために、帯域選択およびビット割り当て動作757は、カットオフ周波数ファインダおよびフィルタ108からの量子化されたカットオフ周波数ftcQの関数として、差分ベクトルfdのより低い周波数を量子化するために利用可能なビットバジェット(900を参照)の一部分を事前固定する第1の動作951を含む。動作951を実行するために、推定器901は、たとえば、以下の関係式
【0175】
【数37】
【0176】
を使用し、
ここで、PBlfは、差分ベクトルfdのより低い周波数の周波数量子化に割り当てられた利用可能なビットの割合である。この例では、より低い周波数は、最初の5つの周波数帯域、または最初の2つのkHzを指す。項Lf(ftcQ)は、量子化されたカットオフ周波数ftcQまでの周波数ビンの数を指す。
【0177】
次に、推定器901は、符号化サブモードフラグFtfsmに基づきより低い周波数の周波数量子化に割り当てられる利用可能なビットの割合PBlfを調整する。符号化サブモードフラグFtfsmが「2」(図8)に設定される、すなわち入力音響信号101の現在のフレームにおいて時間攻撃の可能性が検出される場合、低周波数の周波数量子化に割り当てられるビットの割合PBlfは、利用可能なビットの10%だけ増える。現在のフレームのコンテンツにおいて「音楽」に似た特性が検出され、サブモード符号化フラグFtfsmが「3」に設定されることによって指示される場合、より低い周波数の周波数量子化に割り当てられるビットの割合PBlfは、利用可能なビットの10%だけ減らされる。
【0178】
6.2.2)量子化する周波数帯域の数を推定する
差分ベクトルfdを周波数量子化するために利用可能な周波数帯域あたりのビットの総数に影響を及ぼす他のパラメータは、量子化するこの差分ベクトルfdの周波数帯域の推定される最大数NBmxである。現在説明されている例示的な例では、12.8kHzの内部サンプリングレートにおいて、周波数帯域の最大総数Nttは16である。
【0179】
符号化サブモードが使用されるときに、帯域選択およびビット割り当て動作757は、量子化する差分ベクトルfdの周波数帯域の最大数NBmxを推定する動作952を含む。動作952を実行するために、推定器902は、符号化サブモードフラグFtfsmが「1」に設定されている(第1の符号化サブモードが選択されている)場合に、周波数帯域の最大数NBmxを「10」に設定する。符号化サブモードフラグFtfsmが「2」に設定されている(第2の符号化サブモードが選択されている)場合、推定器902は、周波数帯域の最大数NBmxを「9」に設定する。符号化サブモードフラグFtfsmが「3」に設定されている(第3の符号化サブモードが選択されている)場合、推定器902は、周波数帯域の最大数NBmxを「13」に設定する。次いで、推定器902は、たとえば、以下の関係式
【0180】
【数38】
【0181】
を使用して、差分ベクトルfdの周波数量子化に利用可能なビットバジェットの関数として量子化する周波数帯域の最大数NBmxを再調整し、
ここで、BFは差分ベクトルfdの周波数量子化に利用可能なビットの数を表し(900参照)、BTは処理中のチャネルを符号化するために利用可能な総ビットレートであり(900参照)、Ftfsmはサブモードフラグであり(900参照)、Nttは周波数帯域の最大総数である。
【0182】
推定器902は、差分ベクトルfdの中間およびより高い周波数帯域の量子化に割り当てられるビットの数に関連して量子化する差分ベクトルfdの周波数帯域の最大数をさらに低減することができる。このような制限を目的として、最後のより低い周波数帯域およびそれ以降の最初の周波数帯域は、ビットの類似の数mb、またはより低い周波数の周波数量子化に割り当てられたビットPBlfの約17%を有すると仮定される。量子化されるべき最後の周波数帯域については、少なくとも1つの周波数パルスを量子化するために、4.5ビットの最小数mpが使用される。利用可能なビットレートBTが15kbps以上である場合、周波数帯域あたりのより多くのパルスを量子化することを可能にするようにビットの最小数mpは9になる。しかしながら、総利用可能ビットレートBTが15kbps未満であるが、サブモードフラグFtfsmは「3」に設定される、すなわち、コンテンツが音楽との類似性を有する場合、周波数量子化されるべき最後の周波数帯域のビット数mpは、より正確な量子化を可能にするために6.75となる。次いで、推定器902は、周波数帯域の補正最大数
【0183】
【数39】
【0184】
を、たとえば、以下の関係式
【0185】
【数40】
【0186】
を使用して計算し、
ここで、
【0187】
【数41】
【0188】
は、量子化する周波数帯域の補正最大数に対応し、NBmxは、周波数帯域の推定された最大数であり、数「5」は、周波数帯域の最小数を表し、BFは、差ベクトルfdの周波数量子化に利用可能なビットの数を表し、PBlfは、5つのより低い周波数帯域の量子化に割り当てられたビットの割合であり、mpは、周波数帯域を周波数量子化するために割り当てられたビットの最小数であり、mbは、5つのより低い周波数帯域の後の第1の周波数帯域の量子化に割り当てられたビット数である。
【0189】
周波数帯域の最大数の計算後、推定器902は、mpがmb以下のままであるような追加の検証を実行し得る。この追加の検証は任意選択のステップであるが、低ビットレートでは、これは差分ベクトルfdの周波数帯域の間でビットをより効率的に割り当てるのに役立つ。
【0190】
6.2.3)より低い周波数に割り当てられるビットの数を修正する
帯域選択およびビット割り当て動作757は、低周波数ビットを計算する動作953を含む。動作953を実行するために、計算器903が提供される。周波数帯域の最大数
【0191】
【数42】
【0192】
の計算の結果、量子化する周波数帯域の数が少なくなる場合、計算器903は、たとえば、以下の関係式
【0193】
【数43】
【0194】
を使用して、より低い周波数帯域の量子化にもはや関係しないようなより高い周波数帯域に以前割り当てられたビットの部分を再割り当てし、
ここで、BLFは、5つのより低い周波数帯域に割り当てられたビットに対応し、BFは、差分ベクトルfdのより低い周波数を周波数量子化するために利用可能なビットの数に対応し、PBlfは、たとえば、5つのより低い周波数帯域の周波数量子化に割り当てられた推定器901からのビットの上述の割合であり、mpは、周波数帯域を量子化するために割り当てられたビットの最小数であり、mbは、5つの(5つの)低い周波数帯域の後の第1の周波数帯域を量子化するために割り当てられたビット数である。
【0195】
6.2.4)周波数帯域の二重ソート
帯域選択およびビット割り当て動作757は、周波数帯域の特性化の動作954を含む。動作954を実行するために、帯域選択器およびビット割り当て器707は、ビットレートがより低い周波数帯域とそれらの周波数帯域の残り部分との間に分配された後、各帯域の重要度を決定するために、周波数帯域の二重ソートを行う周波数帯域特性化器904を含む。第1のソートは、1つまたは複数の帯域が隣接周波数帯域と比較してより低いエネルギーを有するかどうかを見出すことを含む。それが生じたときに、特性化器904は、利用可能なビットバジェットが高い場合であっても、事前決定された最小数mpのビットのみがこれらの低エネルギーの周波数帯域の周波数量子化に割り当てられることができるようにこれらの帯域をマークする。第2のソートは、たとえば、エネルギーの降順で、中間および高エネルギーの周波数帯域の位置ソートを行うことを含む。これらの第1および第2のソート(二重ソート)は、より低い周波数帯域については実行されないが、周波数帯域の最大数
【0196】
【数44】
【0197】
まで実行される。周波数帯域特性化の動作954は、式
【0198】
【数45】
【0199】
のようにまとめることができ、
ここで、Ppb(i)は、最小数mpのビットのみが使用される周波数帯域に対して「1」に設定され、
【0200】
【数46】
【0201】
は、エネルギーの降順で、中間およびより高いエネルギーの周波数帯域の位置を含み、E(i)は、各帯域のエネルギーに対応する。CBbおよびBbは、本明細書において上の5項で定義されている。差分ベクトルfdは、6.1項ですでに定義されている。
【0202】
差分ベクトルfdの各周波数帯域のエネルギーE(i)は、図7および図9の計算器708および対応する動作758において計算される。計算器708および動作758は、また、図6の計算器615および動作665を参照しつつ説明されているように周波数帯域あたりの利得を計算する。差分ベクトルfdの各周波数帯域のエネルギーE(i)および各周波数帯域の利得は、たとえば図6の量子化器616および動作666に関して説明されているように量子化され、両方とも遠いデコーダに伝送される。統合時間領域/周波数領域符号化デバイス700および方法750に対する図7の実装形態の場合、計算器708および動作758は、計算器615および動作665ならびに量子化器616および動作666を置き換える。
【0203】
6.2.5)選択された帯域にビットを分配する
帯域選択およびビット割り当て動作757は、周波数帯域あたりのビットの最終分配の動作955を含む。動作955を実行するために、帯域選択器およびビット割り当て器707は、周波数帯域あたりのビットの最終分配器905を含む。
【0204】
周波数帯域が特性化された後、分配器905は、選択された周波数帯域間で差分ベクトルfdを周波数量子化するために利用可能なビットレートまたはビット数BFを割り当てる。
【0205】
非限定的な例では、最初の5つのより低い周波数帯域について、分配器905は、より低い周波数を周波数量子化するために割り当てられたビットBLFを線形に分配し、最初の最も低い周波数帯域は、ビットBLFの23%を受け取り、第5のより低い周波数帯域は、ビットBLFの最後の17%を受け取る。この方式で、差分ベクトルfdのスペクトルのより低い周波数は、入力音響信号101のより高品質の合成を回復するのに十分な精度で量子化され得る。
【0206】
分配器905は、差分ベクトルfdを周波数量子化するために割り当てられた残りのビットBFを、線形関数として他の中間およびより高い周波数帯域にわたって分配するが、その際に、ここでもまた、より多くのビットがより高いエネルギーの周波数帯域に割り当てられ、より少ないビットがその隣接周波数帯域のエネルギーと比較してより低いエネルギーを有する周波数帯域に割り当てられることができるように前の周波数帯域のエネルギー特性化(動作954)を考慮し、それによって差分ベクトルfdのスペクトルのより重要な部分をより正確に量子化することによって利用可能なビットをより適切に使用する。非限定的な一例として、以下の関係式
【0207】
【数47】
【0208】
は、ビット分配(動作955)がどのように実行され得るかを例示しており、
ここで、Bp(i)は、周波数帯域iあたりの割り当てられたビットの数を表し、BFは、差分ベクトルfdを周波数量子化するために利用可能なビットの数を表し、BLFは、5つのより低い周波数帯域に割り当てられたビットレートまたはビットに対応し、mpは、周波数帯域内の周波数パルスを量子化するビットの最小数であり、Ppb(i)は、ビットの最小数mpが使用される位置を含み、
【0209】
【数48】
【0210】
は、量子化されるべき周波数帯域の最大数である。
【0211】
動作955の後に、割り当てられていないビットがある場合、分配器905は、それらをより低い周波数帯域に割り当てる。非限定的な一例として、分配器905は、第5の帯域から始まって第1の帯域に戻り、残りのビットをすべて割り当てるために必要であればこの手順を繰り返して周波数帯域毎に残りのビットを1つ割り当てる。
【0212】
後で、分配器905は、周波数パルスの量子化を実行するために使用されるアルゴリズムおよび潜在的な固定小数点実装形態に応じて、周波数帯域あたりのビットの数に対してフロア、切り捨て、または丸めを実行しなければならない場合がある。
【0213】
6.3)周波数パルスの検索
混合時間領域/周波数領域CELP符号化方法170/770は、差分ベクトルfdを周波数量子化する動作160(図1図2および図7)を含む。動作160を実行するために、混合時間領域/周波数領域CELPエンコーダ120/720は、周波数量子化器110(図2の219)を含む。
【0214】
差分ベクトルfdは、いくつかの方法を使用して量子化され得る。いずれの場合も、周波数パルスは、検索され、量子化されなければならない。可能な一実装形態において、周波数量子化器110は、スペクトル全体にわたって差分ベクトルfdの最もエネルギーの高いパルスを検索する。パルスを検索する方法は、スペクトルを周波数帯域に分割し、周波数帯域毎に特定の数のパルスを許容する単純なものとすることができる。周波数帯域あたりのパルスの数は、利用可能なビットバジェットおよびスペクトル内の周波数帯域の位置に依存する。典型的には、より多くのパルスがより低い周波数に割り当てられる。
【0215】
6.4)量子化差分ベクトル
利用可能なビットレートに応じて、周波数パルスの量子化は、異なる技術を使用する周波数量子化器110によって実行され得る。一実装形態において、12kbps未満のビットレートでは、パルスの位置および符号を符号化するために、単純な検索および量子化スキームが使用され得る。このスキームは、非限定的な一例として本明細書において以下で説明されている。
【0216】
3175Hzより低い周波数では、単純な検索および量子化スキームは、内容全体が参照により本明細書に組み込まれている文献、たとえば文献[8]において説明されている階乗パルス符号化(FPC)に基づくアプローチを使用する。
【0217】
より具体的には、図5および図6を参照すると、周波数量子化器110は、すべてのスペクトルがFPCを使用して量子化されるかどうかを決定する動作554を実行する選択器504を含む。図5に例示されているように、選択器504がすべてのスペクトルがFPCを使用して量子化されないと決定した場合、FPC符号化ならびにパルス位置および符号符号化の動作556が符号化器506において実行される。
【0218】
図6に例示されているように、FPC符号化ならびにパルス位置および符号符号化の動作556は、周波数パルス検索動作659、FPC符号化動作660、最もエネルギーの高いパルスを見つける動作661、および周波数パルスの位置および符号を量子化する動作662を含む。動作659~662を実行するために、符号化器506は、それぞれ、周波数パルスの検索器609、FPC符号化器610、最もエネルギーの高いパルスのファインダ611、ならびに周波数パルスの位置および符号の量子化器612を含む。
【0219】
検索器609は、3175Hzより低い周波数について周波数帯域のすべてを通して周波数パルスを検索する。次に、FPC符号化器610は、周波数パルスを処理する。ファインダ611は、3175Hz以上の周波数に対する最もエネルギーの高いパルスを決定し、量子化器612は、見つかった、最もエネルギーの高いパルスの位置および符号を符号化する。周波数帯域内で2つ以上のパルスが許容される場合、以前に見つけられたパルスの振幅は2で除算され、周波数帯域全体にわたって検索が再び実行される。パルスが見つかるたびに、その位置および符号は量子化およびビットパッキング段階のために記憶される。以下の擬似コード
【0220】
【数49】
【0221】
は、非限定的な例として、この単純な検索および量子化のスキームを例示しており、
ここで、NBDは周波数帯域の数であり(例示的な例ではNBD=16)、Npは周波数帯域kにおいて符号化されるべきパルスiの数であり、Bbは周波数帯域あたりの周波数ビンの数であり、CBpは前の5項ですでに定義されているようなバンドあたりの累積周波数ビンであり、ppは見つかったパルス位置を含むベクトルを表し、psは見つかったパルスの符号を含むベクトルを表し、pmaxは見つかったパルスのエネルギーを表す。
【0222】
12kbpsを超えるビットレートでは、選択器504は、すべてのスペクトルがFPCを使用して量子化されるべきであることを決定する(図5および図6)。図5に例示されているように、FPC符号化の動作555は、次いで、FPC符号化器505において実行される。図6を参照すると、符号化器505は、周波数パルスの検索器607を含み、動作555は、周波数パルスを検索する対応する動作667を含む。周波数パルスの検索は、周波数帯域全体を通して行われる。動作555は、見つかった周波数パルスを符号化する動作668を含み、符号化器505は、動作668を実行するための、FPCプロセッサ608を含む。
【0223】
次いで、FPCプロセッサ608またはパルスの位置および符号の量子化器612は、パルス符号psを有するパルスの数nb_pulsesを、見つかった位置psの各々に加えることによって量子化差分ベクトルfdQを取得する。各周波数帯域について、量子化差分ベクトルfdQは、たとえば以下の擬似コード
for j=0,..., j<nb_pulses
fdQ(pp(j))+=ps(j)
を使用して記述され得る。
【0224】
6.5)ノイズフィリング
周波数帯域が量子化される精度は高かったり低かったりするが、前項で説明された量子化方法では、周波数帯域内のすべての周波数ビンが量子化されることを保証しない。これは、特に、周波数帯域毎に量子化されるパルスの数が比較的少ない低ビットレートにおいて特に当てはまる。これらの未量子化周波数ビンに起因する可聴アーチファクトの出現を防ぐために、周波数量子化器110はノイズフィラー507(図5)を含み、これらのギャップを埋めるために未量子化周波数ビンにいくつかのノイズを付加する対応する動作557を実行する。このノイズ追加は、たとえば、12kbps未満のビットレートでは全スペクトルにわたって行われ得るが、より高いビットレートでは、時間領域励振寄与のカットオフ周波数ftcより上でのみ適用され得る。簡単のため、ノイズ強度は利用可能なビットレートでのみ変化する。高ビットレートでは、ノイズレベルは低いが、低ビットレートではノイズレベルは高い。
【0225】
ノイズフィラー507は、加算器613(図6)を含み、これは、そのような加えられたノイズの強度またはエネルギーレベルが決定された後に量子化差分ベクトルfdQにノイズを加える動作663を実行する。その目的のために、周波数量子化動作160は、加えられたノイズの強度またはエネルギーレベルを推定する動作664を含み、周波数量子化器110は、動作664を実行するために、ノイズエネルギーレベルの対応する推定器614を含む。加えられるノイズの強度またはエネルギーレベルを推定する動作664は、推定器614によって、周波数量子化器110の帯域あたりの利得計算器615において周波数帯域あたりの利得を決定する動作665の前に行われる。
【0226】
例示されている実施形態では、推定器614において、ノイズレベルは、符号化ビットレートに直接関係する。たとえば、6.60kbpsでは、推定器614はノイズレベルNLを特定の周波数帯域で符号化された周波数パルスの振幅の0.4倍に設定し、24kbpsにおける周波数帯域で符号化された周波数パルスの振幅の0.2倍の値まで徐々に下げる。加算器613は、たとえば、周波数帯域の半分の累積ビンのエネルギーが0.5未満であるときに、特定の数の連続する周波数ビンが非常に低いエネルギーを有するスペクトルの部分にのみノイズを注入する。特定の周波数帯域iについて、ノイズは、たとえば
【0227】
【数50】
【0228】
のように注入され、
ここで、帯域iについて、CBbは周波数帯域あたりの周波数ビンの累積数であり、Bbは特定の帯域iにおける周波数ビンの数であり、NLは加えられるノイズのレベルであり、randは-1から1の間に制限される乱数発生器である。
【0229】
6.6)帯域あたりの利得量子化
図5および図6を参照すると、統合時間領域/周波数領域符号化デバイス100および方法150の周波数量子化動作160は、周波数帯域あたりの利得を決定する動作665と、それに続く、帯域あたりの利得を量子化する動作666を含む。周波数量子化器110は、動作665および666を実行するために、帯域あたりの利得計算器615および帯域あたりの利得量子化器616を含む。
【0230】
必要な場合にノイズフィルを含む量子化差分ベクトルfdQが見つけられた後、計算器615は、各周波数帯域に対する帯域あたりの利得を計算する。特定の帯域に対する帯域あたりの利得Gb(i)は、たとえば、以下の関係式
【0231】
【数51】
【0232】
を使用して、対数領域における未量子化差分ベクトルfdのエネルギーと量子化差分ベクトルfdQのエネルギーとの間の比として定義され、
ここで、CBbおよびBbは、本明細書において上の5項で定義されている。
【0233】
帯域あたりの利得量子化器616のベクトルは、帯域あたりの周波数利得を量子化する。ベクトル量子化の前に、低ビットレートでは、最後の利得(最後の周波数帯域に対応する)が別々に量子化され、残りの15個の帯域あたりの利得(たとえば、周波数帯域の数16が使用されるとき)は、量子化された最後の利得で除算される。次いで、正規化された15個の残りの利得は、量子化器616によってベクトル量子化される。より高いビットレートでは、帯域あたりの利得の平均が最初に量子化され、次いで、それらの帯域あたりの利得のベクトル量子化の前に、たとえば16個の周波数帯域のすべての帯域あたりの利得から取り除かれる。使用されるベクトル量子化は、帯域あたりの利得を含むベクトルと特定のコードブックのエントリとの間の距離の対数領域における標準的な最小化とすることができる。
【0234】
周波数領域符号化モードでは、利得は各周波数帯域に対して計算器615で計算され、未量子化ベクトルfdのエネルギーを量子化ベクトルfdQと一致させる。利得は、量子化器616でベクトル量子化され、乗算器509(図5および図6)を通して量子化ベクトルfdQに周波数帯域毎に適用される(動作559)。
【0235】
代替的に、量子化されるべき周波数帯域の一部のみを選択することによってスペクトル全体に対して12kbpsより低いレートでFPC符号化スキームを使用することも可能である。周波数帯域の選択を実行する前に、未量子化差分ベクトルfdの周波数帯域のエネルギーEdが量子化器616を使用して量子化される。エネルギーは、たとえば、以下の関係式
【0236】
【数52】
【0237】
を使用して計算され、
ここで、CBbおよびBbは、本明細書において上の5項で定義されている。
【0238】
周波数帯域エネルギーEd'の量子化を実行するために、最初に、使用される16個の帯域のうち最初の12個の周波数帯域にわたる平均エネルギーが量子化され、すべての16個の帯域エネルギーから減算される。次いで、すべての周波数帯域が、3つまたは4つの帯域のグループ毎にベクトル量子化される。使用されるベクトル量子化は、帯域あたりの利得を含むベクトルと特定のコードブックのエントリとの間の距離の対数領域における標準的な最小化とすることができる。十分なビットが利用できない場合、最初の12個の周波数帯域のみを量子化し、最後の4つの周波数帯域を、前の3つの周波数帯域の平均を使用して、または他の任意の方法によって外挿することが可能である。
【0239】
未量子化差分ベクトルの周波数帯域のエネルギーが量子化された後、デコーダ側で複製可能な仕方でエネルギーを降順でソートすることが可能になる。ソート中に、2kHzより低いすべてのエネルギー帯域は常に保持され、次いで、最もエネルギーの高い帯域のみが、周波数パルスの振幅および符号を符号化するためのFPCスキームに渡される。このアプローチにより、FPCスキームは、より小さいベクトルを符号化するが、より広い周波数範囲をカバーする。言い換えると、スペクトル全体にわたって重要なエネルギー事象をカバーするために必要なビット数が少なくて済む。
【0240】
図7の統合時間領域/周波数領域符号化デバイス700および方法750の実装形態の特定の場合において、周波数帯域選択およびビット分配は、本明細書において上で説明されているように、帯域あたりのエネルギーおよび帯域あたりの利得計算器708および計算動作758ならびに図7および図9の帯域選択器およびビット割り当て器707および帯域選択およびビット割り当て動作757によって決定されるように代わりに実行される。
【0241】
パルス量子化プロセスの後に、前の方で説明したものに類似するノイズフィルが実行される。次いで、利得調整係数Gaが周波数帯域毎に計算され、それにより量子化差分ベクトルfdQのエネルギーEdQを未量子化差分ベクトルfdの量子化エネルギーEd'に一致させる。次いで、この帯域あたりの利得調整係数は、量子化差分ベクトルfdQに適用される。これは、
【0242】
【数53】
【0243】
で表され得る、
ここで
【0244】
【数54】
【0245】
および、Ed'は前に定義されたような未量子化差分ベクトルfdの帯域あたりの量子化エネルギーである。
【0246】
周波数領域符号化段階の完了後、全時間領域/周波数領域励振が見つけられる。その目的のために、混合時間領域/周波数領域CELP符号化方法170/770は、混合時間領域/周波数領域CELPエンコーダ120/720の加算器111(図1図2図5、および図6)を使用して、周波数量子化器110からの周波数量子化差分ベクトルfdQを、フィルタリングされた周波数変換時間領域励振寄与fexcFに加える動作161を含む。統合時間領域/周波数領域符号化デバイス100/700がそのビット割り当てを時間領域のみの符号化モードから混合時間領域/周波数領域符号化モードに変更するときに、時間領域のみの符号化モードの周波数帯域あたりの励振スペクトルエネルギーは、混合時間領域/周波数領域符号化モードの周波数帯域あたりの励振スペクトルエネルギーと一致しない。このエネルギーの不一致は、低ビットレートでより聞き取りやすいスイッチングアーチファクトを発生させることができる。このビット再割り当てによって生じる音質劣化を低減するために、長期利得が各帯域について計算され得、再割り当て後の数フレームに対する各周波数帯域のエネルギーを補正するために、総和された励振に適用され得る。次いで、混合時間領域/周波数領域CELP符号化方法170/770は、周波数量子化差分ベクトルfdQと周波数変換されフィルタリングされた時間領域励振寄与fexcFとの和を、たとえばIDCT(逆DCT)220(図2)を使用して時間領域に変換する動作162(図1図5、および図6)を含む。
【0247】
統合時間領域/周波数領域符号化方法150/750は、符号化デバイス100/700のLP合成フィルタ113/706(図1図2、および図7)を通してIDCT220からの全時間領域/周波数領域励振をフィルタリングすることによって合成信号を生成する動作163/756を含む。
【0248】
量子化差分ベクトルfdQを形成する周波数パルスの量子化された位置および符号は、遠くのデコーダ(図示せず)に伝送される。
【0249】
非限定的な一実施形態において、CELP符号化メモリは、時間領域励振寄与のみを使用してサブフレームベースで更新されるが、全時間領域/周波数領域励振は、フレーム境界でこれらのメモリを更新するために使用される。他の可能な実装形態において、CELP符号化メモリは、サブフレームベースで更新され、時間領域励振寄与のみを使用してフレーム境界でも更新される。この結果、周波数領域量子化信号がコアCELP層と無関係に上位量子化層を構成する埋め込み構造が得られる。このことは、特定のアプリケーションにおいて利点をもたらす。この特定の場合において、固定コードブックは、良好な知覚品質を維持するために常に使用され、同じ理由からサブフレーム数は常に4である。しかしながら、周波数領域分析は、フレーム全体に適用することができる。この埋め込みアプローチは、約12kbps以上のビットレートで機能する。
【0250】
7)デコーダデバイスおよび方法
図11は、上で説明されている統合時間領域/周波数領域符号化デバイス700および対応する統合時間領域/周波数領域符号化方法750からビットストリーム1101をデコードするためのデコーダデバイス1100および対応するデコード方法1150を同時に例示する概略ブロック図である。
【0251】
デコーダデバイス1100は、統合時間領域/周波数領域符号化デバイス700からビットストリーム1101を受信するための受信器(図示せず)を含む。
【0252】
統合時間領域/周波数領域符号化デバイス700によって符号化された音響信号が「音楽」に分類された場合、これは、対応するシグナリングビットによってビットストリーム1101において指示され、デコーダデバイス1100によって検出される(1102参照)。次いで、受信されたビットストリーム1101は、「音楽」デコーダ1103、たとえば周波数領域デコーダによってデコードされる。
【0253】
統合時間領域/周波数領域符号化デバイス700によって符号化された音響信号が「音声」に分類された場合、これは、対応するシグナリングビットによってビットストリーム1101において指示され、デコーダデバイス1100によって検出される(1104参照)。次いで、受信されたビットストリーム1101は、「音声」デコーダ1105、たとえば、ACELP(代数符号励振線形予測)またはより一般的にはCELP(符号励振線形予測)を使用する時間領域デコーダによってデコードされる。
【0254】
統合時間領域/周波数領域符号化デバイス700によって符号化された音響信号が「音楽」または「音声」のいずれにも分類されず(1102および1104を参照)、音響信号を符号化するために利用可能なビットレートが9.2kbps以下であった場合(1106を参照)、このことは、「0」に設定されたサブモードフラグFtfsmによってビットストリームにおいて指示される。次いで、受信されたビットストリーム1101は、1107のところに示されているように、後方符号化モード、すなわち、図1および図2(EVS)のレガシーの統合時間領域および周波数領域符号化モデルを使用してデコードされる。
【0255】
最後に、統合時間領域/周波数領域符号化デバイス700によって符号化された音響信号が「音楽」または「音声」のいずれにも分類されず(1102および1104を参照)、音響信号を符号化するために利用可能なビットレートが9.2kbpsより高かった場合(1106を参照)、このことは、「1」、「2」、または「3」に設定されたサブモードフラグFtfsmによってビットストリーム1101において指示される。次いで、受信されたビットストリーム1101は、図12の音響信号デコーダ1200および対応する音響信号デコード方法1250を使用してデコードされる。
【0256】
7.1)音響信号デコーダおよびデコード方法
図12は、不明瞭信号タイプカテゴリに分類される音響信号の場合に上で説明されている統合時間領域/周波数領域符号化デバイス700および対応する統合時間領域/周波数領域符号化方法750からビットストリームをデコードするための音響信号デコーダ1200および対応する音響信号デコード方法1250を同時に示す概略ブロック図である。
【0257】
前述の説明で述べたように、適応コードブックインデックスTおよび適応コードブック利得bは、量子化されて伝送され、したがって、受信器(図示せず)によってビットストリームにおいて受信される。同様に、使用されたときに、固定コードブックインデックスおよび固定コードブック利得も量子化され、デコーダに伝送され、したがって、受信器(図示せず)によってビットストリーム1101において受信される。音響信号デコード方法1250は、CELP符号化の技術分野において一般的に行われるような適応コードブックインデックスおよび利得、ならびに使用される場合に、固定コードブックインデックスおよび利得を使用して、デコードされた時間領域励振寄与を計算する動作1256を含む。動作1256を実行するために、音響信号デコーダ1200は、デコードされた時間領域励振寄与の計算器126を含む。
【0258】
音響信号デコード方法1250は、また、DCT変換を使用する動作156と同じ手順を使用して、デコードされた時間領域励振寄与の周波数変換を計算する動作1257を含む。動作1257を実行するために、音響信号デコーダ1200は、デコードされた時間領域励振寄与の周波数変換の計算器1207を含む。
【0259】
前述の説明で述べたように、カットオフ周波数の量子化バージョンftcQがデコーダに伝送され、したがって、受信器(図示せず)によってビットストリーム1101において受信される。音響信号デコード方法1250は、ビットストリーム1101から回復されたデコードされたカットオフ周波数ftcQおよび前に説明されたフィルタリング動作266と同じまたは類似の手順を使用して、計算器1207からの時間領域励振寄与の周波数変換をフィルタリングする動作1258を含む。動作1258を完了するために、音響信号デコーダ1200は、回復されたカットオフ周波数ftcQを使用する時間領域励振寄与の周波数変換のフィルタ1208を含む。フィルタ1208は、図2のフィルタ216と同じ、または少なくとも類似の構造を有する。
【0260】
フィルタ1208からの時間領域励振寄与のフィルタリングされた周波数変換は、対応する加算動作1259を実行する加算器1209の正入力に供給される。
【0261】
音響信号デコード方法1250は、差分ベクトルfdの周波数帯域あたりのデコードされたエネルギーおよび利得を計算する動作1260を含む。動作1260を実行するために、音響信号デコーダ1200は、計算器1210を含む。特に、計算器1210は、量子化について本開示において説明されている手順と逆の手順を使用して、統合時間領域/周波数領域符号化デバイス700から受信器(図示せず)によってビットストリーム1101において受信された周波数帯域あたりの量子化されたエネルギーおよび周波数帯域あたりの量子化された利得を逆量子化する。
【0262】
音響信号デコード方法1250は、周波数量子化差分ベクトルfdQを回復する動作1261を含む。動作1261を実行するために、音響信号デコーダ1200は、計算器1211を含む。計算器1211は、ビットストリーム1101から周波数パルスの量子化された位置および符号を抽出し、動作757および割り当て器707によって決定され入力音響信号を符号化するために統合時間領域/周波数領域符号化デバイス700によって採用されるような、異なる周波数帯域における量子化に使用されるべき周波数帯域の選択および異なる周波数帯域におけるビット割り当てを複製する。計算器1211は、この複製された情報を使用して、抽出された周波数パルス量子化位置および符号から周波数量子化差分ベクトルfdQを回復する。特に、その目的のために、音響信号デコーダ1200は、周波数量子化差分ベクトルfdQに対するデコーダ1200で利用可能なビットの数(ビットレート)(1220参照)、処理中のチャネルに利用可能な総ビットレート(1220参照)、およびサブモードフラグ(1220参照)に応じて、図9に例示されているような統合時間領域/周波数領域符号化デバイス700で使用される手順を複製する。
【0263】
特に、次の通りである。
- 図12の推定器1201および動作1251は、量子化されたカットオフ周波数ftcQの関数として差分ベクトルfdのより低い周波数を量子化するために利用可能なビットバジェットの一部を事前固定する、図9の推定器901および動作951に対応する。
- 図12の推定器1202および動作1252は、量子化された差分ベクトルfdQの周波数帯域の最大数NBmxを推定する、図9の推定器902および動作952に対応する。
- 図12の計算器1203および動作1253は、より低い周波数のビットを計算する、図9の計算器903および動作953に対応する。
- 図12の計算器1204および動作1254は、周波数帯域特性化を行う、図9の特性化器904および動作954に対応する。
- 図12の分配器1205および動作1255は、周波数帯域あたりのビットの最終分配を行う、図9の分配器905および動作955に対応する。
【0264】
音響信号デコード方法1250は、計算器1211からの回復された周波数量子化差分ベクトルfdQおよびフィルタ1208からの周波数変換されフィルタリングされた時間領域励振寄与fexcFを加算して、混合時間領域/周波数領域励振を形成する動作1259を含む。
【0265】
理解できるように、推定器1201および1202、計算器1203、特性化器1204、分配器1205、計算器1206および1207、フィルタ1208、計算器1210および1211、ならびに加算器1212は、不明瞭信号タイプカテゴリに分類された音響信号を符号化するために選択および使用される符号化サブモードのうちの1つを識別するサブモードフラグを含む、ビットストリーム1101において伝達される情報を使用して混合時間領域/周波数領域励振の再構成器を形成する。
【0266】
同じ方式で、動作1251~1261は、ビットストリーム1101で伝達された情報を使用して混合時間領域/周波数領域励振を再構成する方法を形成する。
【0267】
音響信号デコーダ1200は、たとえばIDCT(逆DCT)220を使用して混合時間領域/周波数領域励振を時間領域に戻す変換を行う動作1262を実行する変換器1212を含む。
【0268】
最後に、合成された音響信号は、変換器1212からの全励振をLP(線形予測)合成フィルタ1213を通してフィルタリングする動作1263によってデコーダ1200において計算される。もちろん、合成フィルタ1213を再構成するためにデコーダ1200によって必要とされるLPパラメータは、CELP符号化の技術分野においてよく知られているように統合時間領域/周波数領域符号化デバイス700から伝送され、ビットストリーム1101から抽出される。
【0269】
8)ハードウェアの実装形態
図10は、上で説明されている統合時間領域/周波数領域符号化デバイス100/700および方法150/750、デコーダデバイス1100およびデコード方法1150を形成するハードウェアコンポーネントの例示的な構成の簡略化されたブロック図である。
【0270】
統合時間領域/周波数領域符号化デバイス100/700およびデコーダデバイス1100は、携帯端末の一部として、ポータブルメディアプレーヤの一部として、または任意の類似のデバイス内に実装され得る。デバイス100/700およびデコーダデバイス1100(図10では1000として識別される)は、入力1002、出力1003、プロセッサ1001、およびメモリ1004を含む。
【0271】
入力1002は、図1および図7の入力音響信号101/ビットストリーム1101をデジタルまたはアナログ形式で受信するように構成される。出力1003は、出力信号を供給するように構成される。入力1002および出力1003は、共通モジュール、たとえばシリアル入力/出力デバイスに実装され得る。
【0272】
プロセッサ1001は、入力1002、出力1003、およびメモリ1004に動作可能に接続されている。プロセッサ1001は、図1図9に例示されているような入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイス100/700の様々なコンポーネントまたは図11図12のデコーダデバイス1100の機能をサポートするコード命令を実行するための1つまたは複数のプロセッサとして実現される。
【0273】
メモリ1004は、プロセッサ1001によって実行可能なコード命令を記憶するための非一時的メモリ、特に、実行されたときに、プロセッサに、本開示において説明されている統合時間領域/周波数領域符号化デバイス100/700および方法150/750ならびにデコーダデバイス1100およびデコード方法1150の動作およびコンポーネントを実装させる非一時的命令を含む/記憶するプロセッサ可読メモリを含み得る。メモリ1004はまた、プロセッサ1001によって実行される様々な機能からの中間処理データを記憶するためのランダムアクセスメモリまたはバッファも含み得る。
【0274】
当業者であれば、統合時間領域/周波数領域符号化デバイス100/700および方法150/750、ならびにデコーダデバイス1100およびデコード方法1150の説明は、例示的なものに過ぎず、いかなる形でも限定することを意図されていないことを理解するであろう。他の実施形態も、本開示の利益を有する当業者には容易に分かるであろう。さらに、開示されている統合時間領域/周波数領域符号化デバイス100/700および方法150/750、デコーダデバイス1100およびデコード方法1150は、音響をエンコードすること、およびデコードすることの既存のニーズおよび問題に対する有益な解決方法を提供するようにカスタマイズされ得る。
【0275】
明確にするために、統合時間領域/周波数領域符号化デバイス100/700および方法150/750ならびにデコーダデバイス1100およびデコード方法1150の実装形態のよくある特徴のすべてが図示され、説明されているわけではない。もちろん、統合時間領域/周波数領域符号化デバイス100/700および方法150/750ならびにデコーダデバイス1100およびデコード方法1150の任意のそのような実装形態の開発において、アプリケーション関係、システム関係、ネットワーク関係、およびビジネス関係の制約の準拠など、開発者の特定の目標を達成するために多数の実装形態特有の決定が行われる必要があり得ること、またこれらの特定の目標が、実装形態毎に、および開発者毎に異なることは理解されるであろう。さらに、開発努力は複雑で時間がかかる可能性もあるが、それにもかかわらず、本開示を利用する音響処理の分野の当業者にとってデバイス設計の日常業務であることは理解されるであろう。
【0276】
本開示により、本明細書において説明されているコンポーネント/プロセッサ/モジュール、処理動作、および/またはデータ構造は、様々なタイプのオペレーティングシステム、コンピューティングプラットフォーム、ネットワークデバイス、コンピュータプログラム、および/または汎用機を使用して実装され得る。それに加えて、当業者であれば、ハード配線されたデバイス、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、または同様のものなどの、汎用性が低いデバイスも使用され得ることを認識するであろう。一連の動作および副動作を含む方法が、プロセッサ、コンピュータ、またはマシンによって実装され、それらの動作および副動作が、プロセッサ、コンピュータ、またはマシンによって読み取り可能な一連の非一時的コード命令として記憶され得る場合に、これらは有形のおよび/または非一時的な媒体上に記憶され得る。
【0277】
本明細書において説明されている統合時間領域/周波数領域符号化デバイス100/700および方法150/750、ならびにデコーダデバイス1100およびデコード方法1150は、ソフトウェア、ファームウェア、ハードウェア、または本明細書において説明される目的に適したソフトウェア、ファームウェア、ハードウェアの任意の組合せを使用するものとしてよい。
【0278】
本明細書において説明されている統合時間領域/周波数領域符号化デバイス100/700および方法150/750ならびにデコーダデバイス1100およびデコード方法1150において、様々な動作および副動作は様々な順序で実行され、動作および副動作のいくつかは任意選択であってもよい。
【0279】
本開示は、その非制限的で例示的な実施形態を用いて本明細書において上で説明されたが、これらの実施形態は、本開示の精神および性質から逸脱することなく付属の特許請求の範囲内で随意に修正され得る。
9)参考文献
本開示は、以下の参照文献について言及し、その全内容は参照により本明細書に組み込まれる。
【符号の説明】
【0280】
100 統合時間領域/周波数領域CELP符号化デバイス
101 入力音響信号
102 プリプロセッサ
103 時間/時間周波数符号化選択器
104 時間領域のみのエンコーダ
105 時間領域励振寄与の計算器
106 計算器
107 計算器
108 カットオフ周波数ファインダおよびフィルタ
109 減算器または計算器
110 周波数量子化器
111 加算器
120、720 混合時間領域/周波数領域エンコーダ
126 計算器
150 統合時間領域/周波数領域CELP符号化方法
152 動作
155 動作
156 動作
158 動作
159 減算動作
160 周波数量子化動作
161 加算動作
170、770 混合時間領域/周波数領域符号化方法
201 LP分析器
202 スペクトル分析器
203 開ループピッチ分析器
204 信号分類器
205 音声/一般的オーディオ選択器
206 選択器
207 閉ループCELPエンコーダ
208 時間攻撃検出器
209 高スペクトル力学分析器
210 サブフレーム数の計算器
211 分析器
212 固定代数コードブック
213 DCT
214 DCT
215 カットオフ周波数の計算器
216 フィルタ
220 IDCT(逆DCT)
251 動作
252 動作
253 動作
254 動作
255 動作
256 動作
257 動作
258 動作
259 操作
260 動作
261 動作
262 動作
265 動作
266 フィルタリング動作
301 入力LP残差
302 時間領域励振寄与
303 コンピュータ
304 平滑器
305 計算器
306 カットオフ周波数モジュール
307 決定器
308 ゼロ化器
309 量子化器
353 動作
354 動作
355 動作
357 動作
358 動作
359 動作
406 相互相関の制限器
407 正規化器
408 ファインダ
409 ファインダ
410 外挿器
411 選択器
412 長期平均ピッチ利得Glt
413 開ループピッチ相関Col
414 平滑化開ループピッチ相関Cst
415 分析器
416 選択器
417 ゼロ化器
418 フィルタ
456 動作
457 動作
459 動作
460 動作
465 動作
466 動作
467 動作
468 フィルタリング動作
501 周波数変換fexc
502 周波数変換fres
504 選択器
505 FPC符号化器
506 符号化器
507 ノイズフィラー
509 乗算器
554 動作
555 動作
556 動作
557 動作
559 動作
603 ダウンスケール係数
604 乗算器
607 検索器
608 FPCプロセッサ
609 周波数パルスの検索器
610 FPC符号化器
611 ファインダ
612 量子化器
613 加算器
614 推定器
615 計算器
616 量子化器
654 乗算動作
659 周波数パルス検索動作
660 FPC符号化動作
661 動作
662 動作
663 動作
664 動作
665 動作
666 動作
667 動作
668 動作
700 統合時間領域/周波数領域CELP符号化デバイス
701 音響信号分類器
702 プリプロセッサ
703 周波数領域エンコーダ
704 シンセサイザ
705 時間領域エンコーダ
706 シンセサイザ
707 ビット割り当て器
708 計算器
720 混合時間領域/周波数領域エンコーダ
750 統合時間領域/周波数領域CELP符号化方法
751 動作
752 動作
753 動作
754 音楽合成動作
755 動作
756 合成フィルタリング動作
757 ビット割り当て検出
758 動作
770 混合時間領域/周波数領域符号化方法
800 サブモード選択器
850 動作
902 推定器
903 計算器
904 特性化器
905 周波数帯域あたりのビットの最終分配器
951 第1の動作
952 動作
953 動作
954 動作
955 動作
1001 プロセッサ
1002 入力
1003 出力
1004 メモリ
1100 デコーダデバイス
1101 ビットストリーム
1103 「音楽」デコーダ
1105 「音声」デコーダ
1150 デコード方法
1200 音響信号デコーダ
1201 推定器
1202 推定器
1203 計算器
1204 計算器
1205 分配器
1207 計算器
1208 フィルタ
1209 加算器
1210 計算器
1211 計算器
1212 加算器、変換器
1213 LP(線形予測)合成フィルタ
1263 動作
1250 音響信号デコード方法
1251 動作
1252 動作
1253 動作
1254 動作
1255 動作
1256 動作
1257 動作
1258 動作
1259 加算動作
1260 動作
1261 動作
1262 動作
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
【手続補正書】
【提出日】2023-09-12
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器と、
前記選択された符号化サブモードを使用して前記入力音響信号を符号化するための混合時間領域/周波数領域エンコーダとを含む統合時間領域/周波数領域符号化デバイス。
【請求項2】
前記音響信号カテゴリは、音声、音楽、および前記入力音響信号が音声にも音楽にも分類されないことを示す不明瞭信号タイプを含む請求項1に記載の統合時間領域/周波数領域符号化デバイス。
【請求項3】
前記分類器が前記入力音響信号を前記音楽カテゴリに分類する場合、前記入力音響信号を符号化するための周波数領域エンコーダを含む請求項2に記載の統合時間領域/周波数領域符号化デバイス。
【請求項4】
前記分類器が前記入力音響信号を前記音声カテゴリに分類する場合、前記入力音響信号を符号化するための時間領域エンコーダを含む請求項2または3に記載の統合時間領域/周波数領域符号化デバイス。
【請求項5】
前記選択器は、前記入力音響信号を符号化するためのビットレートおよび前記不明瞭信号タイプカテゴリに分類された前記入力音響信号の特性に応じて前記符号化サブモードを選択する請求項1から4のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項6】
前記符号化サブモードは、それぞれのサブモードフラグによって識別される請求項1から5のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項7】
前記選択器は、(a)前記入力音響信号を符号化するために利用可能なビットレートが第1の所与の値以下であり、(b)前記入力音響信号が音声にも音楽にも分類されない場合、前記入力音響信号を符号化するためのレガシーの統合時間領域および周波数領域符号化モデルを使用する後方符号化サブモードを選択する請求項5または6に記載の統合時間領域/周波数領域符号化デバイス。
【請求項8】
前記選択器は、前記入力音響信号において「音声」に似た特性が検出された場合、第1の符号化サブモードを選択する請求項5から7のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項9】
前記選択器は、(a)前記入力音響信号が前記分類器によって音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第2の所与の値より高く、(b)前記入力音響信号が音楽である確率が第3の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出されない場合、前記第1の符号化サブモードを選択する請求項8に記載の統合時間領域/周波数領域符号化デバイス。
【請求項10】
前記選択器は、前記入力音響信号において時間攻撃が検出された場合、第2の符号化サブモードを選択する請求項5から9のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項11】
前記選択器は、(a)前記入力音響信号が前記分類器によって音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第4の所与の値より高く、(b)前記入力音響信号が音楽である確率が第5の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出された場合、前記第2の符号化サブモードを選択する請求項10に記載の統合時間領域/周波数領域符号化デバイス。
【請求項12】
前記選択器は、前記入力音響信号において「音楽」に似た特性が検出された場合、第3の符号化サブモードを選択する請求項5から11のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項13】
前記選択器は、(a)前記入力音響信号が前記分類器によって音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第6の所与の値より高く、(b)前記入力音響信号が音楽である確率が第7の所与の値より大きい場合、前記第3の符号化サブモードを選択する請求項12に記載の統合時間領域/周波数領域符号化デバイス。
【請求項14】
前記選択器は、前記入力音響信号において「音声」に似た特性が検出された場合、第1の符号化サブモードを選択し、
前記選択器は、前記入力音響信号において時間攻撃が検出された場合、第2の符号化サブモードを選択し、
前記選択器は、前記入力音響信号において「音楽」に似た特性が検出された場合、第3の符号化サブモードを選択する請求項1から13のいずれか一項に記載の統合時間領域/周波数領域符号化デバイス。
【請求項15】
前記選択器は、(a)前記第3の符号化サブモードにおいて、前記入力音響信号を符号化するためにフレーム毎の所有の数のサブフレームを、ならびに(b)第1および第2の符号化サブモードにおいて、前記所与の数より少ない、前記入力音響信号を符号化するために利用可能なビットレートに依存する、数のサブフレームを選択する請求項14に記載の統合時間領域/周波数領域符号化デバイス。
【請求項16】
入力音響信号を符号化するための統合時間領域/周波数領域符号化方法であって、
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類するステップであって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、ステップと、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択するステップと、
前記選択された符号化サブモードを使用して前記入力音響信号を混合時間領域/周波数領域符号化するステップとを含む統合時間領域/周波数領域符号化方法。
【請求項17】
前記音響信号カテゴリは、音声、音楽、および前記入力音響信号が音声にも音楽にも分類されないことを示す不明瞭信号タイプを含む請求項16に記載の統合時間領域/周波数領域符号化方法。
【請求項18】
前記分類器が前記入力音響信号を前記音楽カテゴリに分類する場合、前記入力音響信号を周波数領域符号化するステップを含む請求項17に記載の統合時間領域/周波数領域符号化方法。
【請求項19】
前記分類器が前記入力音響信号を前記音声カテゴリに分類する場合、前記入力音響信号を時間領域符号化するステップを含む請求項17または18に記載の統合時間領域/周波数領域符号化方法。
【請求項20】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号を符号化するためのビットレートおよび前記不明瞭信号タイプカテゴリに分類された前記入力音響信号の特性に応じて前記符号化サブモードを選択するステップを含む請求項16から19のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項21】
それぞれのサブモードフラグによって前記符号化サブモードを識別するステップを含む請求項16から20のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項22】
複数の符号化サブモードのうちの1つを選択するステップは、(a)前記入力音響信号を符号化するために利用可能なビットレートが第1の所与の値以下であり、(b)前記入力音響信号が音声にも音楽にも分類されない場合、前記入力音響信号を符号化するためのレガシーの統合時間領域および周波数領域符号化モデルを使用する後方符号化サブモードを選択するステップを含む請求項20または21に記載の統合時間領域/周波数領域符号化方法。
【請求項23】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号において「音声」に似た特性が検出された場合、第1の符号化サブモードを選択するステップを含む請求項20から22のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項24】
前記第1の符号化サブモードは、(a)前記入力音響信号が音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第2の所与の値より高く、(b)前記入力音響信号が音楽である確率が第3の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出されない場合、選択される請求項23に記載の統合時間領域/周波数領域符号化方法。
【請求項25】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号において時間攻撃が検出された場合、第2の符号化サブモードを選択するステップを含む請求項20から24のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項26】
前記第2の符号化サブモードは、(a)前記入力音響信号が音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第4の所与の値より高く、(b)前記入力音響信号が音楽である確率が第5の所与の値以下であり、(c)前記入力音響信号の現在のフレーム内で時間攻撃が検出された場合、選択される請求項25に記載の統合時間領域/周波数領域符号化方法。
【請求項27】
複数の符号化サブモードのうちの1つを選択するステップは、前記入力音響信号において「音楽」に似た特性が検出された場合、第3の符号化サブモードを選択するステップを含む請求項20から26のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項28】
前記第3の符号化サブモードは、(a)前記入力音響信号が音声にも音楽にも分類されず、前記入力音響信号を符号化するために利用可能なビットレートが第6の所与の値より高く、(b)前記入力音響信号が音楽である確率が第7の所与の値より大きい場合、選択される請求項27に記載の統合時間領域/周波数領域符号化方法。
【請求項29】
前記第1の符号化サブモードは、前記入力音響信号において「音声」に似た特性が検出された場合、選択され、
前記第2の符号化サブモードは、前記入力音響信号において時間攻撃が検出された場合、選択され、
前記第3の符号化サブモードは、前記入力音響信号において「音楽」に似た特性が検出された場合、選択される請求項16から28のいずれか一項に記載の統合時間領域/周波数領域符号化方法。
【請求項30】
複数の符号化サブモードのうちの1つを選択するステップは、(a)前記第3の符号化サブモードにおいて、前記入力音響信号を符号化するためにフレーム毎の所有の数のサブフレームを、ならびに(b)前記第1および第2の符号化サブモードにおいて、前記所与の数より少ない、前記入力音響信号を符号化するために利用可能なビットレートに依存する、数のサブフレームを、選択するステップを含む請求項29に記載の統合時間領域/周波数領域符号化方法。
【請求項31】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類する分類器であって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類器と、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択する選択器と、
前記選択された符号化サブモードを使用して前記入力音響信号を符号化するための混合時間領域/周波数領域エンコーダと
を実装させる非一時的命令を記憶するメモリとを含む統合時間領域/周波数領域符号化デバイス。
【請求項32】
入力音響信号を符号化するための統合時間領域/周波数領域符号化デバイスであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
前記入力音響信号を複数の音響信号カテゴリのうちの1つに分類することであって、前記音響信号カテゴリは、前記入力音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリを含む、分類することと、
前記入力音響信号が前記不明瞭信号タイプカテゴリに分類される場合、前記入力音響信号を符号化するために複数の符号化サブモードのうちの1つを選択することと、
前記選択された符号化サブモードを使用して前記入力音響信号を混合時間領域/周波数領域符号化することと
を実行させる非一時的命令を記憶するメモリとを含む統合時間領域/周波数領域符号化デバイス。
【請求項33】
音響信号デコーダであって、
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器であって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記入力音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信器と、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成する再構成器と、
前記混合時間領域/周波数領域励振を時間領域に変換する変換器と、
時間領域に変換された前記混合時間領域/周波数領域励振をフィルタリングして前記音響信号の合成バージョンを生成する合成フィルタとを含む音響信号デコーダ。
【請求項34】
前記符号化サブモードは、サブモードフラグによって前記ビットストリームにおいて識別される請求項33に記載の音響信号デコーダ。
【請求項35】
前記符号化サブモードは、(a)前記音響信号が「音声」に似た特性を含む場合、第1の符号化サブモード、(b)前記音響信号が時間攻撃を含む場合、第2の符号化サブモード、(c)前記音響信号が「音楽」に似た特性を含む場合、第3の符号化サブモードを含む請求項33または34に記載の音響信号デコーダ。
【請求項36】
前記再構成器は、前記ビットストリームで伝達される情報から時間領域励振寄与の周波数表現を回復し、周波数領域励振寄与と前記時間領域励振寄与の前記周波数表現との間の周波数量子化差分ベクトルを再構成し、周波数量子化差分信号を前記時間領域励振寄与の前記周波数表現に加え、前記混合時間領域/周波数領域励振を生成する請求項33から35のいずれか一項に記載の音響信号デコーダ。
【請求項37】
音響信号デコード方法であって、
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信するステップであって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、ステップと、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて、前記混合時間領域/周波数領域励振を再構成するステップと、
前記混合時間領域/周波数領域励振を時間領域に変換するステップと、
時間領域に変換された前記混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして前記音響信号の合成バージョンを生成するステップとを含む音響信号デコード方法。
【請求項38】
前記符号化サブモードは、サブモードフラグによって前記ビットストリームにおいて識別される請求項37に記載の音響信号デコード方法。
【請求項39】
前記符号化サブモードは、(a)前記音響信号が「音声」に似た特性を含む場合、第1の符号化サブモード、(b)前記音響信号が時間攻撃を含む場合、第2の符号化サブモード、(c)前記音響信号が「音楽」に似た特性を含む場合、第3の符号化サブモードを含む請求項37または38に記載の音響信号デコード方法。
【請求項40】
前記混合時間領域/周波数領域励振を再構成するステップは、前記ビットストリームで伝達された前記情報から時間領域励振寄与の周波数表現を回復するステップと、前記ビットストリームで伝達された前記情報から周波数領域励振寄与と前記時間領域励振寄与の前記周波数表現との間の周波数量子化差分ベクトルを再構成するステップと、前記周波数量子化差分信号を前記時間領域励振寄与の前記周波数表現に加えて前記混合時間領域/周波数領域励振を生成するステップとを含む請求項37から39のいずれか一項に記載の音響信号デコード方法。
【請求項41】
音響信号デコーダであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信する受信器であって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信器と、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて前記混合時間領域/周波数領域励振を再構成する再構成器と、
前記混合時間領域/周波数領域励振を時間領域に変換する変換器と、
時間領域に変換された前記混合時間領域/周波数領域励振をフィルタリングして前記音響信号の合成バージョンを生成する合成フィルタと
を実装させる非一時的命令を記憶するメモリとを含む音響信号デコーダ。
【請求項42】
音響信号デコーダであって、
少なくとも1つのプロセッサと、
前記プロセッサに結合され、非一時的命令であって、実行されたときに前記プロセッサに
音響信号の性質が不明瞭であることを示す不明瞭信号タイプカテゴリに分類された前記音響信号を表す混合時間領域/周波数領域励振を再構成するために使用可能な情報を伝達するビットストリームを受信することであって、前記情報は、前記不明瞭信号タイプカテゴリに分類された前記入力音響信号を符号化するために使用される複数の符号化サブモードのうちの1つを含む、受信することと、
前記入力音響信号を符号化するために使用される前記符号化サブモードを含む、前記ビットストリームで伝達される前記情報に応じて、前記混合時間領域/周波数領域励振を再構成することと、
前記混合時間領域/周波数領域励振を時間領域に変換することと、
時間領域に変換された前記混合時間領域/周波数領域励振を合成フィルタを通してフィルタリングして前記音響信号の合成バージョンを生成することと
を実行させる非一時的命令を記憶するメモリとを含む音響信号デコーダ。
【国際調査報告】