(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-16
(45)【発行日】2024-12-24
(54)【発明の名称】IVASビットストリームの符号化および復号化
(51)【国際特許分類】
G10L 19/00 20130101AFI20241217BHJP
G10L 19/008 20130101ALI20241217BHJP
【FI】
G10L19/00 330B
G10L19/008 100
G10L19/00 330A
(21)【出願番号】P 2022506569
(86)(22)【出願日】2020-07-30
(86)【国際出願番号】 US2020044342
(87)【国際公開番号】W WO2021022087
(87)【国際公開日】2021-02-04
【審査請求日】2023-07-28
(32)【優先日】2019-08-01
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-10-30
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-06-11
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2020-07-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】507236292
【氏名又は名称】ドルビー ラボラトリーズ ライセンシング コーポレイション
(74)【代理人】
【識別番号】100101683
【氏名又は名称】奥田 誠司
(74)【代理人】
【識別番号】100155000
【氏名又は名称】喜多 修市
(74)【代理人】
【識別番号】100188813
【氏名又は名称】川喜田 徹
(74)【代理人】
【識別番号】100202197
【氏名又は名称】村瀬 成康
(72)【発明者】
【氏名】ティアギ,リシャブ
(72)【発明者】
【氏名】トーレス,フアン フェリクス
【審査官】土井 悠生
(56)【参考文献】
【文献】Dolby Laboratories Inc.,Dolby VRStream audio profile candidate - Description of Bitstream, Decoder, and Renderer plus informative Encoder Description[online],3GPP TSG SA WG4 #99 S4-180835,Internet<URL:https://www.3gpp.org/ftp/tsg_sa/WG4_CODEC/TSGS4_99/Docs/S4-180835.zip>,2018年07月13日
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-99/00
(57)【特許請求の範囲】
【請求項1】
オーディオ信号のビットストリームを生成する
、コンピューターに実装される方法であって、
没入型音声オーディオサービス(IVAS)エンコーダーを使用して、符号化モードインジケーターまたは符号化ツールインジケーターを求めることであって、前記符号化モードインジケーターまたは前記符号化ツールインジケーターは、前記オーディオ信号の符号化モードまたは符号化ツールを示すことと、
前記IVASエンコーダーを使用して、前記符号化モードインジケーターまたは前記符号化ツールインジケーターをIVASビットストリームの共通ヘッダー(CH)セクション内に符号化することと、
前記IVASエンコーダーを使用して、モードヘッダーまたはツールヘッダーを求めることと、
前記IVASエンコーダーを使用して、前記モードヘッダーまたは前記ツールヘッダーを前記IVASビットストリームのツールヘッダー(TH)セクション内に符号化することであって、前記THセクションは前記CHセクションの後に続くことと、
前記IVASエンコーダーを使用して、空間メタデータを含むメタデータペイロードを求めることと、
前記IVASエンコーダーを使用して、前記メタデータペイロードを前記IVASビットストリームのメタデータペイロード(MDP)セクション内に符号化することであって、前記MDPセクションは、前記CHセクションの後に続くことと、
前記IVASエンコーダーを使用して、拡張型音声サービス(EVS)ペイロードを求めることであって、前記EVSペイロードは、前記オーディオ信号の各チャネルまたは各ダウンミックスチャネルのEVS符号化ビットを含むことと、
前記IVASエンコーダーを使用して、前記EVSペイロードを前記IVASビットストリームのEVSペイロード(EP)セクション内に符号化することであって、前記EPセクションは前記CHセクションの後に続くことと、
を含む、方法。
【請求項2】
前記IVASビットストリームを非一時的コンピューター可読媒体上に記憶すること、または、前記IVASビットストリームを下流デバイスにストリーミングすることを更に含み、
前記符号化モードまたは前記符号化ツールインジケーター、前記モードヘッダーまたは前記ツールヘッダー、前記メタデータペイロードおよび前記EVSペイロードは、前記下流デバイスまたは別のデバイスにおける前記オーディオ信号の再構成に使用するために、前記IVASビットストリームの前記CHセクション、前記THセクション、前記MDPセクションおよび前記EPセクションからそれぞれ抽出されて復号化される、請求項1に記載の方法。
【請求項3】
空間再構成(SPAR)ビットレート分布制御テーブルの行インデックスを計算するためのインデックスオフセットを前記IVASビットストリームの前記THセクションに記憶することを含む、請求項
1または2に記載の方法。
【請求項4】
量子化ストラテジーインジケーターと、
ビットストリーム符号化ストラテジーインジケーターと、
係数のセットの量子化および符号化された実部および虚部と、
を、それぞれ前記IVASビットストリームの前記MDPセクションに記憶することを含む、請求項
1から3のいずれか1項に記載の方法。
【請求項5】
第3世代パートナーシッププロジェクト(3GPP)技術仕様(TS)26.445に従って、EVSインスタンスのEVSペイロードを前記ビットストリームの前記EPセクションに記憶することを含む、請求項
1から4のいずれか1項に記載の方法。
【請求項6】
オーディオ信号のビットストリームを復号化する
、コンピューターに実装される方法であって、
没入型音声オーディオサービス(IVAS)デコーダーを使用して、IVASビットストリームの共通ヘッダー(CH)セクション内の符号化モードインジケーターまたは符号化ツールインジケーターを抽出して復号化することであって、前記符号化モードインジケーターまたは前記符号化ツールインジケーターは、前記オーディオ信号の符号化モードまたは符号化ツールを示すことと、
前記IVASデコーダーを使用して、前記IVASビットストリームの前記ツールヘッダー(TH)セクション内のモードヘッダーまたはツールヘッダーを抽出して復号化することであって、前記THセクションは前記CHセクションの後に続くことと、
前記IVASデコーダーを使用して、メタデータペイロードを前記IVASビットストリームのメタデータペイロード(MDP)セクションから抽出して復号化することであって、前記MDPセクションは前記CHセクションの後に続き、前記メタデータペイロード
は空間メタデータを含むことと、
前記IVASデコーダーを使用して、拡張型音声サービス(EVS)ペイロードを前記IVASビットストリームのEVSペイロード(EP)セクションから抽出して復号化することであって、前記EPセクションは前記CHセクションの後に続き、前記EVSペイロードは、前記オーディオ信号の各チャネルまたは各ダウンミックスチャネルのEVS符号化ビットを含むことと、
を含む、方法。
【請求項7】
下流デバイスまたは別のデバイスにおける前記オーディオ信号の再構成に使用するための前記下流デバイスのオーディオデコーダーを、前記符号化モードインジケーターもしくは前記符号化ツールインジケーター、前記モードヘッダーもしくは前記ツールヘッダー、前記EVSペイロード、および前記メタデータペイロードに基づいて制御すること、または、前記符号化モードインジケーターもしくは前記符号化ツールインジケーター、前記モードヘッダーもしくは前記ツールヘッダー、前記EVSペイロード、および前記メタデータペイロードの表現を非一時的コンピューター可読媒体上に記憶することを更に含む、請求項
6に記載の方法。
【請求項8】
空間再構成(SPAR)ビットレート分布制御テーブルの行インデックスを計算するためのインデックスオフセットを前記IVASビットストリームの前記THセクションから読み出すことを含む、請求項6または7に記載の方法。
【請求項9】
量子化ストラテジーインジケーターと、
ビットストリーム符号化ストラテジーインジケーターと、
係数のセットの量子化および符号化された実部および虚部と、
を、それぞれ前記IVASビットストリームの前記MDPセクションから読み出すことを含む、請求項6から8のいずれか1項に記載の方法。
【請求項10】
第3世代パートナーシッププロジェクト(3GPP)技術仕様(TS)26.445に従って、EVSインスタンスのEVSペイロードを前記ビットストリームの前記EPセクションから読み出すことを含む、請求項6から9のいずれか1項に記載の方法。
【請求項11】
前記IVASビットストリームからビットレートを求めることと、
前記IVASビットストリームの空間再構成(SPAR)ツールヘッダー(TH)セクションからインデックスオフセットを読み出すことと、
前記インデックスオフセットを使用して、前記SPARビットレート分布制御テーブルのテーブル行インデックスを求めることと、
前記IVASビットストリームにおけるメタデータペイロード(MDP)セクションから量子化ストラテジービットおよび符号化ストラテジービットを読み出すことと、
前記量子化ストラテジービットおよび前記符号化ストラテジービットに基づいて、前記IVASビットストリームの前記MDPセクション内のSPAR空間メタデータを量子化解除することと、
利用可能な全EVSビット、SPARビットレート分布制御テーブルおよびビットレート分布アルゴリズムを使用して、前記IVASビットストリームにおける各チャネルの拡張型音声サービス(EVS)ビットレートを求めることと、
前記EVSビットレートに基づいて前記IVASビットストリームの前記EPセクションからEVS符号化ビットを読み出すことと、
前記EVSビットを復号化することと、
前記空間メタデータを復号化することと、
前記復号化されたEVSビットおよび前記復号化された空間メタデータを使用して、1次アンビソニックス(FoA)出力を生成することと、
を更に含む、請求項
6から10のいずれか1項に記載の方法。
【請求項12】
前記CHはマルチビットデータ構造体であり、前記マルチビットデータ構造体の1つの値は、空間再構成(SPAR)符号化モードに対応し、前記データ構造体の他の値は、他の符号化モードに対応する、請求項1から
11のいずれか1項に記載の方法。
【請求項13】
前記EPセクションは、効率的なビットパッキングを確保するために前記MDPセクションの後に続き、前記IVASビットストリームの前記MDPセクション内のビット数および前記IVASビットストリームの前記EPセクションのビット数は、IVASビットレートバジェットにおける全ての利用可能なビットの利用を確保するために、前記SPARビットレート分布制御テーブルおよびビットレート分布アルゴリズムに従って変化する、請求項
3または8に記載の方法。
【請求項14】
各EVS符号化チャネルまたは各ダウンミックスチャネルのビットレートは、EVSの利用可能な全ビット、ビットレート分布制御テーブルおよびビットレート分布アルゴリズムによって求められる、請求項1から
13のいずれか1項に記載の方法。
【請求項15】
前記係数のセットは、予測係数、ダイレクト係数、対角実数係数および下三角複素係数を含む、請求項
4または9に記載の方法。
【請求項16】
前記予測係数は、エントロピー符号化に基づく可変ビット長であり、前記ダイレクト係数、前記対角実数係数および下三角複素係数は、ダウンミックス構成およびエントロピー符号化に基づく可変ビット長である、請求項
15に記載の方法。
【請求項17】
前記量子化ストラテジーインジケーターは、量子化ストラテジーを示すマルチビットデータ構造体である、請求項
4または9に記載の方法。
【請求項18】
前記ビットストリーム符号化ストラテジーインジケーターは、空間メタデータの帯域数および非差分エントロピー符号化方式または時間差分エントロピー符号化方式を示すマルチビットデータ構造体である、請求項
4または9に記載の方法。
【請求項19】
前記係数の前記量子化は、メタデータ量子化およびEVSビットレート分布を含むEVSビットレート分布制御ストラテジーに従う、請求項
4または9に記載の方法。
【請求項20】
1つ以上のプロセッサと、
前記1つ以上のプロセッサによって実行されると、請求項1から
19のいずれか1項に記載の方法の動作を前記1つ以上のプロセッサに実行させる命令を記憶する非一時的コンピューター可読媒体と、
を備える、システム。
【請求項21】
1つ以上のプロセッサによって実行されると、請求項1から
19のいずれか1項に記載の方法の動作を前記1つ以上のプロセッサに実行させる命令を記憶する非一時的コンピューター可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願の相互参照]
本出願は、2019年8月1日に出願された米国仮出願第62/881,541号、2019年10月30日に出願された米国仮出願第62/927,894号、2020年6月11日に出願された米国仮出願第63/037,721号、および2020年7月28日に出願された米国仮出願第63/057,666号の優先権を主張する。これらの米国仮出願の全体の開示内容は、本願において参考のため援用する。
【0002】
本開示は、包括的には、オーディオビットストリームの符号化および復号化に関する。
【背景技術】
【0003】
音声およびビデオのエンコーダー/デコーダー(「コーデック」)の規格開発は、近年、没入型音声オーディオサービス(IVAS:immersive voice and audio service)のコーデックの開発に焦点を当てている。IVASは、様々なオーディオサービス能力をサポートすることが期待されている。これらのオーディオサービス能力には、モノラルからステレオへのアップミックス(upmixing:アップミキシング)ならびに完全没入型オーディオ符号化、復号化およびレンダリングが含まれるが、これらに限定されるものではない。IVASは、広範囲のデバイス、エンドポイント、およびネットワークノードによってサポートされることが意図されている。これらの広範囲のデバイス、エンドポイント、およびネットワークには、モバイルフォンおよびスマートフォン、電子タブレット、パーソナルコンピューター、会議電話、会議室、仮想現実(VR:virtual reality)デバイスおよび拡張現実(AR:augmented reality)デバイス、ホームシアターデバイス、ならびに他の適したデバイスが含まれるが、これらに限定されるものではない。これらのデバイス、エンドポイントおよびネットワークノードは、音のキャプチャーおよびレンダリング用の様々な音響インターフェースを有することができる。
【発明の概要】
【0004】
IVASビットストリームを符号化および復号化する実施態様が開示される。
【0005】
いくつかの実施態様において、オーディオ信号のビットストリームを生成する方法は、没入型音声オーディオサービス(IVAS)エンコーダーを使用して、符号化モードインジケーターまたは符号化ツールインジケーターを求めることであって、前記符号化モードインジケーターまたは前記符号化ツールインジケーターは、前記オーディオ信号の符号化モードまたは符号化ツールを示すことと、前記IVASエンコーダーを使用して、前記符号化モードインジケーターまたは前記符号化ツールインジケーターをIVASビットストリームの共通ヘッダー(CH)セクション内に符号化することと、前記IVASエンコーダーを使用して、モードヘッダーまたはツールヘッダーを求めることと、前記IVASエンコーダーを使用して、前記モードヘッダーまたは前記ツールヘッダーを前記IVASビットストリームのツールヘッダー(TH)セクション内に符号化することであって、該THセクションは前記CHセクションの後に続くことと、前記IVASエンコーダーを使用して、空間メタデータを含むメタデータペイロードを求めることと、前記IVASエンコーダーを使用して、前記メタデータペイロードを前記IVASビットストリームのメタデータペイロード(MDP)セクション内に符号化することであって、該MDPセクションは、前記CHセクションの後に続くことと、前記IVASエンコーダーを使用して、拡張型音声サービス(EVS)ペイロードを求めることであって、該EVSペイロードは、前記オーディオ信号の各チャネルまたは各ダウンミックスチャネルのEVS符号化ビットを含むことと、前記IVASエンコーダーを使用して、前記EVSペイロードを前記IVASビットストリームのEVSペイロード(EP)セクション内に符号化することであって、該EPセクションは前記CHセクションの後に続くこととを含む。
【0006】
いくつかの実施態様において、前記IVASビットストリームは非一時的コンピューター可読媒体上に記憶される。他の実施態様において、前記IVASビットストリームは下流デバイスにストリーミングされ、前記符号化モードまたは前記符号化ツールインジケーター、前記モードヘッダーまたは前記ツールヘッダー、前記メタデータペイロードおよび前記EVSペイロードは、前記下流デバイスまたは別のデバイスにおける前記オーディオ信号の再構成に使用するために、前記IVASビットストリームの前記CHセクション、前記THセクション、前記MDPセクションおよび前記EPセクションからそれぞれ抽出されて復号化される。
【0007】
いくつかの実施態様において、オーディオ信号のビットストリームを復号化する方法は、没入型音声オーディオサービス(IVAS)デコーダーを使用して、IVASビットストリームの共通ヘッダー(CH)セクション内の符号化モードインジケーターまたは符号化ツールインジケーターを抽出して復号化することであって、前記符号化モードインジケーターまたは前記符号化ツールインジケーターは、前記オーディオ信号の符号化モードまたは符号化ツールを示すことと、前記IVASデコーダーを使用して、前記IVASビットストリームの前記ツールヘッダー(TH)セクション内のモードヘッダーまたはツールヘッダーを抽出して復号化することであって、該THセクションは前記CHセクションの後に続くことと、前記IVASデコーダーを使用して、メタデータペイロードを前記IVASビットストリームのメタデータペイロード(MDP)セクションから抽出して復号化することであって、該MDPセクションは前記CHセクションの後に続き、前記メタデータペイロードは空間メタデータを含むことと、前記IVASデコーダーを使用して、拡張型音声サービス(EVS)ペイロードを前記IVASビットストリームのEVSペイロード(EP)セクションから抽出して復号化することであって、該EPセクションは前記CHセクションの後に続き、前記EVSペイロードは、前記オーディオ信号の各チャネルまたは各ダウンミックスチャネルのEVS符号化ビットを含むこととを含む。
【0008】
いくつかの実施態様において、下流デバイスまたは別のデバイスにおける前記オーディオ信号の再構成に使用するための該下流デバイスのオーディオデコーダーが、前記符号化モードインジケーターもしくは前記符号化ツールインジケーター、前記モードヘッダーもしくは前記ツールヘッダー、前記EVSペイロード、および前記メタデータペイロードに基づいて制御される。他の実施態様において、前記符号化モードインジケーターもしくは前記符号化ツールインジケーター、前記モードヘッダーもしくは前記ツールヘッダー、前記EVSペイロード、および前記メタデータペイロードの表現(representation)が非一時的コンピューター可読媒体上に記憶する。
【0009】
いくつかの実施態様において、各EVS符号化チャネルまたは各ダウンミックスチャネルのビットレートは、EVSの利用可能な全ビット、SPARビットレート分布制御テーブルおよびビットレート分布アルゴリズムによって求められる。
【0010】
いくつかの実施態様において、前記CHはマルチビットデータ構造体であり、該マルチビットデータ構造体の1つの値は、空間再構成(SPAR)符号化モードに対応し、該データ構造体の他の値は、他の符号化モードに対応する。
【0011】
いくつかの実施態様において、上記方法は、空間再構成(SPAR)ビットレート分布制御テーブルの行インデックスを計算するためのインデックスオフセットをそれぞれ前記IVASビットストリームの前記THセクションに記憶することまたは前記THセクションから読み出すことを更に含む。
【0012】
いくつかの実施態様において、上記方法は、量子化ストラテジーインジケーターと、ビットストリーム符号化ストラテジーインジケーターと、係数のセットの量子化および符号化された実部および虚部とを、それぞれ前記IVASビットストリームの前記MDPセクションに記憶することまたは前記MDPセクションから読み出すことを更に含む。
【0013】
いくつかの実施態様において、前記係数のセットは、予測係数、ダイレクト係数、対角実数係数および下三角複素係数を含む。
【0014】
いくつかの実施態様において、前記予測係数は、エントロピー符号化に基づく可変ビット長であり、前記ダイレクト係数、前記対角実数係数および下三角複素係数は、ダウンミックス構成およびエントロピー符号化に基づく可変ビット長である。
【0015】
いくつかの実施態様において、前記量子化ストラテジーインジケーターは、量子化ストラテジーを示すマルチビットデータ構造体である。
【0016】
いくつかの実施態様において、前記ビットストリーム符号化ストラテジーインジケーターは、空間メタデータの帯域数および非差分(non-differential)エントロピー符号化方式または時間差分(time-differential)エントロピー符号化方式を示すマルチビットデータ構造体である。
【0017】
いくつかの実施態様において、前記係数の前記量子化は、メタデータ量子化およびEVSビットレート分布を含むEVSビットレート分布制御ストラテジーに従う。
【0018】
いくつかの実施態様において、上述の方法は、第3世代パートナーシッププロジェクト(3GPP)技術仕様(TS)26.445に従って、EVSインスタンスのEVSペイロードを、それぞれ前記IVASビットストリームの前記EPセクションに記憶すること、または、前記IVASビットストリームの前記EPセクションから読み出すことを更に含む。
【0019】
いくつかの実施態様において、上記方法は、前記IVASビットストリームからビットレートを求めることと、前記IVASビットストリームの空間再構成(SPAR)ツールヘッダー(TH)セクションからインデックスオフセットを読み出すことと、前記インデックスオフセットを使用して、前記SPARビットレート分布制御テーブルのテーブル行インデックスを求めることと、前記IVASビットストリームにおけるメタデータペイロード(MDP)セクションから量子化ストラテジービットおよび符号化ストラテジービットを読み出すことと、前記量子化ストラテジービットおよび前記符号化ストラテジービットに基づいて、前記IVASビットストリームの前記MDPセクション内のSPAR空間メタデータを量子化解除することと、利用可能な全EVSビット、およびSPARビットレート分布制御テーブルを使用して、前記IVASビットストリームにおける各チャネルの拡張型音声サービス(EVS)ビットレートを求めることと、前記EVSビットレートに基づいて前記IVASビットストリームの前記EPセクションからEVS符号化ビットを読み出すことと、前記EVSビットを復号化することと、前記空間メタデータを復号化することと、前記復号化されたEVSビットおよび前記復号化された空間メタデータを使用して、1次アンビソニックス(FoA)出力を生成することとを更に含む。
【0020】
本明細書に開示される他の実施態様は、システム、装置およびコンピューター可読媒体に関する。開示される実施態様の詳細は、添付図面および以下の説明において明らかにされる。他の特徴、目的および利点は、以下の説明、図面および特許請求の範囲から明らかである。
【0021】
本明細書に開示される特定の実施態様は、次の利点のうちの1つ以上を提供する。開示されるIVASビットストリームフォーマットは、様々なオーディオサービス能力をサポートする効率的でロバストなビットストリームフォーマットである。これらのオーディオサービス能力には、モノラルからステレオへのアップミックスならびに完全没入型オーディオ符号化、復号化およびレンダリングが含まれるが、これらに限定されるものではない。いくつかの実施態様において、IVASビットストリームフォーマットは、ステレオオーディオ信号を分析およびダウンミックス(downmixing:ダウンミキシング)するための複合アドバンスカップリング(CACPL:complex advance coupling)をサポートする。他の実施態様において、IVASビットストリームフォーマットは、1次アンビソニックス(FoA:first order Ambisonics)オーディオ信号を分析およびダウンミックスする空間再構成(SPAR:spatial reconstruction)をサポートする。
【0022】
図面において、デバイス、ユニット、命令ブロック、およびデータ要素を表す要素等の図的要素の特定の配列または順序付けは、説明を容易にするために示されている。しかしながら、図面におけるこれらの図的要素の特定の順序付けまたは配列は、処理に何らかの特定の順序またはシーケンスが必要とされていることも、プロセスの分離が必要とされていることも示唆しているものではないことが、当業者によって理解されるべきである。さらに、図的要素が図面に含まれているということは、そのような要素が全ての実施形態において必要とされることを示唆しているものでもなければ、そのような要素によって表される特徴部をいくつかの実施態様における他の要素に含めることができないことや他の要素と組み合わせることができないことを示唆しているものでもない。
【0023】
さらに、図面において、実線もしくは破線または矢印等の接続要素が、2つ以上の他の図的要素間の接続、関係、または関連付けを示すのに用いられている場合、そのような接続の要素が不在の場合に、接続、関係、または関連付けが存在し得ないことを示唆するものではない。換言すれば、要素間のいくつかの接続、関係、または関連付けは、本開示を分かりにくくしないように図面に示されていない。加えて、図示を容易にするために、要素間の複数の接続、関係、または関連付けを表すのに、単一の接続要素が用いられる。例えば、接続要素が、信号、データ、または命令の通信を表す場合、そのような要素は、必要に応じて、通信を実施するための1つまたは複数の信号パスを表すことが当業者によって理解されるべきである。
【図面の簡単な説明】
【0024】
【
図1】一実施形態によるIVASシステムを示す図である。
【0025】
【
図2】一実施形態による、IVASビットストリームを符号化および復号化するシステムのブロック図である。
【0026】
【
図3】一実施形態による、IVASビットストリームをFoAフォーマットで符号化および復号化するFoAコーダー/デコーダー(「コーデック」)のブロック図である。
【0027】
【
図4A】一実施形態によるIVAS符号化プロセスのフロー図である。
【0028】
【
図4B】一実施形態による、代替のIVASフォーマットを使用するIVAS符号化プロセスのフロー図である。
【0029】
【
図5A】一実施形態によるIVAS復号化プロセスのフロー図である。
【0030】
【
図5B】一実施形態による、代替のIVASフォーマットを使用するIVAS復号化プロセスのフロー図である。
【0031】
【
図6】一実施形態によるIVAS SPAR符号化プロセスのフロー図である。
【0032】
【
図7】一実施形態によるIVAS SPAR復号化プロセスのフロー図である。
【0033】
【
図8】一実施形態による一例示のデバイスアーキテクチャのブロック図である。
【発明を実施するための形態】
【0034】
様々な図面において使用される同じ参照符号は、同様の要素を示す。
【0035】
以下の詳細な説明において、説明される様々な実施形態の十分な理解を提供するために、非常に多くの具体的な詳細が述べられている。説明される様々な実施態様は、これらの具体的な詳細がなくても実施することができることが当業者には明らかである。それ以外の場合には、既知の方法、手順、構成要素、および回路は、実施形態の態様を不必要に不明瞭にしないように、詳細には説明されていない。互いに独立にまたは他の特徴の何らかの組み合わせでそれぞれ使用することができるいくつかの特徴が以下で説明される。
【0036】
命名法
本明細書に使用されるような用語「含む」/「備える」(include)およびその変異形は、「~を含むが、~に限定されるものではない」を意味する非限定的(open-ended)用語として解釈されるべきである。用語「または」/「もしくは」(or)は、文脈上明らかに他の意味を示していない限り、「および/または(and/or)」と解釈されるべきである。用語「~に基づいて」(based on)は、「~に少なくとも部分的に基づいて」と解釈されるべきである。用語「1つの例示の実施態様」および「一例示の実施態様」は、「少なくとも1つの例示の実施態様」と解釈されるべきである。用語「別の実施態様」は、「少なくとも1つの別の実施態様」と解釈されるべきである。用語「求められる」(determined)、「求める」/「決定する」(determines, determining)は、「取得する」、「受信する」、「計算する」、「算出する」、「推定する」、「予測する」または「導出する」と解釈されるべきである。加えて、以下の説明および特許請求の範囲において、別段の定義がない限り、本明細書に使用される全ての技術用語および科学用語は、本開示が属する技術分野の当業者によって一般に理解されているものと同じ意味を有する。
【0037】
IVASシステムの概略
図1は、1つ以上の実施態様によるIVASシステム100を示している。いくつかの実施態様において、様々なデバイスが、例えば、PSTN/他のPLMN104によって示される公衆交換電話ネットワーク(PSTN:public switched telephone network)デバイスまたは公衆陸上移動ネットワーク(PLMN:public land mobile network)デバイスからオーディオ信号を受信するように構成されるコールサーバー102を通じて通信する。IVASシステム100は、オーディオをモノラルのみでレンダリングおよびキャプチャーするようなレガシーデバイス106をサポートする。このレガシーデバイスは、拡張型音声サービス(EVS:enhanced voice service)、マルチレート広帯域(AMR-WB:multi-rate wideband)および適応マルチレート狭帯域(AMR-NB:adaptive multi-rate narrowband)をサポートするデバイスを含むが、これに限定されるものではない。IVASシステム100は、ステレオオーディオ信号をキャプチャーおよびレンダリングするユーザー機器(UE:user equipment)108、114、またはモノラル信号をキャプチャーし、マルチチャネル信号にバイノーラルでレンダリングするUE110もサポートする。IVASシステム100は、ビデオ会議室システム116、118によってそれぞれキャプチャーおよびレンダリングされる没入信号およびステレオ信号もサポートする。IVASシステム100は、ホームシアターシステム用のステレオオーディオ信号のステレオキャプチャーおよび没入型レンダリング、ならびに、仮想現実(VR)ギア122および没入型コンテンツインジェスト(content ingest)124用のオーディオ信号のモノラルキャプチャーおよび没入型レンダリングもサポートする。
【0038】
例示のIVAS符号化/復号化システム
図2は、1つ以上の実施態様による、IVASビットストリームを符号化および復号化するシステム200のブロック図である。符号化を行うために、IVASエンコーダーが、オーディオデータ201を受信する空間分析ダウンミックスユニット202を含む。このオーディオデータは、モノラル信号、ステレオ信号、バイノーラル信号、空間オーディオ信号(例えば、マルチチャネル空間オーディオオブジェクト)、FoA、高次アンビソニックス(HoA:higher order Ambisonics)および他の任意のオーディオデータを含むが、これらに限定されるものではない。いくつかの実施態様において、空間分析ダウンミックスユニット202は、ステレオオーディオ信号を分析/ダウンミックスするCACPL、および/または、FoAオーディオ信号を分析/ダウンミックスするSPARを実装する。他の実施態様において、空間分析ダウンミックスユニット202は、他のフォーマットを実装する。
【0039】
空間分析ダウンミックスユニット202の出力は、空間メタデータ、および1-4チャネルのオーディオを含む。空間メタデータは、空間データを量子化およびエントロピー符号化する量子化エントロピー符号化ユニット203に入力される。いくつかの実施態様において、量子化は、精細な量子化ストラテジー、中程度の量子化ストラテジー、粗い量子化ストラテジーおよび極めて粗い量子化ストラテジーを含むことができ、エントロピー符号化は、ハフマン符号化または算術符号化を含むことができる。拡張型音声サービス(EVS)符号化ユニット206は、1-4チャネルのオーディオを1つ以上のEVSビットストリームに符号化する。
【0040】
いくつかの実施態様において、EVS符号化ユニット206は、3GPP TS26.445に準拠し、広範囲の機能、例えば狭帯域(EVS-NB)音声サービスおよび広帯域(EVS-WB)音声サービスの質の向上および符号化効率、超広帯域(EVS-SWB)音声を使用した質の向上、会話アプリケーションにおけるミックスされたコンテンツおよび音楽の質の向上、パケット損失および遅延ジッターに対するロバスト性、ならびにAMR-WBコーデックへの後方互換性等を提供する。いくつかの実施態様において、EVS符号化ユニット206は、モード/ビットレート制御部207に基づいて指定されたビットレートで音声信号を符号化する音声コーダーおよびオーディオ信号を符号化する知覚コーダーのいずれかを選択する、前処理モード選択ユニットを含む。いくつかの実施態様において、音声エンコーダーは、異なる音声クラスごとに特殊化されたLPベースのモードを用いて拡張された代数符号励振線形予測(ACELP:algebraic code-excited linear prediction)の、改良された変形形態である。いくつかの実施態様において、オーディオエンコーダーは、低遅延/低ビットレートにおいて効率が高められた変形離散コサイン変換(MDCT:modified discrete cosine transform)エンコーダーであり、音声エンコーダーとオーディオエンコーダーとの間のシームレスで信頼性のある切り替えを行うように設計される。
【0041】
いくつかの実施態様において、IVASデコーダーは、空間メタデータを回復するように構成される量子化エントロピー復号化ユニット204と、1-4チャネルオーディオ信号を回復するように構成されるEVSデコーダー(単数または複数)とを含む。回復された空間メタデータおよびオーディオ信号は、空間合成/レンダリングユニット209に入力され、この空間合成/レンダリングユニットは、様々なオーディオシステム210上での再生のために空間メタデータを使用してオーディオ信号を合成/レンダリングする。
【0042】
例示のIVAS/SPARコーデック
図3は、いくつかの実施態様による、FoAをSPARフォーマットで符号化および復号化するFoAコーデック300のブロック図である。FoAコーデック300は、SPAR FoAエンコーダー301、EVSエンコーダー305、SPAR FoAデコーダー306およびEVSデコーダー307を含む。FoAコーデック300は、デコーダー306、307において入力信号を再生成するのに使用されるダウンミックスチャネルおよびパラメーターのセットにFoA入力信号を変換する。ダウンミックス信号は、1チャネルから4チャネルの間で変化することができ、パラメーターは、予測係数(PR)、相互予測係数(C)、および無相関係数(decorrelation coefficient)(P)を含む。SPARは、以下で更に詳細に説明されるように、PRパラメーター、CパラメーターおよびPパラメーターを使用して、オーディオ信号をダウンミックスしたものからオーディオ信号を再構成するのに使用されるプロセスであることに留意されたい。
【0043】
図3に示す例示の実施態様は、パッシブWチャネルを前提とし、Wチャネルが単一の予測チャネルY’とともに変更されずにデコーダー306に送信される公称2チャネルダウンミックスを描写していることに留意されたい。他の実施態様において、Wは、アクティブチャネルとすることができる。アクティブWチャネルは、以下のように、Xチャネル、Yチャネル、ZチャネルのWチャネルへの或るミックス(mixing:ミキシング、合成)を可能にする。
【数1】
ここで、fは、Xチャネル、Yチャネル、ZチャネルのうちのいくつかをWチャネルにミックスすることを可能にする定数(例えば0.5)である。pr
y、pr
xおよびpr
zは、予測(PR)係数である。パッシブWでは、f=0であり、そのため、Xチャネル、Yチャネル、ZチャネルのWチャネルへのミックスは行われない。
【0044】
以下で更に詳細に説明するように、C係数は、XチャネルおよびZチャネルのうちのいくつかをY’から再構成することを可能にし、残りのチャネルは、以下で更に詳細に説明するように、Wチャネルを無相関化したものによって再構成される。
【0045】
いくつかの実施態様において、SPAR FoAエンコーダー301は、パッシブ/アクティブ予測器ユニット302、リミックスユニット303および抽出/ダウンミックス選択ユニット304を含む。パッシブ/アクティブ予測器は、4チャネルBフォーマット(W、Y、Z、X)のFoAチャネルを受信し、予測チャネル(WまたはW’、Y’、Z’、X’)を計算する。Wチャネルは、等しい利得および位相において全ての方向から来る球内の全ての音を含む無指向性ポーラーパターンであり、Xは、前方を指し示す8字型(figure-8)双方向ポーラーパターンであり、Yは、左を指し示す8字型双方向ポーラーパターンであり、Zは、上方を指し示す8字型双方向ポーラーパターンであることに留意されたい。
【0046】
抽出/ダウンミックス選択ユニット304は、以下でより詳細に説明するように、IVASビットストリームのメタデータペイロードセクションからSPAR FoAメタデータを抽出する。パッシブ/アクティブ予測器ユニット302およびリミックスユニット303は、SPAR FoAメタデータを使用して、リミックスされたFoAチャネル(WまたはW’、A’、B’、C’)を生成し、これらのFoAチャネルは、EVSエンコーダー305に入力されてEVSビットストリームに符号化され、このEVSビットストリームは、デコーダー306に送信されるIVASビットストリーム内にカプセル化される。この例において、アンビソニック(Ambisonic)BフォーマットチャネルがAmbiX形式で配置されることに留意されたい。ただし、Furse-Malham(FuMa)形式(W、X、Y、Z)等の他の形式も同様に使用することができる。
【0047】
SPAR FoAデコーダー306を参照すると、EVSビットストリームは、EVSデコーダー307によって復号化され、その結果、N(例えばN=4)個のダウンミックスチャネルが得られる。いくつかの実施態様において、SPAR FoAデコーダー306は、SPARエンコーダー301によって実行される動作の逆を実行する。例えば、リミックスされたFoAチャネル(WまたはW’、A’、B’、C’)は、SPAR FoA空間メタデータを使用してN個のダウンミックスチャネルから回復される。リミックスされたSPAR FoAチャネルは、逆ミキサー311に入力され、予測されたSPAR FoAチャネル(WまたはW’、Y’、Z’、X’)が回復される。予測されたSPAR FoAチャネルは、次に、逆予測器312に入力され、元のミックスされていないSPAR FoAチャネル(W、Y、Z、X)が回復される。この2チャネルの例において、デコリレーター(decorrelator:無相関器)ブロック309a(dec1)...309n(decD)が、時間領域デコリレーターまたは周波数領域デコリレーターを使用してWチャネルの無相関化されたものを生成するのに使用されることに留意されたい。無相関化されたチャネルは、SPAR FoAメタデータと組み合わせて使用され、XチャネルおよびZチャネルが完全にまたはパラメーター的に再構成される。
【0048】
いくつかの実施態様において、ダウンミックスチャネルの数に応じて、FoA入力のうちの1つ(Wチャネル)がSPAR FoAデコーダー306に完全な状態のままで送信され、他のチャネル(Y、Z、およびX)のうちの1つ~3つが、SPAR FoAデコーダー306に残差としてまたは完全にパラメーター的に送信される。ダウンミックスチャネルの数Nを問わず同じままであるPR係数は、残差のダウンミックスチャネルにおける予測可能エネルギーを最小にするのに使用される。C係数は、完全にパラメーター化されたチャネルを残差から再生成することを更に助けるのに使用される。したがって、C係数は、予測するための残差チャネルまたはパラメーター化チャネルが存在しない1つおよび4つのチャネルダウンミックスのケースでは、必要とされない。P係数は、PR係数およびC係数によって考慮されていない残りのエネルギーを埋めるのに使用される。P係数の数は、各帯域におけるダウンミックスチャネルの数Nに依存する。いくつかの実施態様において、SPAR PR係数(パッシブWのみ)は、以下のように算出される。
【0049】
ステップ1。式[1]を使用してメインW信号から全てのサイド信号(Y、Z、X)を予測する。
【数2】
[1]
ここで、一例として、予測されるチャネルY’の予測パラメーターは、式[2]を使用して算出される。
【数3】
[2]
ここで、
は、信号AおよびBに対応する入力された共分散行列の要素である。同様に、Z’残差チャネルおよびX’残差チャネルは、対応する予測パラメーターpr
zおよびpr
xを有する。PRは、予測係数のベクトル
である。
【0050】
ステップ2。W信号と予測された(Y’、Z’、X’)信号(この順で最も音響的に関係のある~最も音響的に関係のない)とをリミックスする。ここで、「リミックス」は、或る方法論に基づく並べ換え信号または組み換え信号を意味する。
【数4】
[3]
【0051】
リミックスの1つの実施態様は、左右からのオーディオキューが前後よりも音響的に関係があり、前後のキューが上下のキューよりも音響的に関係があると仮定した場合における入力信号のW、Y’、X’、Z’への並べ換えである。
【0052】
ステップ3。式[4]および[5]に示すように、4チャネル事後予測およびリミックスの共分散を算出し、ダウンミックスする。
【数5】
[4]
【数6】
[5]
ここで、dは、Wを越える余分のダウンミックスチャネル(すなわち2番目のチャネルからNdmx番目までのチャネル)を表し、uは完全に再生成する必要があるチャネル(すなわち(Ndmx+1)番目のチャネルから4番目までのチャネル)を表す。
【0053】
1-4チャネルとのWABCダウンミックスの例として、dおよびuは、表Iに示す以下のチャネルを表す。
【表1】
【0054】
SPAR FoAメタデータの算出の主に対象となっているものは、R
dd量、R
ud量およびR
uu量である。R
dd量、R
ud量およびR
uu量から、システムは、完全パラメトリックチャネル(fully parametric channel)の残りの部分を、デコーダーに送信される残差チャネルから相互予測することが可能であるか否かを判断する。いくつかの実施態様において、必要とされる余分のC係数は、以下の式によって与えられる。
【数7】
[6]
【0055】
したがって、Cパラメーターは、3チャネルダウンミックスの場合には形状(1×2)を有し、2チャネルダウンミックス場合には形状(2×1)を有する。
【0056】
ステップ4。デコリレーターによって再構成しなければならないパラメーター化チャネルにおける残りのエネルギーを算出する。アップミックスチャネルにおける残差エネルギーRes
uuは、実際のエネルギーR
uu(事後予測)と再生成された相互予測エネルギーReg
uuとの間の差である。
【数8】
[7]
【数9】
[8]
【数10】
[9]
【0057】
Pも共分散行列であり、したがってエルミート対称であり、そのため、上三角または下三角からのパラメーターのみをデコーダー306に送信する必要がある。対角エントリーは実数である一方、非対角要素は複素数であってもよい。
【0058】
IVASビットストリームの例示の符号化/復号化
図2および
図3を参照して説明したように、IVASビットストリーム(単数または複数)は、IVASコーデックによって符号化および復号化される。いくつかの実施態様において、IVASエンコーダーは、符号化ツールインジケーターおよびサンプリングレートインジケーターを求め、IVASビットストリームの共通ヘッダー(CH:common header)セクション内に符号化する。いくつかの実施態様において、符号化ツールインジケーターは、符号化ツールに対応する値を備え、サンプリングレートインジケーターは、サンプリングレートを示す値を備える。IVASエンコーダーは、EVSペイロードを求め、ビットストリームのEVSペイロード(EP:EVS payload)セクション内に符号化する。EPセクションはCHセクションの後に続く。IVASエンコーダーは、メタデータペイロードを求め、ビットストリームのメタデータペイロード(MDP:metadata payload)セクション内に符号化する。いくつかの実施態様において、MDPセクションはCHセクションの後に続く。他の実施態様において、MDPセクションはビットストリームのEPセクションの後に続くか、または、EPセクションがビットストリームのMDPセクションの後に続く。いくつかの実施態様において、IVASエンコーダーは、ビットストリームを非一時的コンピューター可読媒体上に記憶するかまたはビットストリームを下流デバイスにストリーミングする。他の実施態様において、IVASエンコーダーは、
図8に示すデバイスアーキテクチャを有する。
【0059】
いくつかの実施態様において、IVASデコーダーは、IVASビットストリームを受信し、IVASエンコーダーによってIVASフォーマットで符号化されたオーディオデータを抽出して復号化する。IVASデコーダーは、IVASビットストリームのCHセクション内の符号化ツールインジケーターおよびサンプリングレートインジケーターを抽出して復号化する。IVASデコーダーは、ビットストリームのEPセクション内のEVSペイロードを抽出して復号化する。EPセクションはCHセクションの後に続く。IVASデコーダーは、ビットストリームのMDPセクション内のメタデータペイロードを抽出して復号化する。MDPセクションはCHセクションの後に続く。他の実施態様において、MDPセクションはビットストリームのEPセクションの後に続くか、または、EPセクションがビットストリームのMDPセクションの後に続く。いくつかの実施態様において、IVASシステムは、符号化ツール、サンプリングレート、EVSペイロード、およびメタデータペイロードに基づいてオーディオデコーダーを制御する。他の実施態様において、IVASシステムは、符号化ツール、サンプリングレート、EVSペイロード、およびメタデータペイロードの表現を非一時的コンピューター可読媒体上に記憶する。いくつかの実施態様において、IVASデコーダーは、
図8に示すデバイスアーキテクチャを有する。
【0060】
いくつかの実施態様において、IVAS符号化ツールインジケーターは、マルチビットデータ構造体である。他の実施態様において、IVAS符号化ツールインジケーターは、3ビットデータ構造体であり、3ビットデータ構造体の第1の値はマルチモノラル符号化ツールに対応し、3ビットデータ構造体の第2の値はCACPL符号化ツールに対応し、3ビットデータ構造体の第3の値は別の符号化ツールに対応する。他の実施態様において、IVAS符号化ツールインジケーターは、1つ~4つのIVAS符号化ツールを示す2ビットデータ構造体または1つもしくは2つのIVAS符号化ツールを示す1ビットデータ構造体である。他の実施態様において、IVAS符号化ツールインジケーターは、種々のIVAS符号化ツールを示すために3ビット以上を含む。
【0061】
いくつかの実施態様において、入力サンプリングレートインジケーターは、種々の入力サンプリングレートを示すマルチビットデータ構造体である。いくつかの実施態様において、入力サンプリングレートインジケーターは、2ビットデータ構造体であり、2ビットデータ構造体の第1の値は8kHzサンプリングレートを示し、2ビットデータ構造体の第2の値は16kHzサンプリングレートを示し、2ビットデータ構造体の第3の値は32kHzサンプリングレートを示し、2ビットデータ構造体の第4の値は48kHzサンプリングレートを示す。他の実施態様において、入力サンプリングレートインジケーターは、1つまたは2つのサンプリングレートを示す1ビットデータ構造体である。他の実施態様において、入力サンプリングレートインジケーターは、種々のサンプリングレートを示す3ビット以上を含む。
【0062】
いくつかの実施態様において、システムは、第3世代パートナーシッププロジェクト(3GPP:3rd generation partnership project)技術仕様(TS:technical specification)26.445にこの順序で記載されているように、EVSチャネルの数すなわちEVSチャネル数インジケーター;ビットレート(BR:bitrate)抽出モードインジケーター;EVS BRデータ;および全てのチャネルのEVSペイロードをビットストリームのEPセクションに格納するかまたはビットストリームのEPセクションから読み出す。
【0063】
他の実施態様において、システムは、EVSチャネル数インジケーターをビットストリームのEPセクションに格納するかまたはビットストリームのEPセクションから読み出す。
【0064】
他の実施態様において、システムは、ビットレート(BR)抽出モードインジケーターをビットストリームのEPセクションに格納するかまたはビットストリームのEPセクションから読み出す。
【0065】
他の実施態様において、システムは、EVS BRデータをビットストリームのEPセクションに格納するかまたはビットストリームのEPセクションから読み出す。
【0066】
他の実施態様において、システムは、第3世代パートナーシッププロジェクト(3GPP)技術仕様(TS)26.445にこの順序で記載されているように、全てのチャネルのEVSペイロードをビットストリームのEPセクションに格納するかまたはビットストリームのEPセクションから読み出す。
【0067】
いくつかの実施態様において、IVASシステムは、符号化技法インジケーター;帯域数インジケーター;フィルターバンクの遅延構成を示すインジケーター;量子化ストラテジーのインジケーター;エントロピーコーダーインジケーター;確率モデルタイプインジケーター;係数実部;係数虚部;および1つ以上の係数をデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0068】
他の実施態様において、IVASシステムは、符号化技法インジケーターをデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0069】
他の実施態様において、IVASシステムは、帯域数インジケーターをデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0070】
他の実施態様において、IVASシステムは、フィルターバンクの遅延構成を示すインジケーターをデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0071】
他の実施態様において、IVASシステムは、量子化ストラテジーのインジケーターをデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0072】
他の実施態様において、IVASシステムは、エントロピーコーダーインジケーターをデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0073】
他の実施態様において、IVASシステムは、確率モデルタイプインジケーターをデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0074】
他の実施態様において、IVASシステムは、係数実部をデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。他の実施態様において、IVASシステムは、係数虚部をデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0075】
他の実施態様において、IVASシステムは、1つ以上の係数をデータストリームのMDPセクションに格納するかまたはデータストリームのMDPセクションから読み出す。
【0076】
IVASビットストリームフォーマットのいくつかの例を以下に示す。
【0077】
例示のIVASビットストリームフォーマット-3細分フォーマット
いくつかの実施態様において、IVASビットストリームフォーマットは、以下のように3つの細分を含む。
【表2】
【0078】
いくつかの実施態様において、各細分における各フィールド内のパラメーターおよびそれらのそれぞれのビット割り当てが以下に示される。
【表3】
【表4】
【表5】
【0079】
上述したIVASビットストリームフォーマットの実施形態の利点は、この実施形態が、様々なオーディオサービス能力をサポートするデータを効率的かつコンパクトに符号化することである。これらのオーディオサービス能力は、モノラルからステレオへのアップミックスならびに完全没入型オーディオ符号化、復号化およびレンダリングを含むが、これらに限定されるものではない。この実施形態は、広範囲のデバイス、エンドポイント、およびネットワークノードによってもサポートされる。これらの広範囲のデバイス等は、モバイルフォンおよびスマートフォン、電子タブレット、パーソナルコンピューター、会議電話、会議室、仮想現実(VR)デバイスおよび拡張現実(AR)デバイス、ホームシアターデバイス、ならびに他の適したデバイスを含むが、これらに限定されるものではなく、これらのそれぞれは、音のキャプチャーおよびレンダリング用の様々な音響インターフェースを有することができる。IVASビットストリームフォーマットは、IVAS規格および技術とともに容易に発展することができるように拡張可能である。
【0080】
例示のIVASビットストリームフォーマット-4細分フォーマット
更なる実施形態の以下の説明は、この更なる実施形態と前述した実施形態との間の相違に焦点を当てている。したがって、双方の実施形態に共通の特徴は、以下の説明から省略される場合があり、省略された場合には、前述した実施形態の特徴がこの更なる実施形態において実施されるかまたは少なくとも実施することができる(ただし以下の説明がそうではないと要請しない限りは)と仮定されるべきである。加えて、或る特徴が、以下に開示される実施態様から取り出されて請求項に追加されるとき、その特徴は、その実施態様の他の特徴に関係したり密接に関連しない場合もある。
【0081】
他の実施態様において、IVASビットストリームは、以下のように4つの細分を含む。
【表6】
【0082】
いくつかの実施態様において、IVASエンコーダーは、符号化ツールインジケーターを求め、IVASビットストリームの共通ヘッダー(CH)セクション内に符号化する。符号化ツールインジケーターは、符号化ツールに対応する値を備える。IVASエンコーダーは、IVASビットレート分布制御テーブルへの行インデックスを求め、IVASビットストリームの共通空間符号化ツールヘッダー(CTH:common spatial coding tool header)セクション内に符号化する。CTHセクションはCHセクションの後に続く。IVASエンコーダーは、EVSペイロードを求め、IVASビットストリームのEVSペイロード(EP)セクション内に符号化する。EPセクションはCHセクションの後に続く。IVASエンコーダーは、メタデータペイロードを求め、IVASビットストリームのメタデータペイロード(MDP)セクション内に符号化する。MDPセクションはCHセクションの後に続く。
【0083】
いくつかの実施態様において、EPセクションは、1つ以上のパラメーターに応じてMDPセクションの前または後に位置する。いくつかの実施態様において、3GPP TS26.445に記載されているように、1つ以上のパラメーターは、公称ビットレートモードとのマルチチャネル入力のモノラルダウンミックスの後方互換モードを含む。
【0084】
いくつかの実施態様において、IVASシステムは、IVASビットストリームを非一時的コンピューター可読媒体上に記憶する。他の実施態様において、IVASシステムは、ビットストリームを下流デバイスにストリーミングする。いくつかの実施態様において、IVASエンコーダーは、
図8に示すデバイスアーキテクチャを有する。
【0085】
いくつかの実施態様において、IVASデコーダーは、IVASビットストリームを受信し、IVASエンコーダーによってIVASフォーマットで符号化されたオーディオデータを抽出して復号化する。IVASデコーダーは、IVASビットストリームのCHセクション内の符号化ツールインジケーターを抽出して復号化する。IVASデコーダーは、IVASビットレート分布制御テーブルへのインデックスを抽出して復号化する。IVASデコーダーは、IVASビットストリームのEPセクション内のEVSペイロードを抽出して復号化する。EPセクションはCHセクションの後に続く。IVASデコーダーは、IVASビットストリームのMDPセクション内のメタデータペイロードを抽出して復号化する。MDPセクションはCHセクションの後に続く。
【0086】
いくつかの実施態様において、EPセクションは、1つ以上のパラメーターに応じて、MDPセクションの前または後に位置する。いくつかの実施態様において、3GPP TS26.445に記載されているように、1つ以上のパラメーターは、公称ビットレートモードとのマルチチャネル入力のモノラルダウンミックスの後方互換モードを含む。
【0087】
いくつかの実施態様において、IVASシステムは、符号化ツール、IVASビットレート分布制御テーブルへのインデックス、EVSペイロード、およびメタデータペイロードに基づいてオーディオデコーダーを制御する。他の実施態様において、IVASシステムは、符号化ツール、IVASビットレート分布制御テーブルへのインデックス、EVSペイロード、およびメタデータペイロードの表現を非一時的コンピューター可読媒体上に記憶する。いくつかの実施態様において、IVASデコーダーは、
図8に示すデバイスアーキテクチャを有する。
【表7】
【表8】
【0088】
メタデータペイロード(MDP):
IVASビットレート分布制御テーブルの利点は、このテーブルが、空間符号化モードについての情報をMDPセクションに含める必要がないように、空間符号化モードについての情報を記録するということである。
【表9】
【0089】
EVSペイロード(EP):
ペイロードのこのセクションは、1つ以上のオーディオダウンミックスチャネルのEVS符号化ビットを含む。いくつかの実施態様において、このセクションにおける総ビット数は、
によって与えることができる。ここで、N(例えば、N=4)は、符号化するのに必要とされるオーディオダウンミックスチャネルの数であり、EVS
BR(i)は、i番目のオーディオダウンミックスチャネルの算出されたEVSビットレートであり、stride
secsは、秒を単位とする入力ストライド長である。
【0090】
いくつかの実施態様において、IVASビットレート分布制御テーブル内の各テーブルエントリーは、EVS用に割り当てられた全ビットから各EVSインスタンスのビットレートを抽出するのに十分な情報を有する。この構造体は、各EVSインスタンスのビットを抽出するために、EVSペイロード内に追加のヘッダー情報が必要とされないという利点を提供する。
【表10】
【0091】
いくつかの実施態様において、IVASビットレート分布制御テーブルにおけるパラメーターは以下の値を有する。
【表11】
【0092】
例示のIVASビットレート分布制御テーブルは次のとおりである。
【表12】
【0093】
IVASビットストリームの例示の復号化
一実施形態において、IVASビットストリームを復号化するステップは以下のとおりである。
【0094】
ステップ1:ビットストリームの長さおよびstridesecsに基づいてIVAS動作ビットレートを計算する。
【0095】
ステップ2:空間符号化ツールを示す固定長のCHセクションを読み出す。
【0096】
ステップ3:IVAS動作ビットレートに基づいて、IVASビットレート分布制御テーブルにおけるIVAS動作ビットレート(ステップ1において算出される)のエントリーの数を調べることによってCTHフィールドの長さを求める。
【0097】
ステップ3:CTHフィールドの長さが判明すると、CTHフィールド内のインデックスオフセットを読み出す。
【0098】
ステップ5:インデックスオフセットおよびIVAS動作ビットレートを使用して実際のIVASビットレート分布制御テーブルインデックスを求める。
【0099】
ステップ6:EVSビットレート分布およびモノラルダウンミックス後方互換性についての全ての情報をインデックス指定されたテーブルエントリーから読み出す。
【0100】
ステップ7:モノラルダウンミックス後方互換モードがONである場合には、まず残りのIVASビットをEVSデコーダーに渡し、各EVSインスタンスのビット長をそのEVSビットレート分布に基づいて算出し、各EVSインスタンスのEVSビットを読み出し、対応するEVSデコーダーを用いてEVSビットを復号化し、MDPセクション内の空間メタデータを復号化する。
【0101】
ステップ8:モノラルダウンミックス後方互換モードがOFFである場合には、MDPセクション内の空間メタデータを復号化し、各EVSインスタンスのビット長をそのEVSビットレート分布に基づいて算出し、IVASビットストリームのEPセクションから各EVSインスタンスのEVSビットを読み出して復号化する。
【0102】
ステップ9:復号化されたEVS出力および空間メタデータを使用して、入力オーディオフォーマット、例えばステレオ(CACPL)またはFoA(SPAR)等を構成する。
【0103】
上述したIVASビットストリームフォーマットの実施形態の利点は、この実施形態が、様々なオーディオサービス能力をサポートするデータを効率的かつコンパクトに符号化することである。これらのオーディオサービス能力は、モノラルからステレオへのアップミックスならびに完全没入型オーディオ符号化、復号化およびレンダリングを含むが、これらに限定されるものではない。この実施形態は、広範囲のデバイス、エンドポイント、およびネットワークノードによってもサポートされる。これらの広範囲のデバイス等は、モバイルフォンおよびスマートフォン、電子タブレット、パーソナルコンピューター、会議電話、会議室、仮想現実(VR)デバイスおよび拡張現実(AR)デバイス、ホームシアターデバイス、ならびに他の適したデバイスを含むが、これらに限定されるものではなく、これらのそれぞれは、音のキャプチャーおよびレンダリング用の様々な音響インターフェースを有することができる。IVASビットストリームフォーマットは、IVAS規格および技術とともに容易に発展することができるように拡張可能である。
【0104】
例示のIVAS SPAR符号化/復号化
更なる実施形態の以下の説明は、この更なる実施形態と前述した実施形態との間の相違に焦点を当てている。したがって、双方の実施形態に共通の特徴は、以下の説明から省略される場合があり、省略された場合には、前述した実施形態の特徴がこの更なる実施形態において実施されるかまたは少なくとも実施することができる(ただし以下の説明がそうではないと要請しない限りは)と仮定されるべきである。加えて、或る特徴が、以下に開示される実施態様から取り出されて請求項に追加されるとき、その特徴は、その実施態様の他の特徴に関係したり密接に関連しない場合もある。
【0105】
いくつかの実施態様において、IVAS SPARエンコーダーは、符号化モード/ツールインジケーターを求め、IVASビットストリームの共通ヘッダー(CH)セクション内に符号化する。符号化モード/ツールインジケーターは、符号化モード/ツールに対応する値を有する。IVASビットストリームは、モードヘッダー/ツールヘッダーを求め、IVASビットストリームのツールヘッダー(TH)セクション内に符号化する。ここで、THセクションはCHセクションの後に続く。IVAS SPARエンコーダーは、メタデータペイロードを求め、IVASビットストリームのメタデータペイロード(MDP)セクション内に符号化する。ここで、MDPセクションはCHセクションの後に続く。IVAS SPARエンコーダーは、拡張型音声サービス(EVS)ペイロードを求め、IVASビットストリームのEVSペイロード(EP)セクション内に符号化する。ここで、EPセクションはCHセクションの後に続く。いくつかの実施態様において、IVASシステムは、ビットストリームを非一時的コンピューター可読媒体上に記憶する。他の実施態様において、IVASシステムは、ビットストリームを下流デバイスにストリーミングする。いくつかの実施態様において、IVAS SPARエンコーダーは、
図8を参照して説明するデバイスアーキテクチャを有する。
【0106】
いくつかの実施態様において、EPセクションはMDPセクションの後に続く。EPセクションをIVASビットストリームのMDPセクションの後に続かせることによって、効率的なビットパッキングが確保され、MDPビットおよびEPビットの数が(ビットレート分布アルゴリズムに従って)変化することを可能にすることによって、IVASビットレートバジェットにおける全ての利用可能なビットの利用が確保されることに留意されたい。
【0107】
いくつかの実施態様において、IVAS SPARデコーダーは、IVAS SPARフォーマットで符号化されたIVASビットストリームを抽出して復号化する。IVAS SPARデコーダーは、ビットストリームのCHセクション内の符号化モード/ツールインジケーターを抽出して復号化する。符号化モード/ツールインジケーターは、符号化モード/ツールに対応する値を有する。IVAS SPARデコーダーは、ビットストリームのツールヘッダー(TH)セクション内のモードヘッダー/ツールヘッダーを抽出して復号化する。THセクションはCHセクションの後に続く。IVAS SPARデコーダーは、ビットストリームのMDPセクション内のメタデータペイロードを抽出して復号化する。MDPセクションはCHセクションの後に続く。IVAS SPARデコーダーは、ビットストリームのEPセクション内のEVSペイロードを復号化する。EPセクションはCHセクションの後に続く。
【0108】
いくつかの実施態様において、IVASシステムは、符号化モード、ツールヘッダー、EVSペイロード、およびメタデータペイロードに基づいてオーディオデコーダーを制御する。他の実施態様において、IVASシステムは、符号化モード、ツールヘッダー、EVSペイロード、およびメタデータペイロードの表現を非一時的コンピューター可読媒体上に記憶する。いくつかの実施態様において、IVAS SPARデコーダーは、
図8を参照して説明するデバイスアーキテクチャを有する。
【0109】
いくつかの実施態様において、CHは3ビットデータ構造体を含み、3ビットデータ構造体の値のうちの1つはSPAR符号化モードに対応し、値の残りは他の符号化モードに対応する。3ビットデータ構造体は、符号化モードを8つまで示すことができるコンパクトな符号を可能にするので有利である。他の実施態様において、CHは3ビットよりも少ないビットを含む。他の実施態様において、CHは3ビットよりも多くのビットを含む。
【0110】
いくつかの実施態様において、IVASシステムは、SPARビットレート分布制御テーブルにおける行を指し示す行インデックスをIVASビットストリームのTHセクションに格納するかまたはIVASビットストリームのTHセクションから読み出す。例えば、行インデックスは、IVAS動作ビットレートに対応する行の数に基づいて、次のように、すなわちx=ceil(log2(IVASビットレートに対応する行の数))として計算することができる。したがって、THセクションの長さは可変である。
【0111】
いくつかの実施態様において、システムは、量子化ストラテジーインジケーター;符号化ストラテジーインジケーター;ならびに1つ以上の係数の量子化および符号化された実部および虚部をIVASビットストリームのMDPセクションに格納するかまたはIVASビットストリームのMDPセクションから読み出す。
【0112】
他の実施態様において、システムは、量子化ストラテジーインジケーターをIVASビットストリームのMDPセクションに格納するかまたはIVASビットストリームのMDPセクションから読み出す。
【0113】
他の実施態様において、システムは、符号化ストラテジーインジケーターをIVASビットストリームのMDPセクションに格納するかまたはIVASビットストリームのMDPセクションから読み出す。
【0114】
他の実施態様において、システムは、1つ以上の係数の量子化および符号化された実部および虚部をIVASビットストリームのMDPセクションに格納するかまたはIVASビットストリームのMDPセクションから読み出す。
【0115】
いくつかの実施態様において、1つ以上の係数は、予測係数、相互予測係数(またはダイレクト係数)、実数(対角)デコリレーター係数および複素(非対角)デコリレーター係数を含むが、これらに限定されるものではない。
【0116】
いくつかの実施態様において、より多くの係数またはより少ない係数が、IVASビットストリームのMDPセクションに格納され、IVASビットストリームのMDPセクションから読み出される。
【0117】
いくつかの実施態様において、IVASシステムは、3GPP TS26.445に従って全てのチャネルのEVSペイロードをIVASビットストリームのEPセクションに格納するかまたはIVASビットストリームのEPセクションから読み出す。
【0118】
SPARフォーマット化を用いた一例示のIVASビットストリームを以下に示す。IVASビットストリームは、以下のように4つの細分を含む。
【表13】
【0119】
共通ヘッダー(CH):
いくつかの実施態様において、IVAS共通ヘッダー(CH)は、以下のようにフォーマット化される。
【表14】
【0120】
ツールヘッダー(TH):
いくつかの実施態様において、SPARツールヘッダー(TH)は、SPARビットレート分布制御テーブルへのインデックスオフセットである。
【表15】
【0121】
SPARビットレート分布制御テーブルの例示の実施態様を以下に示す。各IVASビットレートは、帯域幅(BW:Bandwidth)、ダウンミックス構成(dmxチャネル、dmxストリング)、アクティブW、複素フラグ、遷移モード値、EVSビットレート設定、メタデータ量子化レベル設定およびデコリレーターダッキング(ducking)フラグの1つ以上の値をサポートすることができる。この例示の実施態様において、ビットレート当たり1つのエントリーしかないので、SPAR THセクションのビット数は0である。以下の表において使用される頭字語は、以下のように定義される。
PR:予測係数、
C:相互予測係数(またはダイレクト係数)、
Pr:実数(対角)デコリレーター係数、
Pc:複素(非対角)デコリレーター係数。
【0122】
一例示のSPARビットレート分布制御テーブルは以下のとおりである。
【表16】
【0123】
メタデータペイロード(MDP):
一例示のメタデータペイロード(MDP)は以下のとおりである。
【表17】
【0124】
EVSペイロード(EP):
いくつかの実施態様において、各ダウンミックスチャネルの実際のEVSビットレートのメタデータの量子化および算出は、EVSビットレート分布制御ストラテジーを使用して行われる。EVSビットレート分布制御ストラテジーの一例示の実施態様を以下に説明する。
【0125】
例示のEVSビットレート分布制御ストラテジー
いくつかの実施態様において、EVSビットレート分布制御ストラテジーは、メタデータ量子化およびEVSビットレート分布の2つのセクションを含む。
【0126】
メタデータ量子化。このセクションには、目標パラメータービットレート閾値(MDtar)および最大目標ビットレート閾値(MDmax)の2つの定義された閾値がある。
【0127】
ステップ1:フレームごとに、パラメーターが非時間差分方法で量子化され、エントロピーコーダーを用いて符号化される。いくつかの実施態様において、算術コーダーが使用される。他の実施態様において、ハフマンエンコーダーが使用される。パラメータービットレート推定値がMDtar未満である場合には、オーディオエッセンスのビットレートを増加させるために、任意の余分の利用可能なビットがオーディオエンコーダーに供給される。
【0128】
ステップ2:ステップ1が失敗した場合には、フレーム内のパラメーター値のサブセットが量子化され、先行フレーム内の量子化されたパラメーター値から減算され、差分量子化されたパラメーター値が、エントロピーコーダーを用いて符号化される。パラメータービットレート推定値がMDtar未満である場合には、オーディオエッセンスのビットレートを増加させるために、任意の余分の利用可能なビットがオーディオエンコーダーに供給される。
【0129】
ステップ3:ステップ2が失敗した場合には、量子化されたパラメーターのビットレートがエントロピーなしで算出される。
【0130】
ステップ4:ステップ1、ステップ2、およびステップ3の結果がMDmaxと比較される。ステップ1、ステップ2、およびステップ3の最小値がMDmax内にある場合には、残りのビットが符号化され、オーディオコーダーに提供される。
【0131】
ステップ5:ステップ4が失敗した場合には、パラメーターは、より粗く量子化され、上記ステップは、第1のフォールバックストラテジー(フォールバック1)として繰り返される。
【0132】
ステップ6:ステップ5が失敗した場合には、パラメーターは、第2のフォールバックストラテジー(フォールバック2)としてMDmax内に収まることが保証された量子化方式を用いて量子化される。上述した全ての反復の後、メタデータビットレートはMDmax内に収まることが保証され、エンコーダーは、実際のメタデータビットすなわちMetadata_actual_bits(MDact)を生成する。
【0133】
EVSビットレート分布(EVSbd)。このセクションについて、以下の定義が適用される。
EVStar:EVS目標ビット、各EVSインスタンスの所望のビット。
EVSact:EVS実際ビット、全てのEVSインスタンスに利用可能な実際のビットの合計。
EVSmin:EVS最小ビット、各EVSインスタンスの最小ビット。EVSビットレートは、これらのビットによって示される値を下回ってはならない。
EVSmax:EVS最大ビット、各EVSインスタンスの最大ビット。EVSビットレートは、これらのビットによって示される値を上回ってはならない。
EVS W:Wチャネルを符号化するEVSインスタンス。
EVS Y:Yチャネルを符号化するEVSインスタンス。
EVS X:Xチャネルを符号化するEVSインスタンス。
EVS Z:Zチャネルを符号化するEVSインスタンス。
EVSact=IVAS_bits-header_bits-MDact
【0134】
EVSactが、全てのEVSインスタンスのEVStarの合計よりも小さい場合には、ビットが、EVSインスタンスから次の順序(Z、X、Y、W)で取り出される。任意のチャネルから取り出すことができる最大ビット=EVStar(ch)-EVSmin(ch)である。
【0135】
EVSactが、全てのEVSインスタンスのEVStarの合計よりも大きい場合には、全ての追加ビットがダウンミックスチャネルに次の順序(W、Y、X、Z)で割り当てられる。任意のチャネルに追加することができる最大追加ビット=EVSmax(ch)-EVStar(ch)である。
【0136】
上述したEVSbd方式は、全てのチャネルの実際のEVSビットレート、すなわち、Wチャネル、Yチャネル、XチャネルおよびZチャネルのそれぞれEWa、EYa、EXa、EZaを計算する。各チャネルが、EWaビットレート、EYaビットレート、EXaビットレートおよびEZaビットレートを用いて個別のEVSインスタンスによって符号化された後、全てのEVSビットは、互いに連結およびパッキングされる。この構成の利点は、いずれのチャネルについてもEVSビットレートを示すのに追加のヘッダーが必要とされないことである。
【0137】
いくつかの実施態様において、EPセクションは以下のとおりである。
【表18】
【0138】
例示のSPARデコーダービットストリームアンパッキング
いくつかの実施態様において、SPARデコーダービットストリームアンパッキングのステップが以下のように説明される。
【0139】
ステップ1:受信ビットバッファーの長さからIVASビットレートを求める。
【0140】
ステップ2:SPARビットレート分布制御テーブル内のIVASビットレートのエントリーの数に基づいてSPAR THセクションをパースし、インデックスオフセットを抽出する。ここで、このインデックスオフセットは、IVAS動作ビットレートによって求められる。
【0141】
ステップ3:インデックスオフセットを使用してSPARビットレート分布制御テーブルの実際のテーブル行インデックスを求め、この実際のテーブル行インデックスによって指し示されるSPARビットレート分布制御テーブル行の全ての列を読み出す。
【0142】
ステップ4:IVASビットストリームのMDPセクションからの量子化ストラテジービットおよび符号化ストラテジービットを読み出し、示された量子化ストラテジーおよび符号化ストラテジーに基づいてMPDセクション内のSPAR空間メタデータを量子化解除(unquantize)する。
【0143】
ステップ5:全EVSビットレート(IVASビットストリームから読み出される残りのビット)に基づいて、上述したEVSビットレート分布(EVSbd)ごとに各チャネルの実際のEVSビットレートを求める。
【0144】
ステップ6:実際のEVSビットレートに基づいてIVASビットストリームのEPセクションから、符号化されたEVSビットを読み出し、それぞれのEVSインスタンスを用いてFoAオーディオ信号の各チャネルを復号化する。
【0145】
ステップ7:復号化されたEVS出力および空間メタデータを使用して、FoA(SPAR)オーディオ信号を構成する。
【0146】
上述したIVASビットストリームフォーマットの実施形態の利点は、この実施形態が、様々なオーディオサービス能力をサポートするデータを効率的かつコンパクトに符号化することである。これらのオーディオサービス能力は、モノラルからステレオへのアップミックスならびに完全没入型オーディオ符号化、復号化およびレンダリング(例えばFoA符号化)を含むが、これらに限定されるものではない。この実施形態は、広範囲のデバイス、エンドポイント、およびネットワークノードによってもサポートされる。これらの広範囲のデバイス等は、モバイルフォンおよびスマートフォン、電子タブレット、パーソナルコンピューター、会議電話、会議室、仮想現実(VR)デバイスおよび拡張現実(AR)デバイス、ホームシアターデバイス、ならびに他の適したデバイスを含むが、これらに限定されるものではなく、これらのそれぞれは、音のキャプチャーおよびレンダリング用の様々な音響インターフェースを有することができる。IVASビットストリームフォーマットは、IVAS規格および技術とともに容易に発展することができるように拡張可能である。
【0147】
例示のプロセス-CACPLフォーマットのIVASビットストリーム
図4Aは、一実施形態によるIVAS符号化プロセス400のフロー図である。プロセス400は、
図8を参照して説明されるようなデバイスアーキテクチャを使用して実施することができる。
【0148】
プロセス400は、IVASエンコーダーを使用して符号化ツールインジケーターおよびサンプリングレートインジケーターを求め、符号化ツールインジケーターおよびサンプリングレートインジケーターをIVASビットストリームの共通ヘッダー(CH)セクション内に符号化すること(401)を含む。いくつかの実施態様において、ツールインジケーターは、符号化ツールに対応する値を有し、サンプリングレートインジケーターは、サンプリングレートを示す値を有する。
【0149】
プロセス400は、IVASエンコーダーを使用して拡張型音声サービス(EVS)ペイロードを求め、拡張型音声サービス(EVS)ペイロードをIVASビットストリームのEVSペイロード(EP)セクション内に符号化すること(402)を更に含む。いくつかの実施態様において、EPセクションはCHセクションの後に続く。
【0150】
プロセス400は、IVASエンコーダーを使用してメタデータペイロードにおけるメタデータペイロードを求め、メタデータペイロードをIVASビットストリームのメタデータペイロード(MDP)セクション内に符号化すること(403)を更に含む。いくつかの実施態様において、MDPセクションはCHセクションの後に続く。いくつかの実施態様において、EPセクションはビットストリームのMDPセクションの後に続く。
【0151】
プロセス400は、IVASビットストリームを非一時的コンピューター可読媒体上に記憶することまたはIVASビットストリームを下流デバイスにストリーミングすること(404)を更に含む。
【0152】
図4Bは、一実施形態による、代替のIVASフォーマットを使用するIVAS符号化プロセス405のフロー図である。プロセス405は、
図8を参照して説明されるようなデバイスアーキテクチャを含むことができる。
【0153】
プロセス405は、IVASエンコーダーを使用して符号化ツールインジケーターを求め、符号化ツールインジケーターをIVASビットストリームの共通ヘッダー(CH)セクション内に符号化すること(406)を含む。いくつかの実施態様において、ツールインジケーターは、符号化ツールに対応する値を有する。
【0154】
プロセス405は、IVASエンコーダーを使用して、IVASビットレート分布制御テーブルの表現をIVASビットストリームの共通空間符号化ツールヘッダー(CTH)セクション内に符号化すること(407)を更に含む。
【0155】
プロセス405は、IVASエンコーダーを使用してメタデータペイロードを求め、メタデータペイロードをIVASビットストリームのメタデータペイロード(MDP)セクション内に符号化すること(408)を更に含む。いくつかの実施態様において、MDPセクションは、IVASビットストリームのCHセクションの後に続く。
【0156】
プロセス405は、IVASエンコーダーを使用して拡張型音声サービス(EVS)ペイロードを求め、拡張型音声サービス(EVS)ペイロードをIVASビットストリームのEVSペイロード(EP)セクション内に符号化すること(409)を更に含む。いくつかの実施態様において、EPセクションは、IVASビットストリームのCHセクションの後に続く。いくつかの実施態様において、MDPセクションは、IVASビットストリームのEPセクションの後に続く。
【0157】
プロセス405は、IVASビットストリームを記憶デバイス上に記憶することまたはIVASビットストリームを下流デバイスにストリーミングすること(410)を更に含む。
【0158】
図5Aは、一実施形態によるIVAS復号化プロセス500のフロー図である。プロセス500は、
図8を参照して説明されるようなデバイスアーキテクチャを使用して実施することができる。
【0159】
プロセス500は、IVASデコーダーを使用して、符号化ツールインジケーターおよびサンプリングレートインジケーターをIVASビットストリームの共通ヘッダー(CH)セクションから抽出して復号化すること(501)を含む。いくつかの実施態様において、ツールインジケーターは、符号化ツールに対応する値を有し、サンプリングレートインジケーターは、サンプリングレートを示す値を有する。
【0160】
プロセス500は、IVASデコーダーを使用して、拡張型音声サービス(EVS)ペイロードをIVASビットストリームのEVSペイロード(EP)セクションから抽出して復号化すること(502)を更に含む。いくつかの実施態様において、EPセクションは、IVASビットストリームのCHセクションの後に続く。
【0161】
プロセス500は、IVASデコーダーを使用して、メタデータペイロードをビットストリームのメタデータペイロード(MDP)セクションから抽出して復号化すること(503)を更に含む。いくつかの実施態様において、MDPセクションは、IVASビットストリームのCHセクションの後に続く。いくつかの実施態様において、EPセクションは、IVASビットストリームのMDPセクションの後に続く。
【0162】
プロセス500は、符号化ツール、サンプリングレート、EVSペイロード、およびメタデータペイロードに基づいてオーディオデコーダーを制御すること、または、符号化ツール、サンプリングレート、EVSペイロード、およびメタデータペイロードの表現を非一時的コンピューター可読媒体上に記憶すること(504)を更に含む。
【0163】
図5Bは、一実施形態による、代替のフォーマットを使用するIVAS復号化プロセス505のフロー図である。プロセス505は、
図8を参照して説明されるようなデバイスアーキテクチャを使用して実施することができる。
【0164】
プロセス505は、IVASデコーダーを使用して、IVASビットストリームの共通ヘッダー(CH)セクション内の符号化ツールインジケーターを抽出して復号化すること(506)を含む。いくつかの実施態様において、ツールインジケーターは、符号化ツールに対応する値を有する。
【0165】
プロセス505は、IVASデコーダーを使用して、IVASビットストリームの共通空間符号化ツールヘッダー(CTH)セクション内のIVASビットレート分布制御テーブルの表現を抽出して復号化すること(507)を更に含む。
【0166】
プロセス505は、IVASデコーダーを使用して、IVASビットストリームのメタデータペイロード(MDP)セクション内のメタデータペイロードを復号化すること(508)を更に含む。いくつかの実施態様において、MDPセクションは、IVASビットストリームのCHセクションの後に続く。
【0167】
プロセス505は、IVASデコーダーを使用して、IVASビットストリームのEVSペイロード(EP)セクション内の拡張型音声サービス(EVS)ペイロードを復号化すること(509)を更に含む。いくつかの実施態様において、EPセクションは、IVASビットストリームのCHセクションの後に続く。いくつかの実施態様において、MDPセクションは、IVASビットストリームのEPセクションの後に続く。
【0168】
プロセス505は、符号化ツールインジケーター、IVASビットレート分布制御テーブル、メタデータペイロード、およびEVSペイロードの表現に基づいてオーディオデコーダーを制御すること、または、符号化ツールインジケーターの表現、IVASビットレート分布制御テーブル、メタデータペイロード、およびEVSペイロードの表現を記憶デバイス上に記憶すること(510)を更に含む。
【0169】
例示のプロセス-SPARフォーマットのIVASビットストリーム
図6は、一実施形態によるIVAS SPAR符号化プロセス600のフロー図である。プロセス600は、
図8を参照して説明されるようなデバイスアーキテクチャを使用して実施することができる。
【0170】
プロセス600は、IVASエンコーダーを使用して、符号化モード/符号化ツールインジケーターを復号化し、符号化モード/符号化ツールインジケーターをIVASビットストリームの共通ヘッダー(CH)セクション内に符号化すること(601)を含む。
【0171】
プロセス600は、IVASエンコーダーを使用して、SPARビットレート分布制御テーブルの表現を求め、IVASビットストリームのツールヘッダー(TH)セクションにおけるモードヘッダー/ツールヘッダー内に符号化すること(602)を更に含む。ここで、THセクションはCHセクションの後に続く。
【0172】
プロセス600は、IVASエンコーダーを使用して、メタデータペイロードを求め、メタデータペイロードをIVASビットストリームのメタデータペイロード(MDP)セクション内に符号化すること(603)を更に含む。いくつかの実施態様において、MDPセクションは、IVASビットストリームのCHセクションの後に続く。
【0173】
いくつかの実施態様において、MDPセクションは、量子化ストラテジーインジケーター;符号化ストラテジーインジケーター;ならびに1つ以上の係数の量子化および符号化された実部および虚部を含む。いくつかの実施態様において、1つ以上の係数は、予測係数、相互予測係数(またはダイレクト係数)、実数(対角)デコリレーター係数および複素(非対角)デコリレーター係数を含むが、これらに限定されるものではない。いくつかの実施態様において、より多くの係数またはより少ない係数が、IVASビットストリームのMDPセクションに格納され、IVASビットストリームのMDPセクションから読み出される。
【0174】
プロセス600は、IVASエンコーダーを使用して、拡張型音声サービス(EVS)ペイロードを求め、EVSペイロードをIVASビットストリームのEVSペイロード(EP)セクション内に符号化すること(604)を更に含む。いくつかの実施態様において、IVASビットストリームのEPセクションは、3GPP TS26.445に従って全てのチャネルのEVSペイロードを含む。いくつかの実施態様において、EPセクションは、IVASビットストリームのCHセクションの後に続く。いくつかの実施態様において、EPセクションは、MDPセクションの後に続く。EPセクションをIVASビットストリームのMDPセクションの後に続かせることによって、効率的なビットパッキングが確保され、MDPビットおよびEPビットの数が(ビットレート分布アルゴリズムに従って)変化することを可能にすることによって、IVASビットレートバジェットにおける全ての利用可能なビットの利用が確保されることに留意されたい。
【0175】
プロセス600は、ビットストリームを非一時的コンピューター可読媒体上に記憶すること、または、ビットストリームを下流デバイスにストリーミングすること(605)を更に含む。
【0176】
図7は、一実施形態によるIVAS SPAR復号化プロセス700のフロー図である。プロセス700は、
図8を参照して説明されるようなデバイスアーキテクチャを使用して実施することができる。
【0177】
プロセス700は、IVASデコーダーを使用して、IVASビットストリームの共通ヘッダー(CH)セクション内の符号化モードインジケーターを抽出して復号化すること(701)を含む。
【0178】
プロセス700は、IVASデコーダーを使用して、IVASビットストリームのツールヘッダー(TH)セクションにおけるモードヘッダー/ツールヘッダー内のSPARビットレート分布制御テーブルの表現を抽出して復号化すること(702)を含む。いくつかの実施態様において、THセクションはCHセクションの後に続く。
【0179】
プロセス700は、IVASデコーダーを使用して、メタデータペイロードをIVASビットストリームのメタデータペイロード(MDP)セクションから抽出して復号化すること(703)を更に含む。いくつかの実施態様において、MDPセクションは、IVASビットストリームのCHセクションの後に続く。
【0180】
プロセス700は、IVASデコーダーを使用して、拡張型音声サービス(EVS)ペイロードをIVASビットストリームのEVSペイロード(EP)セクションから抽出して復号化すること(704)を更に含む。いくつかの実施態様において、EPセクションはCHセクションの後に続く。いくつかの実施態様において、EPセクションはMDPセクションの後に続く。EPセクションをIVASビットストリームのMDPセクションの後に続かせることによって、効率的なビットパッキングが確保され、MDPビットおよびEPビットの数が(ビットレート分布アルゴリズムに従って)変化することを可能にすることによって、IVASビットレートバジェットにおける全ての利用可能なビットの利用が確保されることに留意されたい。
【0181】
プロセス700は、符号化モードインジケーター、SPARビットレート分布制御テーブル、EVSペイロード、およびメタデータペイロードの表現に基づいてオーディオデコーダーを制御すること、または、符号化モードインジケーターの表現、SPARビットレート分布制御テーブル、EVSペイロード、およびメタデータペイロードの表現を非一時的コンピューター可読媒体上に記憶すること(705)を更に含む。
【0182】
例示のシステムアーキテクチャ
図8は、本開示の例示の実施形態を実施するのに適した一例示のシステム800のブロック図を示している。システム800は、1つ以上のサーバーコンピューターまたは任意のクライアントデバイスを含む。これらのサーバーコンピューターまたはクライアントデバイスは、
図1に示すデバイスのうちの任意のもの、例えばコールサーバー102、レガシーデバイス106、ユーザー機器108、114、会議室システム116、118、ホームシアターシステム、VRギア122および没入型コンテンツインジェスト124等を含むが、これらに限定されるものではない。システム800は、任意のコンシューマデバイスを含み、このコンシューマデバイスは、スマートフォン、タブレットコンピューター、ウェアラブルコンピューター、車両コンピューター、ゲームコンソール、サラウンドシステム、キオスクを含むが、これらに限定されるものではない。
【0183】
図示するように、システム800は、例えば、リードオンリーメモリ(ROM:read only memory)802に記憶されたプログラム、または、例えば、記憶ユニット808からランダムアクセスメモリ(RAM:random access memory)803にロードされたプログラムに従って様々なプロセスを実行することが可能な中央処理装置(CPU:central processing unit)801を含む。RAM803には、CPU801が様々なプロセスを実行するときに必要とされるデータも、必要に応じて記憶される。CPU801、ROM802およびRAM803は、バス804を介して互いに接続される。入力/出力(I/O)インターフェース805もバス804に接続される。
【0184】
次の構成要素、すなわち、キーボード、マウス等を含むことができる入力ユニット806;液晶ディスプレイ(LCD)等のディスプレイおよび1つ以上のスピーカーを含むことができる出力ユニット807;ハードディスクまたは別の適した記憶デバイスを含む記憶ユニット808;ならびにネットワークカード(例えば、有線または無線)等のネットワークインターフェースカードを含む通信ユニット809が、I/Oインターフェース805に接続される。
【0185】
いくつかの実施態様において、入力ユニット806は、様々なフォーマット(例えば、モノラル、ステレオ、空間、没入型、および他の適したフォーマット)のオーディオ信号のキャプチャーを可能にする(ホストデバイスに応じて)異なる位置にある1つ以上のマイクロフォンを含む。
【0186】
いくつかの実施態様において、出力ユニット807は、様々な数のスピーカーを有するシステムを含む。
図1に示すように、出力ユニット807は、(ホストデバイスの能力に応じて)様々なフォーマット(例えば、モノラル、ステレオ、没入型、バイノーラル、および他の適したフォーマット)のオーディオ信号をレンダリングすることができる。
【0187】
通信ユニット809は、他のデバイスと(例えば、ネットワークを介して)通信するように構成される。ドライブ810も、必要に応じてI/Oインターフェース805に接続される。着脱可能媒体811、例えば磁気ディスク、光ディスク、光磁気ディスク、フラッシュドライブまたは別の適した着脱可能媒体等が、そこから読み出されたコンピュータープログラムが必要に応じて記憶ユニット808内にインストールされるように、ドライブ810に取り付けられる。当業者であれば、システム800は、上述した構成要素を含むものとして説明されているが、実際の用途において、これらの構成要素のうちの一部を追加、除去、および/または交換することが可能であり、これらの全ての変更または改変は全て本開示の範囲内に含まれることを理解するであろう。
【0188】
他の実施態様
一実施形態において、オーディオ信号のビットストリームを生成する方法が、IVASエンコーダーを使用して、符号化ツールインジケーターおよびサンプリングレートインジケーターを求めることであって、符号化ツールインジケーターは符号化ツールに対応する値を有し、サンプリングレートインジケーターはサンプリングレートを示す値を有することと;IVASエンコーダーを使用して、符号化ツールインジケーターおよびサンプリングレートインジケーターをIVASビットストリームの共通ヘッダー(CH)セクション内に符号化することと;IVASエンコーダーを使用して、拡張型音声サービス(EVS)ペイロードを求めることと;IVASエンコーダーを使用して、EVSペイロードをIVASビットストリームのEVSペイロード(EP)セクション内に符号化することであって、EPセクションはCHセクションの後に続くことと;IVASエンコーダーを使用して、メタデータペイロードを求めることと;IVASエンコーダーを使用して、メタデータペイロードをIVASビットストリームのメタデータペイロード(MDP)セクション内に符号化することであって、MDPセクションはCHセクションの後に続くことと;IVASビットストリームを非一時的コンピューター可読媒体上に記憶することまたはIVASビットストリームを下流デバイスにストリーミングすることとを含む。
【0189】
一実施形態において、オーディオ信号のビットストリームを復号化する方法が、IVASデコーダーを使用して、符号化ツールインジケーターおよびサンプリングレートインジケーターをIVASビットストリームのCHセクションから抽出して復号化することであって、ツールインジケーターは、符号化ツールに対応する値を有し、サンプリングレートインジケーターは、サンプリングレートを示す値を有することと;IVASデコーダーを使用して、EVSペイロードをビットストリームのEPセクションから抽出して復号化することであって、EPセクションはCHセクションの後に続くことと;IVASデコーダーを使用して、メタデータペイロードをビットストリームのMDPセクションから復号化することであって、MDPセクションはCHセクションの後に続くことと;符号化ツール、サンプリングレート、EVSペイロード、およびメタデータペイロードに基づいてオーディオデコーダーを制御すること、または、符号化ツール、サンプリングレート、EVSペイロード、およびメタデータペイロードの表現を非一時的コンピューター可読媒体上に記憶することとを含む。
【0190】
一実施形態において、MDPセクションは、ビットストリームのEPセクションの後に続くか、または、EPセクションが、ビットストリームのMDPセクションの後に続く。
【0191】
一実施形態において、IVAS符号化ツールインジケーターは、3ビットデータ構造体であり、3ビットデータ構造体の第1の値はマルチモノラル符号化ツールに対応し、3ビットデータ構造体の第2の値は複合アドバンストカップリング(CACPL)符号化ツールに対応し、3ビットデータ構造体の第3の値は別の符号化ツールに対応する。
【0192】
一実施形態において、入力サンプリングレートインジケーターは、2ビットデータ構造体であり、2ビットデータ構造体の第1の値は8kHzサンプリングレートを示し、2ビットデータ構造体の第2の値は16kHzサンプリングレートを示し、2ビットデータ構造体の第3の値は32kHzサンプリングレートを示し、2ビットデータ構造体の第4の値は48kHzサンプリングレートを示す。
【0193】
一実施形態において、上記方法は、EVSチャネル数インジケーター、ビットレート(BR)抽出モードインジケーター、EVS BRデータ、およびEVSペイロードをそれぞれビットストリームのEPセクションに記憶することまたはビットストリームのEPセクションから読み出すことを含む。
【0194】
一実施形態において、上記方法は、符号化技法インジケーター、帯域数インジケーター、フィルターバンクの遅延構成を示すインジケーター、量子化ストラテジーのインジケーター、エントロピーコーダーインジケーター、確率モデルタイプインジケーター、係数実部、係数虚部、および1つ以上の係数をそれぞれデータストリームのMDPセクションに記憶することまたはデータストリームのMDPセクションから読み出すことを含む。
【0195】
一実施形態において、オーディオ信号のビットストリームを生成する方法が、IVASエンコーダーを使用して、符号化ツールインジケーターを求めることであって、このツールインジケーターは、符号化ツールに対応する値を有することと;IVASエンコーダーを使用して、符号化ツールインジケーターをIVASビットストリームの共通ヘッダー(CH)セクション内に符号化することと;IVASエンコーダーを使用して、IVASビットレート分布制御テーブルのインデックスの表現を求めることと;IVASエンコーダーを使用して、IVASビットレート分布制御テーブルのインデックスの表現をIVASビットストリームの共通空間符号化ツールヘッダー(CTH)セクション内に符号化することであって、CTHセクションはCHセクションの後に続くことと;IVASエンコーダーを使用して、メタデータペイロードを求めることと;IVASエンコーダーを使用して、メタデータペイロードをIVASビットストリームのメタデータペイロード(MDP)セクション内に符号化することであって、MDPセクションはCTHセクションの後に続くことと;IVASエンコーダーを使用して、拡張型音声サービス(EVS)ペイロードを求めることと;IVASエンコーダーを使用して、EVSペイロードをIVASビットストリームのEVSペイロード(EP)セクション内に符号化することであって、EPセクションはCTHセクションの後に続くことと;ビットストリームを非一時的コンピューター可読媒体上に記憶することまたはビットストリームを下流デバイスにストリーミングすることとを含む。
【0196】
一実施形態において、オーディオ信号のビットストリームを復号化する方法が、IVASデコーダーによってビットストリームを受信することと;ビットストリームの長さおよびストライドに基づいてIVAS動作ビットレートを計算することと;空間符号化ツールのインジケーターをビットストリームの共通ヘッダー(CH)セクションから読み出すことと;ビットストリームの共通空間符号化ツールヘッダー(CTH)セクションの長さをIVAS動作ビットレートに基づいて求めることであって、この求めることは、CTHセクション内のIVASビットレート分布制御テーブルにおけるIVAS動作ビットレートに対応するエントリー数を調べることを含むことと;CTHセクションの長さが求まり、IVASビットレート分布制御テーブルのインデックスが求まると、CTHセクション内の値を読み出すことと;拡張型音声サービス(EVS)ビットレート分布についての情報を、IVASビットレート分布制御テーブルのインデックスに対応するIVASビットレート分布制御テーブルのエントリーから読み出すことと;EVSビットレート分布についての情報をEVSデコーダーに提供することとを含む。
【0197】
一実施形態において、上記方法のいずれかは、3GPP TS26.445とのモノラルダウンミックス後方互換性のインジケーターをIVASビットレート分布制御テーブルのエントリーから読み出すことを含む。
【0198】
一実施形態において、上記方法は、モノラルダウンミックス後方互換性インジケーターがONモードにあると判断することと;ONモードに応答して、ビットストリームの残りの部分をEVSデコーダーに提供することと;次に、EVSビットレート分布に基づいて、各EVSインスタンスのそれぞれのビット長をビットストリームの残りの部分から算出することと;対応するビット長に基づいて各EVSインスタンスのEVSビットを読み出すことと;EVSビットをEVSデコーダーに第1の部分として提供することと、ビットストリームの残りの部分をMDPデコーダーに提供して空間メタデータを復号化することとを含む。
【0199】
一実施形態において、上記方法は、モノラルダウンミックス後方互換性インジケーターがOFFモードにあると判断することと;OFFモードに応答して、ビットストリームの残りの部分をMDPデコーダーに提供して空間メタデータを復号化することと;次に、EVSビットレート分布に基づいて、ビットストリーム残りの部分から各EVSインスタンスのそれぞれのビット長を算出することと;対応するビット長に基づいて各EVSインスタンスのEVSビットを読み出すことと;EVSビットをEVSデコーダーに第1の部分として提供することとを含む。
【0200】
一実施形態において、システムが、1つ以上のコンピュータープロセッサと;1つ以上のプロセッサによって実行されると、上記方法クレームのうちのいずれか1つの動作を1つ以上のプロセッサに実行させる命令を記憶する非一時的コンピューター可読媒体とを備える。
【0201】
一実施形態において、非一時的コンピューター可読媒体が、1つ以上のプロセッサによって実行されると、上記方法クレームのうちのいずれか1つの動作を1つ以上のプロセッサに実行させる命令を記憶する。
【0202】
本開示の例示の実施形態によれば、上述したプロセスは、コンピューターソフトウェアプログラムとしてまたはコンピューター可読記憶媒体上に実施することができる。例えば、本開示の実施形態は、機械可読媒体上に有形に具現化されたコンピュータープログラムを含むコンピュータープログラム製品を含み、このコンピュータープログラムは、方法を実行するプログラムコードを含む。そのような実施形態において、コンピュータープログラムは、
図8に示すように、ネットワークから通信ユニット809を介してダウンロードして実装することができ、および/または着脱可能媒体811からインストールすることができる。
【0203】
一般に、本開示の様々な例示の実施形態は、ハードウェアもしくは専用回路(例えば、制御回路類)、ソフトウェア、ロジックまたはそれらの任意の組み合わせで実施することができる。例えば、上述したユニットは、制御回路類(例えば、
図8の他の構成要素と組み合わせたCPU)によって実行することができ、したがって、この制御回路類は、本開示において説明された動作を実行することができる。ハードウェアで実施することができる態様もあれば、コントローラー、マイクロプロセッサまたは他のコンピューティングデバイス(例えば、制御回路類)によって実行することができるファームウェアまたはソフトウェアで実施することができる態様もある。本開示の例示の実施形態の様々な態様は、ブロック図、フローチャートとして、または他の或る図形表現を使用して図示および説明されているが、本明細書において説明されているブロック、装置、システム、技法または方法は、非限定的な例として、ハードウェア、ソフトウェア、ファームウェア、専用回路もしくはロジック、汎用ハードウェアもしくはコントローラーもしくは他のコンピューティングデバイス、またはそれらの或る組み合わせで実施することができることが理解されるであろう。
【0204】
加えて、フローチャートに示す様々なブロックは、コンピュータープログラムコードの動作の結果からもたらされる方法ステップおよび/または動作、および/または、関連した機能(単数または複数)を実行するように構成された複数の結合された論理回路素子とみなすことができる。例えば、本開示の実施形態は、機械可読媒体上に有形に具現化されたコンピュータープログラムを含むコンピュータープログラム製品を含み、このコンピュータープログラムは、上述したような方法を実行するように構成されるプログラムコードを含む。
【0205】
本開示の文脈において、機械可読媒体は、命令実行システム、命令実行装置、もしくは命令実行デバイスによってまたはそれらに関連して使用されるプログラムを収容または記憶することができる任意の有形媒体とすることができる。機械可読媒体は、機械可読信号媒体であってもよいし、機械可読記憶媒体であってもよい。機械可読媒体は、非一時的なものであってもよく、電子、磁気、光、電磁気、赤外線、または半導体システム、装置、もしくはデバイス、またはそれらの任意の適した組み合わせを含むことができるが、これらに限定されるものではない。機械可読記憶媒体のより具体的な例は、1つ以上の配線を有する電気接続、ポータブルコンピューターディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能プログラマブルリードオンリーメモリ(EPROMまたはフラッシュメモリ)、光ファイバー、ポータブルコンパクトディスクリードオンリーメモリ(CD-ROM)、光記憶デバイス、磁気記憶デバイス、またはそれらの任意の適した組み合わせを含む。
【0206】
本開示の方法を実行するコンピュータープログラムコードは、1つ以上のプログラミング言語の任意の組み合わせで記述することができる。これらのコンピュータープログラムコードは、当該プログラムコードが、コンピューターまたは他のプログラマブルデータ処理装置のプロセッサによって実行されると、フローチャートおよび/またはブロック図において指定された機能/動作の実施を引き起こすように、汎用コンピューター、専用コンピューター、または制御回路類を有する他のプログラマブルデータ処理装置のプロセッサに提供することができる。プログラムコードは、スタンドアローンソフトウェアパッケージとしてコンピューター上で全体的またはコンピューター上で部分的に実行することもできるし、一部はコンピューター上および一部はリモートコンピューター上で実行することもできるし、全体をリモートコンピューターまたはリモートサーバー上で実行することもできるし、1つ以上のリモートコンピューターおよび/またはリモートサーバーにわたって分散させることもできる。
【0207】
本明細書は、多くの具体的な実施の詳細を含むが、これらは、特許請求され得るものの範囲に対する限定と解釈されるべきではなく、逆に、特定の実施形態に固有であり得る特徴の説明と解釈されるべきである。別々の実施形態の文脈で本明細書に説明されている或る特定の特徴は、単一の実施形態に組み合わせて実施することもできる。逆に、単一の実施形態の文脈で説明されている様々な特徴は、複数の実施形態において別々にまたは任意の適したサブコンビネーションで実施することもできる。その上、特徴は、或る特定の組み合わせで動作するものとして上記で説明され、そのようなものとして当初に請求項に記載されることさえあるが、請求項に記載の組み合わせからの1つ以上の特徴は、いくつかの場合には、その組み合わせから削除することができ、請求項に記載の組み合わせは、サブコンビネーションまたはサブコンビネーションの変形形態を対象とすることができる。図に示された論理フローは、望ましい結果を達成するために、図示された特定の順序も逐次的な順序も必須とするものではない。加えて、記載のフローに対して他のステップを設けることもできるし、ステップを削除することもでき、記載のシステムに対して他の構成要素を追加または削除することができる。したがって、他の実施態様が、添付の特許請求の範囲の範囲内にある。