JP2014146040A - 効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法 - Google Patents

効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法 Download PDF

Info

Publication number
JP2014146040A
JP2014146040A JP2014047759A JP2014047759A JP2014146040A JP 2014146040 A JP2014146040 A JP 2014146040A JP 2014047759 A JP2014047759 A JP 2014047759A JP 2014047759 A JP2014047759 A JP 2014047759A JP 2014146040 A JP2014146040 A JP 2014146040A
Authority
JP
Japan
Prior art keywords
data
downmixing
channel
audio data
channels
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014047759A
Other languages
English (en)
Other versions
JP5863858B2 (ja
Inventor
Thesing Robin
テシング,ロビン
m silva James
エム シルヴァ,ジェイムズ
L Andersen Robert
エル アンダーセン,ロバート
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dolby International AB
Dolby Laboratories Licensing Corp
Original Assignee
Dolby International AB
Dolby Laboratories Licensing Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dolby International AB, Dolby Laboratories Licensing Corp filed Critical Dolby International AB
Publication of JP2014146040A publication Critical patent/JP2014146040A/ja
Application granted granted Critical
Publication of JP5863858B2 publication Critical patent/JP5863858B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R5/00Stereophonic arrangements
    • H04R5/02Spatial or constructional arrangements of loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/008Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels

Abstract

【課題】方法、装置、方法を実行するための命令を構成されたコンピュータ可読記憶媒体および一つまたは複数のコンピュータ可読の有形の媒体にエンコードされた諸工程を提供する。
【解決手段】方法は、N.nチャンネルを含むオーディオ・データを復号してM.m個の復号されたオーディオ・チャンネルにするものであり、メタデータをアンパックし、周波数領域の指数および仮数データをアンパックおよび復号し;アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定し;周波数領域データを逆変換し;M<Nの場合、ダウンミキシング・データに従ってダウンミキシングすることを含む。
【選択図】図7

Description

〈関連出願への相互参照〉
本願は、2010年2月5日に出願された米国仮特許出願第61/305,871号および2010年6月29日に出願された米国仮特許出願第61/359,763号の優先権を主張するものである。両文献はここに参照によってその全体において組み込まれる。
〈発明の分野〉
本開示は概括的にはオーディオ信号処理に関する。
デジタル・オーディオ・データ圧縮はオーディオ産業において重要な技術となっている。伝統的な技術を使うときに必要とされる高いデータ帯域幅の必要なしに高品質のオーディオ再生を可能にする新しいフォーマットが導入されている。AC-3およびより最近ではエンハンストAC-3(E-AC-3)符号化技術は、先進テレビジョン・システム委員会(ATSC: Advanced Television Systems Committee)によって米国における高精細度テレビジョン(HDTV: High Definition Television)のためのオーディオ・サービス規格として採用された。E-AC-3は消費者メディア(デジタル・ビデオ・ディスク)および直接衛星放送でも応用を見出している。E-AC-3は知覚的な符号化の例であり、デジタル・オーディオの複数のチャンネルを符号化されたオーディオおよびメタデータのビットストリームに符号化することを提供する。
Advanced Television Systems Committee, Inc. (ATSC), "Digital Audio Compression Standard (AC-3, E-AC-3)", Revision B, Document A/52B, 14 June 2005、URL: www^dot^atsc^dot^org/cms/standards/a_52b^dot^pdf(^dot^は実際のウェブ・アドレスではピリオド(「.」)を表す)、2009年12月1日アクセス
符号化されたオーディオ・ビットストリームを効率的に復号することに関心が向けられている。たとえば、ポータブル機器のバッテリー寿命は主としてその主処理ユニットのエネルギー消費によって制限される。処理ユニットのエネルギー消費は、そのタスクの計算量に密接に関係している。よって、ポータブル・オーディオ処理システムの計算量を減らすことは、そのようなシステムのバッテリー寿命を延ばすはずである。
x86という用語は、インテル8086プロセッサに起源をもつプロセッサ命令セット・アーキテクチャーのファミリーを指すことが当業者によって一般に理解される。x86命令セット・アーキテクチャーがあまねく広まっている結果として、x86命令セット・アーキテクチャーをもつプロセッサまたは処理システム上で符号化されたオーディオ・ビットストリームを効率的に復号することにも関心が寄せられている。多くのデコーダ実装は性質上、一般的である。一方、埋め込まれるプロセッサのために特別に設計されるものもある。AMDのGeodeおよび新たなインテル・アトムのような新しいプロセッサはx86命令セットを使用し、小型のポータブル機器において使用される32ビットおよび64ビット設計の例である。
課題は、請求項記載の手段によって解決される。
実行されると典型的なAC-3復号プロセスを実行する命令のための擬似コード100を示す図である。 一つまたは複数の共通モジュールを有利に使用できるいくつかの異なるデコーダ構成を示すブロック概略図である。 フロントエンド復号モジュールのある実施形態の擬似コードおよびブロック概略図である。 フロントエンド復号モジュールのある実施形態の動作のための簡略化されたデータフロー図である。 バックエンド復号モジュールのある実施形態の擬似コードおよびブロック概略図である。 バックエンド復号モジュールの別の実施形態の擬似コードおよびブロック概略図である。 バックエンド復号モジュールのある実施形態の動作のための簡略化されたデータフロー図である。 バックエンド復号モジュールの別の実施形態の動作のための簡略化されたデータフロー図である。 図7に示されるもののようなバックエンド復号モジュールのための処理のある実施形態のフローチャートである。 5.1から2.0へのダウンミキシングを含む非重複変換(non-overlap transform)の場合についての、本開示の技法を使った、5.1から2.0へのダウンミキシングを含む5つの処理ブロックの例を示す図である。 重複変換(overlapping transform)の場合についての、本発明のある実施形態を使った、5.1から2.0へのダウンミキシングを含む5つの処理ブロックのもう一つの例を示す図である。 時間領域ダウンミキシングのある実施形態についての簡略化された擬似コードを示す図である。 本発明の一つまたは複数の特徴を含む、少なくとも一つのプロセッサを含み、復号を実行できる処理システムのある実施形態のブロック概略図である。
〈概要〉
本発明の実施形態は、方法、装置および一つまたは複数のコンピュータ可読の有形の媒体にエンコードされた諸工程を実行するための論理を含む。
個別的な実施形態は、N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するオーディオ・デコーダを動作させる方法を含み、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数である。本方法は、N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れる段階と;受け入れたオーディオ・データを復号する段階とを含む。復号する段階は:周波数領域の指数および仮数データをアンパックおよび復号する段階と;アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定する段階と;周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定する段階と;M<Nの場合についてダウンミキシング・データに従って決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングする段階とを含む。A1、B1およびC1のうちの少なくとも一つは真である。
A1は、前記復号する段階は、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定し、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用することを含むことである。
B1は、前記時間領域ダウンミキシングが、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む、ことである。
C1は、本方法が、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含み、非寄与チャンネルとは、M.m個のチャンネルに寄与しないチャンネルであり、本方法が、同定された一つまたは複数の非寄与チャンネルに対しては、周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである。
本発明の個別的な実施形態は、処理システムの一つまたは複数のプロセッサによって実行されたときに処理システムに、N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成することを実行させる復号命令を記憶しているコンピュータ可読記憶媒体を含み、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数である。前記復号命令は、実行されたときに、N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れさせる命令と;実行されたときに、受け入れたオーディオ・データを復号させる命令とを含む。実行されたときに復号させる前記命令は:実行されたときに、周波数領域の指数および仮数データをアンパックおよび復号させる命令と;実行されたときに、アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定させる命令と;実行されたときに周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定させる命令と;実行されたときに、M<Nであるかどうかを見きわめさせる命令と;実行されたときにM<Nの場合についてダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングさせる命令とを含む。A2、B2およびC2のうちの少なくとも一つは真である。
A2は、実行されたときに復号させる前記命令が、実行されたときに、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定させる命令と、実行されたときに、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、周波数領域ダウンミキシングを適用させる命令とを含むことである。
B2は、前記時間領域ダウンミキシングが、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む、ことである。
C2は、実行されたときに復号させる前記命令が、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含み、非寄与チャンネルとは、M.m個のチャンネルに寄与しないチャンネルであり、前記方法が、同定された一つまたは複数の非寄与チャンネルに対しては、周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである。
個別的な実施形態は、N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するオーディオ・データ処理装置を含み、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数である。本装置は、N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れる手段と;受け入れたオーディオ・データを復号する手段とを含む。復号する手段は:周波数領域の指数および仮数データをアンパックおよび復号する手段と;アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定する手段と;周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定する手段と;M<Nの場合についてダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングする手段とを含む。A3、B3およびC3のうちの少なくとも一つは真である。
A3は、前記復号する手段が、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定する手段と、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用する周波数領域ダウンミキシング適用手段とを含むことである。
B3は、前記時間領域ダウンミキシングする手段が、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかの試験を実行し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングを適用する、ことである。
C3は、本装置が、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定する手段を含み、非寄与チャンネルとは、M.m個のチャンネルに寄与しないチャンネルであり、本装置が、同定された一つまたは複数の非寄与チャンネルに対しては、周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである。
個別的な実施形態は、N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを処理してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成する装置を含み、M≧1であり、n=0または1はエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、m=0または1は復号オーディオ・データにおける低周波数効果チャンネルの数である。本装置は、エンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データを含むオーディオ・データを受け入れる手段であって、前記エンコード方法は、N.nチャンネルのデジタル・オーディオ・データを、逆変換およびさらなる処理によってエイリアシング・エラーなしで時間領域サンプルを復元できるよう変換し、周波数領域の指数および仮数データを形成およびパッキングし、該周波数領域の指数および仮数データに関係するメタデータを形成およびパッキングすることを含み、前記メタデータは任意的に、過渡プレノイズ処理(transient pre-noise processing)に関係したメタデータを含む、手段と;受け入れたオーディオ・データを復号する手段とを有する。復号する手段は:フロントエンド復号のための一つまたは複数の手段とバックエンド復号のための一つまたは複数の手段とを有する。フロントエンド復号のための手段は、メタデータのアンパックのためであり、周波数領域の指数および仮数データのアンパックおよび復号のためである手段を含む。バックエンド復号のための手段は、アンパックされて復号された周波数領域の指数および仮数データから変換係数を決定するため;周波数領域データを逆変換するため;窓処理(windowing)および重複加算(overlap-add)演算を適用してサンプリングされたオーディオ・データを決定するため;過渡プレノイズ処理に関係した前記メタデータに従って、必要とされる過渡プレノイズ処理復号があればそれを適用するため;およびダウンミキシング・データに従って時間領域ダウンミキシングのための手段を含む。前記ダウンミキシングは、M<Nの場合にダウンミキシング・データに従ってデータの少なくともいくつかのブロックを時間領域ダウンミキシングするよう構成される。A4、B4およびC4のうちの少なくとも一つは真である。
A4は、前記バックエンド復号のための手段が、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定する手段と、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用する周波数領域ダウンミキシング適用手段とを含むことである。
B4は、前記時間領域ダウンミキシングする手段が、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかの試験を実行し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングを適用する、ことである。
C4は、本装置が、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定する手段を含み、非寄与チャンネルとは、M.m個のチャンネルに寄与しないチャンネルであり、バックエンド復号のための手段が、同定された一つまたは複数の非寄与チャンネルに対しては、周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである。
個別的な実施形態は、N.nチャンネルのオーディオ・データのエンコードされたオーディオ・データを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するシステムを含み、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数である。本システムは:一つまたは複数のプロセッサと;前記一つまたは複数のプロセッサに結合された記憶サブシステムとを有する。本システムは、N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れ;さらに、受け入れたオーディオ・データを復号する。復号する段階は:周波数領域の指数および仮数データをアンパックおよび復号し;アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定し;周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定し;M<Nの場合についてはダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングすることを含む。A5、B5およびC5のうちの少なくとも一つは真である。
A5は、前記復号が、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定し、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用することを含むことである。
B5は、前記時間領域ダウンミキシングが、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む、ことである。
C5は、前記方法が、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含み、非寄与チャンネルとは、M.m個のチャンネルに寄与しないチャンネルであり、前記方法が、同定された一つまたは複数の非寄与チャンネルに対しては、周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである。
システム実施形態のいくつかのバージョンでは、受け入れたオーディオ・データは、符号化されたデータのフレームからなるビットストリームの形であり、記憶サブシステムは、前記処理システムの前記プロセッサの一つまたは複数によって実行されたとき、受け入れたオーディオ・データの復号をさせる命令を与えられる。
システム実施形態のいくつかのバージョンは、ネットワーク・リンクを介してネットワーク接続される一つまたは複数のサブシステムを含む。各サブシステムは少なくとも一つのプロセッサを含む。
A1、A2、A3、A4またはA5が真であるいくつかの実施形態では、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかの決定は、過渡プレノイズ処理があるかどうかを判定し、N個のチャンネルのうちのいずれかが異なるブロック型を有しているかどうかを判定し、前記N個のチャンネルにおいて同じブロック型をもち、過渡プレノイズ処理をもたず、M<Nであるブロックについてのみ周波数領域ダウンミキシングが適用されることを含む。
A1、A2、A3、A4またはA5が真であり、前記エンコード方法における変換が重複変換〔重畳変換〕(overlapped-transform)を含み、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含むいくつかの実施形態では、(i)前記特定のブロックについて周波数領域ダウンミキシングを適用することは、前のブロックについてのダウンミキシングが時間領域ダウンミキシングであったかどうかを判定し、前のブロックについてのダウンミキシングが時間領域ダウンミキシングであった場合、前記特定のブロックの復号データと重ねられるべき前のブロックのデータに対して時間領域ダウンミキシング(または擬似時間領域(pseudo-time domain)におけるダウンミキシング)を適用することを含み、(ii)特定のブロックについて時間領域ダウンミキシングを適用することは、前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであったかどうかを判定し、前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであった場合、前記特定のブロックを、前のブロックについてのダウンミキシングが周波数領域ダウンミキシングでなかった場合とは異なる仕方で処理することを含む。
B1、B2、B3、B4またはB5が真であるいくつかの実施形態では、ベクトル命令を含むストリーミング単一命令複数データ拡張(SSE:streaming single instruction multiple data extensions)を含む命令セットを有する少なくとも一つのx86プロセッサが使用され、時間領域ダウンミキシングは前記一つまたは複数のx86プロセッサの少なくとも一つの上でベクトル命令を実行することを含む。
C1、C2、C3、C4またはC5が真であるいくつかの実施形態では、n=1かつm=0であり、それにより逆変換およびさらなる処理の適用は低周波数効果チャンネル上では実行されない。さらに、Cが真であるいくつかの実施形態では、エンコードされたブロックを含むオーディオ・データは、ダウンミキシングを定義する情報を含み、一つまたは複数の非寄与チャンネルを同定することは、ダウンミキシングを定義する情報を使う。さらに、Cが真であるいくつかの実施形態では、一つまたは複数の非寄与チャンネルを同定することは、さらに、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することを含み、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも15dB低い場合である。いくつかの場合については、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも18dB低い場合であり、一方、他の用途では、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも25dB低い場合である。
いくつかの実施形態では、エンコードされたオーディオ・データは、AC-3規格、E-AC-3規格、E-AC-3規格に対して上位互換である規格、MPEG-2 AAC規格およびHE-AAC規格からなる規格の集合のうちの一つに従ってエンコードされている。
本発明のいくつかの実施形態では、前記エンコード方法における変換は、重複変換を使い、前記さらなる処理は、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含む。
本発明のいくつかの実施形態では、前記エンコード方法は、周波数領域の指数および仮数データに関係したメタデータを形成およびパッキングすることを含み、前記メタデータは任意的に、過渡プレノイズ処理およびダウンミキシングに関係したメタデータを含む。
個別的な実施形態は、これらの側面、特徴または利点の全部を提供することもあれば、一部を提供することもあれば、あるいは一つも提供しないこともある。個別的な実施形態は、一つまたは複数の他の側面、特徴または利点を提供することもありえ、その一つまたは複数は、本願の図面、明細書および請求項から当業者にはすぐ明白となりうる。
〈エンコードされたストリームの復号〉
拡張AC-3(E-AC-3: Extended AC-3)規格に従って符号化ビットストリームに符号化されたオーディオを復号するための本発明の諸実施形態について述べる。E-AC-3およびそれ以前のAC-3規格は非特許文献1において詳細に記載されている。しかしながら、本発明はE-AC-3でエンコードされたビットストリームの復号に限定されるものではなく、別の符号化方法に従ってエンコードされたビットストリームのデコーダおよび復号や、そのような復号方法、符号装置、そのような復号を実行するシステム、実行されたときに一つまたは複数のプロセッサにそのような復号を実行させるソフトウェアおよび/またはそのようなソフトウェアが記憶されている有形の記憶媒体にも適用されうる。たとえば、本発明の諸実施形態は、MPEG-2 AAC(ISO/IEC 13818-7)およびMPEG-4オーディオ(ISO/IEC 14496-3)規格に従って符号化されたオーディオの復号にも適用可能である。MPEG-4オーディオ規格は、高効率AACバージョン1(HE-AAC v1: High Efficiency AAC version 1)および高効率AACバージョン2(HE-AAC v2)符号化の両方を含む。これらは本稿ではまとめてHE-AACと称される。
AC-3およびE-AC-3はドルビー(登録商標)デジタルおよびドルビー(登録商標)デジタル・プラスとしても知られる。いくつかの追加的な互換な改善を組み込んだHE-AACのバージョンもドルビー(登録商標)パルスとして知られる。これらは本発明の被譲渡者であるドルビー・ラボラトリーズ・ライセンシング・コーポレーションの商標であり、一つまたは複数の管轄域において登録されていることがありうる。E-AC-3はAC-3と互換であり、追加的な機能を含む。
x86アーキテクチャー
x86という用語は、インテル8086プロセッサに起源をもつプロセッサ命令セット・アーキテクチャーのファミリーを指すことが当業者によって一般に理解される。このアーキテクチャーは、インテル、サイリックス、AMD、VIAおよび他の多くの会社からのプロセッサにおいて実装されてきた。一般に、この用語は、インテル80386プロセッサの32ビット命令セットとのバイナリー互換性を含意するものと理解される。今日(2010年初頭)、x86アーキテクチャーはデスクトップおよびノートブック・コンピュータの間ではあまねく広まっており、またサーバーおよびワークステーションの間でも多数派として増えつつある。MS-DOS、ウィンドウズ、リナックス、BSD、ソラリスおよびMac OS Xといった多くのソフトウェアがこのプラットフォームをサポートしている。
本稿での用法では、用語x86は、単一命令複数データ(SIMD: single instruction multiple data)命令セット拡張(SSE)をもサポートするx86プロセッサ命令セット・アーキテクチャーを意味する。SSEはもとのx86アーキテクチャーに対する単一命令複数データ(SIMD)命令セット拡張であり、1999年にインテルのペンティアムIIIシリーズのプロセッサにおいて導入され、今や多くのベンダーによって製造されるx86アーキテクチャーにおいて普通になっている。
AC-3およびE-AC-3ビットストリーム
複数チャンネル・オーディオ信号のAC-3ビットストリームはフレームから構成される。フレームは、すべての符号化されたチャンネルにわたるオーディオ信号の1536個のパルス符号変調(PCM)されたサンプルの一定の時間期間を表す。五つまでのメイン・チャンネルおよび任意的に、「.1」と表される低周波数効果(LFE: low frequency effects)チャンネルが提供される。すなわち、5.1チャンネルまでのオーディオが提供される。各フレームは固定サイズをもち、そのサイズはサンプル・レートおよび符号化されるデータ・レートのみに依存する。
手短に言うと、AC-3符号化は、重複変換――50%重複をもつカイザー・ベッセル派生(KBD: Kaiser Bessel derived)窓を用いた修正離散コサイン変換(MDCT: modified discrete cosine transform)――を使って時間データを周波数データに変換することを含む。周波数データは、該データを圧縮するために知覚的に符号化され、圧縮されたビットストリームを形成する。そのビットストリームの各フレームは、符号化されたオーディオ・データおよびメタデータを含む。各AC-3フレームは独立した実体であり、時間データを周波数データに変換するのに使われたMDCTに内在する変換の重なり(transform overlap)のほかは、前の諸フレームと何らデータを共有しない。
各AC-3フレームの先頭には、SI(Sync Information[同期情報])およびBSI(Bit Stream Information[ビットストリーム情報])フィールドがある。SIおよびBSIフィールドは、サンプル・レート、データ・レート、符号化されるチャンネルの数およびいくつかの他のシステム・レベルの要素を含むビットストリーム構成を記述する。フレーム毎に、先頭と末尾に一つずつ、誤り検出手段を提供する二つのCRC(cyclic redundancy code[巡回冗長符号])語もある。
各フレーム内には六つのオーディオ・ブロックがあり、各ブロックはオーディオ・データの符号化されたチャンネル毎に256個のPCMサンプルを表現する。オーディオ・ブロックは、ブロック切り換えフラグ(block switch flags)、結合座標(coupling coordinates)、指数(exponents)、ビット割り当てパラメータ(bit allocation parameters)および仮数(mantissas)を含む。ブロック0に存在する情報がその後のブロックにおいて再利用されてもよいといったデータ共有が、フレーム内で許容される。
任意的な補助(aux)データ・フィールドがフレームの末尾に位置される。このフィールドは、システム設計者が、プライベートな制御または状態情報をシステム・ワイドな伝送のためにAC-3ビットストリーム中に埋め込めるようにする。
E-AC-3は六つの256係数変換というAC-3のフレーム構造を保存している、一方で、一つ、二つおよび三つの256係数変換ブロックからなるより短いフレームをも許容する。これは、640kbpsより大きなデータ・レートでのオーディオの転送を可能にする。各E-AC-3フレームはメタデータおよびオーディオ・データを含む。
E-AC-3は、AC-3の5.1より有意に多数のチャンネルを許容する。特に、E-AC-3は今日一般的な6.1および7.1オーディオの搬送を許容し、たとえば将来のマルチチャンネル・オーディオ・サウンド・トラックをサポートするための少なくとも13.1チャンネルの搬送を許容する。5.1を超える追加的なチャンネルは、メイン・オーディオ・プログラム・ビットストリームを、8個までの追加的な従属ビットストリームと関連付けることによって得られる。該従属ビットストリームはみな、一つのE-AC-3ビットストリームに多重化される。これは、メイン・オーディオ・プログラムがAC-3の5.1チャンネル・フォーマットを伝送することを許容し、その一方で追加的なチャンネル容量は従属ビットストリームに由来する。これは、5.1チャンネル・バージョンおよびさまざまな従来式のダウンミックスが常に利用可能であり、チャンネル代替プロセスの使用により、マトリクス減算に誘起された符号化アーチファクトが解消されることを意味する。
それぞれ関連付けられた従属サブストリームをもつ可能性がある七つのさらなる独立オーディオ・ストリームを搬送できることにより、複数プログラム・サポートも利用可能となり、各プログラムのチャンネル搬送を5.1チャンネルを超えて増大させる。
AC-3は、オーディオ素材を知覚的に符号化するために、比較的短い変換および単純なスカラー量子化を使う。E-AC-3は、AC-3と互換でありながら、改善されたスペクトル分解能、改善された量子化および改善された符号化を提供する。E-AC-3では、符号化効率はAC-3より高められており、低めのデータ・レートを有益に使用できる。これは、時間データを周波数領域データに変換するための改善されたフィルタバンク、改善された量子化、向上されたチャンネル結合、スペクトル拡張および過渡プレノイズ処理(TPNP: transient pre-noise processing)と呼ばれる技法を使って達成される。
時間データを周波数データに変換するための重複変換MDCTに加えて、E-AC-3は、定常的なオーディオ信号について適応ハイブリッド変換(AHT: adaptive hybrid transform)を使う。AHTは重複カイザー・ベッセル派生(KBD)窓を用いたMDCTと、定常信号についてはそれに続く、非窓処理、非重複のII型離散コサイン変換(DCT)の形の二次ブロック変換とを含む。このように、AHTは、定常的な特性をもつオーディオが存在するとき、既存のAC-3のMDCT/KBDフィルタバンクのあとに第二段のDCTを追加して、六個の256係数変換ブロックを周波数分解能が増した単一の1536係数ハイブリッド変換ブロックに変換する。この増大した周波数分解能は、六次元ベクトル量子化(VQ: vector quantization)および利得適応量子化(GAQ: gain adaptive quantization)と組み合わされて、いくつかの信号、たとえば「符号化困難な」信号について符号化効率を改善する。VQは、それほどの精度が要求されない周波数帯域を効率的に符号化するのに使われ、GAQは高めの精度の量子化が要求されるときにより高い効率を提供する。
改善された符号化効率は、位相保存(phase preservation)とともにチャンネル結合(channel coupling)を使うことを通じても得られる。この方法は、復号時に各チャンネルの高周波数部分を再構成する高周波数モノ複合チャンネルを使うAC-3のチャンネル結合方法をもとに拡張する。位相情報の追加と、ビットストリーム中で送られるスペクトル振幅情報の、エンコーダに制御される処理とがこのプロセスの忠実度を改善し、それにより、モノ複合チャンネルが、それまで可能であったより低い周波数に拡張されることができる。これはエンコードされる有効帯域幅を減らし、よって符号化効率を高める。
E-AC-3はスペクトル拡張をも含む。スペクトル拡張は、上の(upper)周波数変換係数を、下の(lower)周波数スペクトル・セグメントを周波数において上に移したもので置き換えることを含む。移されたセグメントのスペクトル特性は、変換係数のスペクトル修正を通じて、また整形されたノイズ成分の移された下の周波数スペクトル・セグメントとの混合と通じて、オリジナルにマッチされる。
E-AC-3は低周波数効果(LFE)チャンネルを含む。これは、限られた(<120Hz)帯域幅の任意的な単一のチャンネルであり、フル帯域幅のチャンネルに対して+10dBのレベルで再生されることが意図されている。この任意的なLFEチャンネルにより、低周波数音について高い音圧レベルが提供できる。他の符号化規格、たとえばAC-3およびHE-AACも任意的なLFEチャンネルを含む。
低データ・レートでのオーディオ品質を改善するための追加的な技法は、後述する過渡プレノイズ処理の使用である。
AC-3復号
典型的なAC-3デコーダ実装では、メモリおよびデコーダ・レイテンシ要求をできるだけ小さくしておくため、各AC-3フレームは一連のネストされたループにおいて復号される。
第一のステップはフレーム整列を確立する。これは、AC-3同期語を見出し、次いでCRC誤り検出語が誤りなしを示していることを確認することを含む。ひとたびフレーム同期が見出されたら、BSIデータがアンパックされて、符号化されたチャンネル数といった重要なフレーム情報を決定する。チャンネルの一つはLFEチャンネルであってもよい。符号化されたチャンネル数は本稿ではN.nと記される。ここで、nはLFEチャンネルの数であり、Nはメイン・チャンネルの数である。現在使われている符号化規格では、n=0または1である。将来には、n>1であるケースが生じることがありうる。
復号における次のステップは、六つのオーディオ・ブロックのそれぞれをアンパックすることである。出力パルス符号変調データ(PCM)バッファのメモリ要求を最小限にするため、オーディオ・ブロックは一つずつアンパックされる。各ブロック期間の終わりに、PCM結果が、多くの実装では、出力バッファにコピーされ、該バッファはハードウェア・デコーダでのリアルタイム動作のために、典型的には、デジタル‐アナログ変換器(DAC: digital-to-analog converter)による直接割り込みアクセス(direct interrupt access)のためにダブル・バッファリングまたは環状バッファリングされる。
AC-3デコーダのオーディオ・ブロック処理は、二つの相異なる段階に分割できる。それらの段階をここでは入力処理および出力処理と称する。入力処理はあらゆるビットストリーム・アンパッキングおよび符号化チャンネル操作を含む。出力処理は主として逆MDCT変換の窓処理および重複加算段階を指す。
この区別をするのは、本稿でM≧1で表す、AC-3デコーダによって生成されるメイン出力チャンネルの数が必ずしも、本稿でNで表す(N≧1)ビットストリーム中にエンコードされている入力メイン・チャンネルの数に一致しないからである。必ずというわけではないが、典型的にはN≧Mである。ダウンミキシングの使用により、デコーダはいかなる数Nの符号化されるチャンネルをもつビットストリームでも受け入れることができ、任意の数Mの(M≧1)出力チャンネルを生成できる。一般に、本稿では出力チャンネルの数はM.mと表され、Mはメイン・チャンネルの数であり、mはLFE出力チャンネルの数であることを注意しておく。今日の応用では、m=0または1である。将来にはm>1とすることも可能でありうる。
ダウンミキシングにおいて、符号化されたチャンネルのすべてが出力チャンネルに含められるわけではないことを注意しておく。たとえば、5.1からステレオへのダウンミックスでは、LFEチャンネル情報は通例破棄される。このように、一部のダウンミキシングでは、n=1かつm=0である。すなわち、出力LFEチャンネルはない。
図1は、実行されたときに典型的なAC-3復号プロセスを行う命令の擬似コード100を示している。
AC-3復号における入力処理は典型的には、デコーダが、オーディオ・ブロックの先頭に位置するパラメータおよびフラグの集合である固定オーディオ・ブロック・データをアンパックするときに始まる。この固定データは、ブロック切り換えフラグ、結合情報、指数およびビット割り当てパラメータといった項目を含む。「固定データ(fixed data)」という用語は、これらのビットストリーム要素のための語のサイズが先験的に知られており、そのような要素を復元するために可変長復号プロセスは必要とされないという事実をいったものである。
指数は、符号化された各チャンネルからのすべての指数を含むので、固定データ領域中の単一の最も大きなフィールドをなす。符号化モードに依存して、AC-3では、仮数一つ当たり最大一つの指数があってもよく、チャンネル一つ当たり253までの仮数があってもよい。これらの指数のすべてをローカル・メモリにアンパックするのではなく、多くのデコーダ実装は指数フィールドへのポインタを保存し、必要とされる際に一チャンネルずつアンパックする。
ひとたび固定データがアンパックされると、多くの既知のAC-3デコーダは符号化された各チャンネルの処理を開始する。まず、所与のチャンネルについての指数が入力フレームからアンパックされる。次いで、ビット割り当て計算が典型的には実行され、これは前記指数およびビット割り当てパラメータを受けて、パックされた各仮数についての語のサイズを計算する。次いで仮数が典型的には入力フレームからアンパックされる。仮数は、適切なダイナミックレンジ制御を与え、必要であれば結合動作を打ち消すために、スケーリングされ、次いで指数によって非正規化される(denormalized)。最後に、プレ重複加算(pre-overlap-add)データという、「窓領域(window domain)」と呼ばれるものの中のデータを決定するために、逆変換が計算され、その結果が、その後の出力処理のために、適切なダウンミックス・バッファ中にダウンミキシングされる。
いくつかの実装では、個々のチャンネルについての指数は「MDCTバッファ」と呼ばれる256サンプル長のバッファ中にアンパックされる。これらの指数は次いでビット割り当ての目的のために50もの帯域にグループ化される。各帯域中の指数の数は、より高いオーディオ周波数に向かうほど増大し、ほぼ、音響心理学上の臨界帯域をモデル化する対数的な分割に従う。
これらのビット割り当て帯域のそれぞれについて、指数およびビット割り当てパラメータが組み合わされて、その帯域中の各仮数について仮数語サイズが生成される。これらの語サイズは24サンプル長の帯域バッファに記憶され、最も幅広いビット割り当て帯域は24個の周波数ビンからなる。ひとたびこれらの語サイズが計算されたら、対応する仮数が入力フレームからアンパックされて、もとの帯域バッファ中のしかるべき位置に記憶される。これらの仮数はスケーリングされ、対応する指数によって非正規化され、書き込まれる、たとえばもとのMDCTバッファ中のしかるべき位置に書き込まれる。すべての帯域が処理され、すべての仮数がアンパックされたのち、MDCTバッファ中に残っている位置があればそれらの位置は典型的にはゼロが書き込まれる。
逆変換が実行される、たとえばMDCTバッファ中のしかるべき位置で実行される。この処理の出力である窓領域データは、次いで、メタデータに従って決定される、たとえばメタデータに従ってあらかじめ定義されたデータからフェッチされるダウンミックス・パラメータに従って、適切なダウンミックス・バッファ中にダウンミキシングされることができる。
ひとたび入力処理が完了し、ダウンミックス・バッファが窓領域のダウンミックスされたデータをもってフルに生成されたら、デコーダは出力処理を実行できる。各出力チャンネルについて、ダウンミックス・バッファおよびその対応する128サンプル長の半ブロック遅延バッファが窓処理され、組み合わされて、256個のPCM出力サンプルを生じる。デコーダおよび一つまたは複数のDACを含むハードウェア・サウンド・システムでは、これらのサンプルはDAC語幅に丸められ、出力バッファにコピーされる。ひとたびこれがなされたら、ダウンミックス・バッファの半分は次いでその対応する遅延バッファにコピーされる。これにより、次のオーディオ・ブロックの適正な再構成に必要な50%の重複情報が与えられる。
E-AC-3復号
本発明の個別的な実施形態は、M.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するよう、エンコードされたオーディオ・データのN.nで表されるある数のチャンネルを含むオーディオ・データを復号するオーディオ・デコーダ、たとえばE-AC-3エンコードされたオーディオ・データを復号するE-AC-3オーディオ・デコーダを動作させる方法を含む。ここで、n=0または1であり、m=0または1であり、M≧1である。n=1は一つの入力LFEチャンネルを示し、m=1は一つの出力LFEチャンネルを示す。M<Nであることはダウンミキシングを示し、M>Nであることはアップミキシングを示す。
本方法は、N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを受け入れ、エンコード方法によってエンコードすることを含む。該エンコード方法は、たとえば重複変換を使ってNチャンネルのデジタル・オーディオ・データを変換し、周波数領域の指数および仮数データを形成およびパッキングし、前記周波数領域の指数および仮数データに関係したメタデータを形成およびパッキングすることを含むエンコード方法であり、たとえばE-AC-3エンコード方法である。前記メタデータは任意的に、過渡プレノイズ処理に関係したメタデータを含む。
本稿に記載されるいくつかの実施形態は、E-AC-3規格またはE-AC-3規格に対して上位互換な規格に従ってエンコードされ、5つより多い符号化されたメイン・チャンネルを含んでいてもよいエンコードされたオーディオ・データを受け入れるよう設計される。
下記でより詳細に述べるように、本方法は、受け入れられたオーディオ・データを復号することを含む。復号は:前記メタデータをアンパックし、周波数領域の指数および仮数データをアンパックおよび復号し;アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定し;周波数領域データを逆変換し;窓処理および重複加算を適用してサンプリングされたオーディオ・データを決定し;過渡プレノイズ処理に関係した前記メタデータに従って必要とされる過渡プレノイズ処理復号があればそれを適用し;M<Nの場合、ダウンミキシング・データに従って、ダウンミキシングすることを含む。ダウンミキシングは、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従ってダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、ダウンミキシングすることを含む。
本発明のいくつかの実施形態では、デコーダは、ベクトル命令を含む、ストリーミング単一命令複数データ(SIMD)拡張(SSE)命令を実行する少なくとも一つのx86プロセッサを使う。そのような実施形態では、ダウンミキシングは、前記一つまたは複数のx86プロセッサの少なくとも一つでベクトル命令を走らせることを含む。
本発明のいくつかの実施形態では、AC-3オーディオであってもよいE-AC-3オーディオ用の復号方法は、二回以上適用できる、すなわち異なるデコーダ実装において二回以上インスタンス生成されることのできる動作モジュールに分割される。復号を含む方法の場合、復号は、フロントエンド復号(FED: front-end decode)動作のセットとバックエンド復号(BED: back-end decode)動作のセットに分割される。後述するように、フロントエンド復号動作はAC-3またはE-AC-3ビットストリームのフレームの周波数領域の指数および仮数データをアンパックおよび復号して、そのフレームについての、アンパックされ復号された周波数領域の指数および仮数データおよびそのフレームの付随するメタデータを得る。バックエンド復号動作は、変換係数を決定し、決定された変換係数を逆変換し、窓処理および重複加算動作を適用し、必要とされる過渡プレノイズ処理復号があればそれを適用し、ビットストリーム中の符号化されているチャンネルより少数の出力チャンネルがある場合には、ダウンミキシングを適用することを含む。
本発明のいくつかの実施形態は、処理システムの一つまたは複数のプロセッサによって実行されたときに処理システムに、N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成することを実行させる命令を記憶しているコンピュータ可読記憶媒体を含み、M≧1である。今日の規格では、n=0または1であり、m=0または1であるが、本発明はそれに限定されない。前記命令は、実行されたときに、エンコード方法、たとえばAC-3またはE-AC-3によってエンコードされた、N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを受け入れさせる命令を含む。前記命令はさらに、実行されたときに、受け入れられたオーディオ・データを復号させる命令を含む。
そのようないくつかの実施形態では、受け入れられたオーディオ・データは、符号化されたデータのフレームからなるAC-3またはE-AC-3ビットストリームの形である。実行されたときに、受け入れられたオーディオ・データを復号させる前記命令は、フロントエンド復号(FED)モジュールおよびバックエンド復号(BED)モジュールを含む、一組の再使用可能な命令モジュールに分割される。フロントエンド復号モジュールは、実行されたときに、ビットストリームのフレームの周波数領域の指数および仮数データをアンパックおよび復号してそのフレームについてのアンパックされ復号された周波数領域の指数および仮数データおよびそのフレームの付随するメタデータにさせる命令を含む。バックエンド復号モジュールは、実行されたときに、変換係数を決定し、逆変換し、窓処理および重複加算動作を適用し、必要とされる過渡プレノイズ処理復号があればそれを適用し、入力された符号化されているチャンネルより少数の出力チャンネルがある場合には、ダウンミキシングを適用することを行わせる命令を含む。
図2のA〜Dは、一つまたは複数の共通モジュールを有利に使用できるいくつかの異なるデコーダ構成をブロック概略図の形で示している。図2のAは、AC-3またはE-AC-3で符号化された5.1オーディオのための例示的なE-AC-3デコーダ200のブロック概略図である。もちろん、ブロック図におけるブロックをいうときの用語「ブロック」の使用は、ある量のオーディオ・データを表す、オーディオ・データのブロックと同じではない。デコーダ200は、AC-3またはE-AC-3フレームを受け入れ、フレームごとに、フレームのメタデータをアンパックし、フレームのオーディオ・データを復号して周波数領域の指数および仮数データにすることを行うフロントエンド復号(FED)モジュール201を含む。デコーダ200はまた、フロントエンド復号モジュール201からの周波数領域の指数および仮数データを受け入れ、それを5.1チャンネルまでのPCMオーディオ・データに復号するバックエンド復号(BED)モジュール203をも含む。
デコーダのフロントエンド復号モジュールおよびバックエンド復号モジュールへの分解は、設計上の選択であり、必須の分割ではない。そのような分割は、いくつかの代替的な構成で共通のモジュールをもつという恩恵を与える。FEDモジュールは、そのような代替的な諸構成に共通であることができ、多くの構成では、FEDモジュールによって実行されるような、フレームのメタデータのアンパックおよびフレームのオーディオ・データを復号して周波数領域の指数および仮数データにすることが共通している。
代替的な構成の一例として、図2のBは、AC-3またはE-AC-3符号化5.1オーディオを復号するとともに、E-AC-3符号化フレームの5.1チャンネルまでのオーディオを5.1チャンネルまでのAC-3符号化フレームに変換する、E-AC-3符号化5.1オーディオのためのE-AC-3デコーダ/変換器210のブロック概略図である。デコーダ/変換器210は、AC-3またはE-AC-3フレームを受け入れ、フレームごとに、フレームのメタデータをアンパックし、フレームのオーディオ・データを復号して周波数領域の指数および仮数データにすることを行うフロントエンド復号(FED)モジュール201を含む。デコーダ/変換器210はまた、デコーダ200のバックエンド復号(BED)モジュールと同じまたは同様であり、フロントエンド復号モジュール201からの周波数領域の指数および仮数データを受け入れ、それを5.1チャンネルまでのPCMオーディオ・データに復号するバックエンド復号(BED)モジュール203をも含む。デコーダ/変換器210はまた、メタデータを変換するメタデータ変換器モジュール205と、フロントエンド復号モジュール201からの周波数領域の指数および仮数データを受け入れ、そのデータを、高々AC-3で可能な640kbpsの最大データ・レートの、5.1チャンネルまでのオーディオ・データのAC-3フレームとしてエンコードするバックエンド・エンコード・モジュール207とを含む。
代替的な構成の一例として、図2のCは、5.1チャンネルまでの符号化オーディオのAC-3フレームを復号するとともに7.1チャンネルまでのオーディオのE-AC-3符号化フレームを復号するE-AC-3デコーダのブロック概略図である。デコーダ220はフレーム情報解析モジュール221を含む。フレーム情報解析モジュール221は、BSIデータをアンパックし、フレームおよびフレーム種別を識別し、フレームを適切なフロントエンド・デコーダ要素に与える。一つまたは複数のプロセッサおよび実行されたときに各モジュールの機能を実行させる命令が記憶されているメモリを含む典型的な実装では、フロントエンド復号モジュールの複数のインスタンス生成したものおよびバックエンド復号モジュールの複数のインスタンス生成したものが動作していてもよい。E-AC-3デコーダのいくつかの実施形態では、BSIアンパッキング機能は、BSIデータを見るために、フロントエンド復号モジュールから分離される。これは、さまざまな代替的な実装において使用される共通のモジュールを提供する。図2のCは、7.1チャンネルまでのオーディオ・データに好適なそのようなアーキテクチャーをもつデコーダのブロック概略図である。図2のDは、そのようなアーキテクチャーをもつ5.1デコーダ240のブロック概略図である。デコーダ240はフレーム情報解析モジュール241、フロントエンド復号モジュール243およびバックエンド復号モジュール245を含む。これらのFEDおよびBEDモジュールは、図2のCのアーキテクチャーにおいて使用されたFEDおよびBEDモジュールと構造が同様であってもよい。
図2のCに戻ると、フレーム情報解析モジュール221は、5.1チャンネルまでの独立なAC-3/E-AC-3符号化フレームのデータを、AC-3またはE-AC-3フレームを受け入れ、フレームごとに、フレームのメタデータをアンパックし、フレームのオーディオ・データを復号して周波数領域の指数および仮数データにすることを行うフロントエンド復号モジュール223に与える。周波数領域の指数および仮数データは、デコーダ200のBEDモジュール203と同じまたは同様であるバックエンド復号モジュール225によって受け入れられる。バックエンド復号モジュール225は、フロントエンド復号モジュール223から周波数領域の指数および仮数データを受け入れ、そのデータを5.1チャンネルまでのPCMオーディオ・データに復号する。追加的なチャンネル・データの従属的なAC-3/E-AC-3符号化フレームがあればそれは、他のFEDモジュールと同様である別のフロントエンド復号モジュール227に与えられる。該別のフロントエンド復号モジュール227はフレームのメタデータをアンパックし、フレームのオーディオ・データを復号して周波数領域の指数および仮数データにする。バックエンド復号モジュール229はFEDモジュール227からデータを受け入れ、そのデータを復号して任意の追加的なチャンネルのPCMオーディオ・データにする。PCMチャンネル・マッピング器モジュール231が、それぞれのBEDモジュールからの復号されたデータを組み合わせて、7.1チャンネルまでのPCMデータを与えるのに使われる。
5つより多くの符号化されたメイン・チャンネルがある場合、すなわちN>5の場合、たとえば7.1符号化チャンネルがある場合、符号化されたビットストリームは、5.1までの符号化チャンネルの独立フレームと、少なくとも一つの従属フレームの符号化データとを含む。そのような場合のためのソフトウェア実施形態、たとえば実行のための命令を記憶するコンピュータ可読媒体を含む実施形態では、命令は、複数の5.1チャンネル復号モジュールとして構成され、各5.1チャンネル復号モジュールは、フロントエンド復号モジュールのそれぞれのインスタンス生成したものおよびバックエンド復号モジュールのそれぞれのインスタンス生成したものを含む。前記複数の5.1チャンネル復号モジュールは、実行されたときに独立フレームの復号をさせる第一の5.1チャンネル復号モジュールと、それぞれの従属フレームについての一つまたは複数の他のチャンネル復号モジュールとを含む。いくつかのそのような実施形態では、命令は、実行されたときに、各フレームからのビットストリーム情報(BSI)をアンパックしてフレームおよびフレーム種別を識別させ、識別されたフレームを適切なフロントエンド復号モジュールのインスタンス生成したものに与える命令のフレーム情報解析モジュールと、実行されたとき、N>5の場合、それぞれのバックエンド復号モジュールからの復号されたデータを組み合わせてN個のメイン・チャンネルの復号データを形成させる命令のチャンネル・マッピング器モジュールとを含む。
AC-3/E-AC-3デュアル・デコーダ変換器の動作方法
本発明のある実施形態は、それぞれ高々5.1チャンネルをもつ「メイン」および「付随」と表される二つのAC-3/E-AC-3入力ビットストリームを復号してPCMオーディオにし、変換の場合、メイン・オーディオ・ビットストリームをE-AC-3からAC-3に変換し、復号の場合、メイン・ビットストリームおよびもし存在すれば付随ビットストリームを復号する、デュアル・デコーダ変換器(DDC: dual decoder converter)の形である。デュアル・デコーダ変換器は、任意的に、付随オーディオ・ビットストリームから抽出された混合メタデータを使って、二つのPCM出力を混合する。
デュアル・デコーダ変換器の一つの実施形態は、前記二つまでのAC-3/E-AC-3入力ビットストリームの復号および/または変換に含まれるプロセスを実行するデコーダの動作方法を実行する。もう一つの実施形態は、処理システムの一つまたは複数のプロセッサによって実行されたときに、処理システムに、前記二つまでのAC-3/E-AC-3入力ビットストリームの復号および/または変換に含まれるプロセスを実行させる命令、たとえばソフトウェア命令を有する有形の記憶媒体の形である。
AC-3/E-AC-3デュアル・デコーダ変換器のある実施形態は、六つのサブコンポーネントを有し、そのいくつかは共通のサブコンポーネントを含む。それらのモジュールは下記のとおり。
デコーダ変換器:デコーダ変換器は、実行されたときに、AC-3/E-AC-3入力ビットストリーム(高々5.1チャンネル)を復号してPCMオーディオにする、および/または入力ビットストリームをE-AC-3からAC-3に変換するよう構成されている。デコーダ変換器は三つの主要なサブコンポーネントを有し、上記の図2のBに示した実施形態を実装できる。それらの主要なサブコンポーネントは下記のとおり。
フロントエンド復号:FEDモジュールは、実行されたときに、AC-3/E-AC-3ビットストリームのフレームを復号して、生の周波数領域のオーディオ・データおよびその付随メタデータにするよう構成されている。
バックエンド復号:BEDモジュールは、実行されたときに、FEDモジュールによって開始された復号プロセスの残りの部分を完遂するよう構成される。具体的には、BEDモジュールは(仮数および指数のフォーマットの)オーディオ・データを復号してPCMオーディオ・データにする。
バックエンド・エンコード:バックエンド・エンコード・モジュールは、実行されたときに、FEDからのオーディオ・データの六つのブロックを使ってAC-3フレームをエンコードするよう構成される。バックエンド・エンコード・モジュールはまた、実行されたときに、含まれているメタデータ変換器モジュールを使って、E-AC-3メタデータを、同期し、解決し(resolve)、ドルビー・デジタル・メタデータに変換するよう構成される。
5.1デコーダ:5.1デコーダ・モジュールは、実行されたときに、AC-3/E-AC-3入力ビットストリーム(高々5.1チャンネル)を復号してPCMオーディオにするよう構成される。5.1デコーダはまた、任意的に、外部アプリケーションによる使用のために、二つのAC-3/E-AC-3ビットストリームを混合するための混合メタデータを出力する。デコーダ・モジュールは二つの主要なサブコンポーネントを含む:上述したFEDモジュールと上述したBEDモジュールである。例示的な5.1デコーダのブロック図が図2のDに示されている。
フレーム情報:フレーム情報モジュールは、実行されたときに、AC-3/E-AC-3フレームをパースして、そのビットストリーム情報をアンパックするよう構成される。アンパック・プロセスの一環として、フレームに対してCRC検査が実行される。
バッファ記述子:バッファ記述子モジュールは、バッファ動作のためのAC-3、E-AC-3およびPCMバッファ記述および機能を含む。
サンプル・レート変換器:サンプル・レート変換器は任意的で、実行されたときに、PCMオーディオを2倍アップサンプリングするよう構成される。
外部混合器:外部混合器モジュールは任意的で、実行されたときに、メイン・オーディオ・プログラムおよび付随オーディオ・プログラムを、該付随オーディオ・プログラムにおいて供給される混合メタデータを使って混合して単一の出力オーディオ・プログラムにするよう構成される。
〈フロントエンド復号モジュールの設計〉
フロントエンド復号モジュールは、AC-3の方法に従って、かつ定常信号用のAHTデータの復号、E-AC-3の向上したチャンネル結合およびスペクトル拡張を含むE-AC-3の追加的な復号側面に従って、データを復号する。
有形の記憶媒体の形の実施形態の場合、フロントエンド復号モジュールは、処理システムの一つまたは複数のプロセッサによって実行されたときに、フロントエンド復号モジュールの動作について本稿で詳細に記述されている工程を引き起こす、有形の記憶媒体に記憶されたソフトウェア命令を含む。ハードウェア実装では、フロントエンド復号モジュールは、動作において、フロントエンド復号モジュールの動作について本稿で詳細に記述されている工程を実行するよう構成されている要素を含む。
AC-3復号では、ブロックごとの復号が可能である。E-AC-3では、最初のオーディオ・ブロック――フレームのオーディオ・ブロック0――は6ブロックすべてのAHT仮数を含む。よって、ブロックごとの復号は典型的には使われず、むしろいくつかのブロックが一度に処理される。しかしながら、実際のデータの処理はもちろん、各ブロックに対して実行される。
ある実施形態では、AHTが使われるかどうかに関わりなく、一様な復号方法/デコーダ・アーキテクチャを使うために、FEDモジュールは、チャネルごとに2つのパスを実行する。第一のパスは、ブロックごとにメタデータをアンパックし、パックされた指数および仮数のデータが記憶されている場所へのポインタを保存することを含み、第二のパスは、パックされた指数および仮数への保存されたポインタを使って、チャンネルごとに指数および仮数のデータをアンパックおよび復号することを含む。
図3は、たとえば実行されたときにFED処理を行わせるメモリ内に記憶された命令の集合として実装されるフロントエンド復号モジュールのある実施形態のブロック概略図である。図3はまた、2パスのフロントエンド復号モジュール300の第一のパスの命令についての擬似コードならびに2パスのフロントエンド復号モジュールの第二のパスの命令についての擬似コードをも示している。FEDモジュールは以下のモジュールを含む。各モジュールは命令を含み、いくつかのそのような命令は、構造およびパラメータを定義するという意味で定義的である。
チャンネル:チャンネル・モジュールは、メモリ内でオーディオ・チャンネルを表現するための構造を定義し、AC-3またはE-AC-3ビットストリームからオーディオ・チャンネルをアンパックおよび復号するための命令を提供する。
ビット割り当て:ビット割り当てモジュールは、マスキング曲線を計算し、符号化されたデータについてのビット割り当てを計算するための命令を提供する。
ビットストリーム動作:ビットストリーム動作モジュールはAC-3またはE-AC-3ビットストリームからデータをアンパックするための命令を提供する。
指数:指数モジュールは、メモリにおいて指数を表現するための構造を定義し、実行されたときにAC-3またはE-AC-3ビットストリームから指数をアンパックおよび復号するよう構成された命令を提供する。
指数および仮数:指数および仮数モジュールは、メモリにおいて指数および仮数を表現するための構造を定義し、実行されたときにAC-3またはE-AC-3ビットストリームから指数および仮数をアンパックおよび復号するよう構成された命令を提供する。
マトリクス処理(matrixing):マトリクス処理モジュールは、実行されたときに、マトリクス処理されたチャンネルの逆マトリクス処理をサポートするよう構成された命令を提供する。
補助データ:補助データ・モジュールは、FED処理を行うためにFEDモジュールにおいて使用される補助データ構造を定義する。
仮数:仮数モジュールは、メモリにおいて仮数を表現するための構造を定義し、実行されたときにAC-3またはE-AC-3ビットストリームから仮数をアンパックおよび復号するよう構成された命令を提供する。
適応ハイブリッド変換:AHTモジュールは、実行されたときに、E-AC-3ビットストリームから適応ハイブリッド変換データをアンパックおよび復号するよう構成された命令を提供する。
オーディオ・フレーム:オーディオ・フレーム・モジュールは、メモリにおいてオーディオ・フレームを表現するための構造を定義し、実行されたときにAC-3またはE-AC-3ビットストリームからオーディオ・フレームをアンパックおよび復号するよう構成された命令を提供する。
向上された結合(enhanced coupling):向上された結合モジュールは、メモリにおいて向上された結合チャンネルを表現するための構造を定義し、実行されたときにAC-3またはE-AC-3ビットストリームから向上された結合チャンネルをアンパックおよび復号するよう構成された命令を提供する。向上された結合は、E-AC-3ビットストリームにおける伝統的な結合を、位相およびカオス情報を与えることによって拡張する。
オーディオ・ブロック:オーディオ・ブロック・モジュールは、メモリにおいてオーディオ・ブロックを表現するための構造を定義し、実行されたときにAC-3またはE-AC-3ビットストリームからオーディオ・ブロックをアンパックおよび復号するよう構成された命令を提供する。
スペクトル拡張(spectral extension):スペクトル拡張モジュールは、E-AC-3ビットストリームにおけるスペクトル拡張復号のためのサポートを提供する。
結合(coupling):結合モジュールは、メモリにおいて結合を表現するための構造を定義し、実行されたときにAC-3またはE-AC-3ビットストリームから結合をアンパックおよび復号するよう構成された命令を提供する。
図4は、図3のフロントエンド復号モジュール300のある実施形態の動作のための簡略化されたデータフロー図を示しており、図3に示した擬似コードおよびサブモジュールがどのように協働してフロントエンド復号モジュールの機能を実行するかを記述している。機能的な要素によって意味されているのは、処理機能を実行する要素である。そのような各要素は、ハードウェア要素または処理システムおよび実行されたときに当該機能を行う命令を含む記憶媒体であってもよい。ビットストリーム・アンパック機能要素403はAC-3/E-AC-3フレームを受け入れ、標準的なおよび/またはAHTビット割り当て機能要素405のためにビット割り当てパラメータを生成する。機能要素405は、最終的には含まれている標準的な/向上された結合分離(decoupling)機能要素407のための指数および仮数データを生成するための、ビットストリーム・アンパッキングのためのさらなるデータを生じる。機能要素407は、必要とされる再マトリクス処理があれば含まれている再マトリクス処理(rematrixing)機能要素409がそれを実行するための指数および仮数データを生成する。機能要素409は、必要とされるスペクトル拡張があれば含まれるスペクトル拡張復号機能要素411がそれを実行するための指数および仮数データを生成する。機能要素407ないし411は、機能要素403のアンパック動作によって得られたデータを使う。フロントエンド復号の結果は、指数および仮数データならびに追加的なアンパックされたオーディオ・フレーム・パラメータおよびオーディオ・ブロック・パラメータである。
図3に示される第一のパスおよび第二のパスの擬似コードをより詳細に参照するに、第一のパスの命令は、実行されたときに、AC-3/E-AC-3フレームからメタデータをアンパックするよう構成されている。具体的には、第一のパスは、BSI情報をアンパックし、オーディオ・フレーム情報をアンパックすることを含む。(フレーム毎に6ブロックの場合)ブロック0から始まってブロック5までの各ブロックについて、固定データがアンパックされ、各チャンネルについて、ビットストリーム中のパックされた指数へのポインタが保存され、指数がアンパックされ、パックされた仮数が存在するビットストリーム中の位置が保存される。ビット割り当てが計算され、ビット割り当てに基づいて仮数がスキップされてもよい。
第二のパスの命令は、実行されたときに、フレームからオーディオ・データを復号して、仮数および指数のデータを形成するよう構成されている。ブロック0から始めて各ブロックについて、アンパッキングは、パックされた指数への保存されたポインタをロードし、それによりポイントされる指数をアンパックし、ビット割り当てを計算し、パックされた仮数への保存されたポインタをロードし、それによりポイントされる仮数をアンパックすることを含む。復号は、標準的なおよび向上された結合分離を実行し、スペクトル拡張帯域(単数または複数)を生成し、他のモジュールから独立であるために、結果として得られるデータをメモリ、たとえば当該パスの内部メモリにとって外部のメモリに転送することを含む。それにより結果として得られるデータが他のモジュール、たとえばBEDモジュールによってアクセスできる。このメモリは、便宜上、「外部」メモリと呼ばれるが、当業者には明らかだろうが、すべてのモジュールについて使われる単一メモリ構造の一部であってもよい。
いくつかの実施形態では、指数アンパッキングのために、第一のパスの間にアンパックされた指数は、メモリ転送を最小限にするために保存されない。あるチャンネルについてAHTが使われている場合、指数はブロック0からアンパックされて、1番から5番の他の5つのブロックにコピーされる。あるチャンネルについてAHTが使用されていない場合、パックされた指数へのポインタが保存される。チャンネル指数戦略が、指数を再使用することであるならば、保存されたポインタを使って指数は再びアンパックされる。
いくつかの実施形態では、結合仮数のアンパッキング(coupling mantissa unpacking)のために、AHTが当該結合チャンネル(coupling channel)について使用される場合、AHT結合チャンネル仮数(AHT coupling channel mantissas)の六つすべてのブロックがブロック0においてアンパックされ、相関しないディザ(dither)を生じるために結合されたチャンネル(coupled channel)である各チャンネルについてディザが再生成される(regenerated)。AHTが当該結合チャンネルについて使用されない場合、結合仮数へのポインタが保存される。これらの保存されたポインタが、所与のブロック内の結合されたチャンネルである各チャンネルについて結合仮数を再アンパックするために使用される。
〈バックエンド復号モジュールの設計〉
バックエンド復号(BED)モジュールは、周波数領域の指数および仮数データを受けて、それをPCMオーディオ・データに復号するよう動作する。PCMオーディオ・データは、ユーザー選択されたモード、ダイナミックレンジ圧縮およびダウンミックスに基づいてレンダリングされる。
フロントエンド復号モジュールが指数および仮数データをフロントエンド・モジュールの作業メモリとは別個のメモリ――これは外部メモリと呼んでいる――に記憶するいくつかの実施形態では、BEDモジュールは、ダウンミックスおよび遅延バッファ要求を最小限にするために、ブロックごとのフレーム処理を使用し、フロントエンド・モジュールの出力と互換となるために、処理すべき指数および仮数データにアクセスするために外部メモリからの転送を使用する。
有形の記憶媒体の形の実施形態の場合、バックエンド復号モジュールは、処理システムの一つまたは複数のプロセッサによって実行されたときに、バックエンド復号モジュールの動作について本稿で詳細に記述されている工程を引き起こす、有形の記憶媒体に記憶されたソフトウェア命令を含む。ハードウェア実装では、バックエンド復号モジュールは、動作において、バックエンド復号モジュールの動作について本稿で詳細に記述されている工程を実行するよう構成されている要素を含む。
図5Aは、実行されたときにBED処理を行わせるメモリ内に記憶された命令の集合として実装されるバックエンド復号モジュール500のある実施形態のブロック概略図である。図5Aはまた、バックエンド復号モジュール500の命令についての擬似コードをも示している。BEDモジュールは以下のモジュールを含む。各モジュールは命令を含み、いくつかのそのような命令は定義的である。
ダイナミックレンジ制御:ダイナミックレンジ制御モジュールは、実行されたときに、利得レンジング(gain ranging)を適用することおよびダイナミックレンジ制御を適用することを含む、復号された信号のダイナミックレンジを制御するための機能を実行させる命令を提供する。
変換(transform):変換モジュールは、実行されたときに、逆変換を実行させる命令を提供する。逆変換の実行は、逆修正離散コサイン変換(IMDCT: inverse modified discrete cosine transform)を含み、逆修正離散コサイン変換の実行は、逆DCT変換を計算するために使われたプレ回転(pre-rotation)の実行、逆DCT変換を計算するために使われたポスト回転(post-rotation)の実行および逆高速フーリエ変換(IFFT: inverse fast Fourier transform)の決定を含む。
過渡プレノイズ処理(transient pre-noise processing):過渡プレノイズ処理モジュールは、実行されたときに、過渡プレノイズ処理を実行させる命令を提供する。
窓処理&重複加算(window & overlap-add):窓処理および重複加算モジュールは、実行されたときに、遅延バッファを用いて、逆変換されたサンプルから出力サンプルを再構成するために窓処理および重複/加算演算を行わせる命令を提供する。
時間領域(TD: time domain)ダウンミックス:TDダウンミックス・モジュールは、実行されたときに、必要に応じてより少数のチャンネルへの時間領域でのダウンミキシングを行わせる命令を手供する。
図6は、図5Aのバックエンド復号モジュール500のある実施形態の動作の簡略化したデータフロー図を示しており、図5Aに示されるコードおよびサブモジュール要素がどのように協働してバックエンド復号モジュールの機能を実行するかを記述している。利得制御機能要素603は、フロントエンド復号モジュール300から指数および仮数データを受け入れ、メタデータに従って、必要とされるダイナミックレンジ制御、ダイアログ正規化(dialog normalization)および利得レンジングがあればそれを適用する。結果として得られる指数および仮数データは、指数による仮数の非正規化機能要素605によって受け入れられる。機能要素605は逆変換のための変換係数を生成する。逆変換機能要素607はそれらの変換係数にIMDCTを適用し、窓処理および重複加算の前の時間サンプルを生成する。そのような重複加算の前の時間領域サンプルは本稿では「擬似時間領域」サンプルと呼ばれ、これらのサンプルは本稿で擬似時間領域と呼ばれる領域にある。それらのサンプルは、窓処理および重複加算機能要素609によって受け入れられる。機能要素609は、擬似時間領域サンプルに窓処理および重複加算動作を適用することによってPCMサンプルを生成する。メタデータに従って、過渡プレノイズ処理があれば、過渡プレノイズ処理機能要素611によって適用される。たとえばメタデータ中またはその他の仕方で指定されていれば、結果として得られる過渡プレノイズ処理後のPCMサンプルは、ダウンミキシング機能要素613によって、M.m個の出力チャンネルのPCMサンプルにダウンミックスされる。
再び図5Aを参照するに、BEDモジュール処理のための擬似コードは、各データ・ブロックについて、あるチャンネルの諸ブロックについての仮数および指数データを外部メモリから転送し、各チャンネルについて:メタデータに従って、必要とされるダイナミックレンジ制御、ダイアログ正規化および利得レンジングがあればそれを適用し;指数によって仮数を非正規化して、逆変換のための変換係数を生成し;変換係数に対してIMDCTを計算して擬似時間領域サンプルを生成し;窓処理および重複加算演算を擬似時間領域サンプルに適用し;メタデータに従って、過渡プレノイズ処理があれば適用し;要求されていれば、M.m個の出力チャンネルのPCMサンプルに時間領域ダウンミキシングすることを含む。
図5Aに示される復号の諸実施形態は、そのような利得調整を、メタデータに従ってダイアログ正規化オフセットを適用すること、および、メタデータに従ってダイナミックレンジ制御利得因子を適用することとして実行することを含む。データが周波数領域における仮数および指数の形で与えられている段階でそのような利得調整を実行することは、有利である。利得変化は時間とともに変わることがあり、周波数領域においてなされたそのような利得変化は、ひとたび逆変換および窓処理/重複加算演算が行われたら、なめらかなクロスフェードを与えるのである。
過渡プレノイズ処理(Transient Pre-Noise Processing)
E-AC-3エンコードおよびデコードは、AC-3よりも低いデータ・レートで動作し、よりよいオーディオ品質を与えるよう設計されたものである。より低いデータ・レートでは、符号化されたオーディオのオーディオ品質は、特に比較的符号化困難な過渡的な素材について、負の影響を受けることがある。オーディオ品質に対するこの影響は、主として、こうした型の信号を正確に符号化するために利用可能なデータ・ビットの数が限られていることによる。過渡信号の符号化アーチファクトは、当該過渡信号の精細度(definition)の低下ならびに「過渡プレノイズ」アーチファクトとして示される。「過渡プレノイズ(transient pre-noise)」アーチファクトは、符号化量子化誤差のため、エンコード窓全体にわたって可聴ノイズを広げる(smear)。
上記および図5および図6において記述されるように、BEDは過渡プレノイズ処理を提供する。E-AC-3エンコードは、適切なオーディオ・セグメントを、過渡プレノイズに先行して位置するオーディオを使って合成されるオーディオで置換することによって、過渡成分を含むオーディオがエンコードされるときに導入されうる過渡プレノイズ・アーチファクトを減らすために、過渡プレノイズ処理符号化(transient pre-noise processing coding)を含む。該オーディオは、時間スケーリング合成(time scaling synthesis)を使って処理され、それによりその継続時間は増加させられ、そのため、過渡プレノイズを含むオーディオを置換するのに適切な長さとなる。オーディオ合成バッファは、オーディオ・シーン解析および最大類似度処理を使って解析され、次いで、その継続時間が過渡プレノイズを含むオーディオを置換するのに十分長くされるよう時間スケーリングされる。長くされた合成オーディオは過渡プレノイズを置換するために使われ、合成されたオーディオからもとの符号化されたオーディオ・データへのなめらかな遷移を保証するよう、過渡成分の位置の直前の既存の過渡プレノイズ中にクロスフェードされる。過渡プレノイズ処理を使うことにより、ブロック切り換え(block switching)が無効にされている場合でさえ、過渡プレノイズの長さが劇的に削減されるまたは除去されることができる。
あるE-AC-3エンコーダ実施形態では、過渡プレノイズ処理ツールのための時間スケーリング合成解析および処理は、時間領域データに対して実行されて、たとえば時間スケーリング・パラメータを含むメタデータ情報が決定される。メタデータ情報は、エンコードされたビットストリームと一緒にデコーダによって受け入れられる。送信された過渡プレノイズ・メタデータは、低データ・レートでの低ビットレートのオーディオ符号化によって導入された過渡プレノイズを削減または除去するために、復号されたオーディオに対して時間領域処理を実行するために使われる。
E-AC-3エンコーダは、検出された各過渡成分について、オーディオ・コンテンツに基づいて、時間スケーリング合成解析を実行し、時間スケーリング・パラメータを決定する。時間スケーリング・パラメータは、追加的なメタデータとして、エンコードされたオーディオ・データと一緒に送信される。
E-AC-3デコーダでは、E-AC-3メタデータにおいて提供されている最適な時間スケーリング・パラメータが、過渡プレノイズ処理における使用のために、受け入れられるE-AC-3メタデータの一部として受け入れられる。デコーダは、E-AC-3メタデータから得られる送信された時間スケーリング・パラメータを使って、オーディオ・バッファ・スプライシングおよびクロスフェードを実行する。
最適時間スケーリング情報を使い、それを適切なクロスフェード処理とともに適用することにより、低ビットレートのオーディオ符号化によって導入された過渡プレノイズは、復号において、劇的に削減または除去されることができる。
このように、過渡プレノイズ処理はプレノイズを、もとの内容に最もよく似たオーディオのセグメントで上書きする。過渡プレノイズ処理命令は、実行されるとき、コピー・オーバー(copy over)において使うために、4ブロックの遅延バッファを維持する。過渡プレノイズ処理命令は、実行されるとき、上書きが起こる場合、上書きされるプレノイズに対して出入りするクロスフェードを実行させる。
〈ダウンミキシング〉
N.nがE-AC-3ビットストリームにおいてエンコードされるチャンネルの数を表すことにする。Nはメイン・チャンネルの数、n=0または1はLFEチャンネルの数である。しばしば、N個のメイン・チャンネルを、Mと表されるより少数の出力メイン・チャンネルにダウンミックスすることが所望される。M<NとしてNチャンネルからMチャンネルへのダウンミックスは、本発明の諸実施形態によってサポートされる。アップミックスも可能であり、その場合、M>Nである。
このように、最も一般的な実装では、オーディオ・デコーダ実施形態は、N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを復号して、M.mチャンネルの復号されたオーディオを含むオーディオ・データを復号するよう動作し、M≧1であり、n、mはそれぞれ入力、出力におけるLFEチャンネルの数である。ダウンミキシングはM<Nの場合であり、M<Nの場合、一組のダウンミキシング係数に従って、含められる。
周波数領域のダウンミキシングと時間領域のダウンミキシング
ダウンミキシングは完全に周波数領域で、逆変換の前に行うこともできるし、逆変換後、ただし重複加算ブロック処理の場合には窓処理および重複加算演算の前に時間領域で行うこともできるし、あるいは窓処理および重複加算演算後に時間領域で行うこともできる。
周波数領域(FD: frequency domain)ダウンミキシングは時間領域ダウンミキシングよりずっと効率的である。その効率性は、たとえば、ダウンミキシング段階後のいかなる処理ステップも残った数のチャンネルに対してのみ実行され、該残った数は一般にダウンミキシング後は少なくなっているという事実からくる。このように、ダウンミキシング段階後の全処理ステップの計算量が、少なくとも、入力チャンネルと出力チャンネルの比だけ削減される。
一例として、5.0チャンネルからステレオへのダウンミックスを考えてみよう。この場合、あらゆる後続処理ステップの計算量が約5/2=2.5倍低下することになる。
時間領域(TD)ダウンミキシングは、典型的なE-AC-3デコーダおよび上述し図5A、図6で図解した実施形態において使用される。典型的なE-AC-3デコーダが時間領域のダウンミキシングを使用する三つの主要な理由がある。
異なるブロック型をもつチャンネル
エンコードされるべきオーディオ内容に依存して、E-AC-3エンコーダは、オーディオ・データをセグメント分割するのに、短いブロックおよび長いブロックという二つの異なるブロック型の間で選択をすることができる。倍音的(harmonic)でゆるやかに変化するオーディオ・データは典型的には長いブロックを使ってセグメント分割およびエンコードされ、一方、過渡信号は短いブロックを使ってセグメント分割およびエンコードされる。結果として、短いブロックおよび長いブロックの周波数領域表現は本来的に異なっており、周波数領域のダウンミキシング動作では組み合わせられない。
ブロック型固有のエンコード段階がデコーダにおいて打ち消されたのちにはじめて、それらのチャンネルを一緒に混合することができる。このように、ブロック切り換えのある(block-switched)変換の場合、異なる部分的逆変換プロセスが使われ、二つの異なる変換の結果は、窓処理段の直前まで、直接組み合わせることはできないのである。
しかしながら、まず短い長さの変換データを長いほうの周波数領域データに変換する諸方法が知られており、その場合、ダウンミキシングは、周波数領域で実行できる。にもかかわらず、大半の既知のデコーダ実装では、ダウンミキシングは、ダウンミキシング係数に従って逆変換後に実行される。
アップミックス
出力メイン・チャンネルの数が入力メイン・チャンネルの数より多い、M>Nの場合、時間領域混合のアプローチは有益である。これはアップミキシング段階を処理の終わりのほうに繰り下げ、処理におけるチャンネル数を減らすからである。
TPNP
過渡プレノイズ処理(TPNP)にかけられるブロックは、TPNPが時間領域で動作するため、周波数領域ではダウンミックされえないことがありうる。TPNPは、4つまでのブロックのPCMデータ(1024個のサンプル)の履歴を必要とし、それがTPNPが適用されるチャンネルについて存在していなければならない。よって、PCMデータ履歴を埋め、プレノイズ置換を実行するために時間領域ダウンミックスへの切り換えが必要となる。
周波数領域と時間領域両方のダウンミキシングを使うハイブリッド・ダウンミキシング
本発明者らは、大半の符号化されたオーディオ信号におけるチャンネルは、90%より多くの時間にわたって同じブロック型を使うことを認識している。これは、TPNPがないとして、典型的な符号化オーディオ中のデータの90%より多くについて、より効率がよい周波数領域ダウンミキシングが機能するということを意味している。残りの10%以下が、典型的な従来技術のE-AC-3デコーダにおいて行われるような時間領域ダウンミキシングを必要とすることになる。
本発明の諸実施形態は、ブロックごとにどちらのダウンミキシング方法を適用すべきかを決定するダウンミックス方法選択論理と、適宜個別的なダウンミキシング方法を適用するための時間領域ダウンミキシング論理および周波数領域ダウンミキシング論理の両方を含む。こうして、方法実施形態は、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定することを含む。ダウンミックス方法選択論理は、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定するよう動作し、過渡プレノイズ処理があるかどうかを判別し、N個のチャンネルのうちのいずれかが異なるブロック型をもつかどうかを判別することを含む。選択論理は、N個のチャンネルにおいて同じブロック型をもち、過渡プレノイズ処理がなく、M<Nであるブロックについてのみ周波数領域ダウンミキシングが適用されるべきであると決定する。
図5Bは、実行されたときにBED処理を行わせるメモリ内に記憶された命令の集合として実装されるバックエンド復号モジュール520のある実施形態のブロック概略図である。図5Bはまた、バックエンド復号モジュール520の命令についての擬似コードをも示している。BEDモジュール520は図5Aに示した、時間領域ダウンミキシングのみを使うモジュールと、以下の追加的なモジュールとを含む。各追加的モジュールは命令を含み、いくつかのそのような命令は定義的である。
ダウンミックス方法選択モジュールは、(i)ブロック型の変化があるかどうか、(ii)真のダウンミキシング(M<N)がなくアップミキシングがあるかどうか、および(iii)当該ブロックがTPNPにかけられるかどうかについて検査し、このうちどれも真でない場合、周波数領域ダウンミキシングを選択する。このモジュールは、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定することを実行する。
周波数領域ダウンミックス・モジュール。これは、指数によって仮数を非正規化したのち、周波数領域ダウンミキシングを実行する。周波数領域ダウンミックス・モジュールはまた、時間領域から周波数領域への遷移論理モジュールをも含んでいることを注意しておく。該遷移論理モジュールは、直前のブロックが時間領域ダウンミックスを使ったかどうかを検査し、その場合、当該ブロックは異なる仕方で扱われる。これについては下記でより詳しく述べる。さらに、前記遷移論理モジュールはまた、ある種の、不規則的に繰り返されるイベント、たとえばフェードアウトするチャンネルのようなプログラム変化に関連付けられた処理ステップをも扱う。
FDからTDへのダウンミックス遷移論理モジュール。これは直前のブロックが周波数領域ダウンミックスを使ったかどうかを検査し、その場合、当該ブロックは異なる仕方で扱われる。これについては下記でより詳しく述べる。さらに、前記遷移論理モジュールはまた、ある種の、不規則的に繰り返されるイベント、たとえばフェードアウトするチャンネルのようなプログラム変化に関連付けられた処理ステップをも扱う。
さらに、図5Aにあるモジュールは、ハイブリッド・ダウンミキシング、すなわち現在ブロックについての一つまたは複数の条件に依存してFDおよびTD両方のダウンミキシングを含む実施形態では異なる振る舞いをすることがある。
図5Bの擬似コードを参照するに、バックエンド復号方法のいくつかの実施形態は、外部メモリからあるフレームの諸ブロックのデータを転送したのち、FDダウンミキシングするかTDダウンミキシングするかを見きわめることを含む。FDダウンミキシングのためには、各チャンネルについて、当該方法は、(i)ダイナミックレンジ制御およびダイアログ正規化を適用し、ただし、後述するように、利得レンジングは無効にし;(ii)指数によって仮数を非正規化し;(iii)FDダウンミキシングを実行し;(iv)フェードアウトするチャンネルがあるかどうかまたは直前のブロックが時間領域ダウンミキシングによってダウンミキシングされたかどうかを見きわめ、その場合、処理は異なる仕方で実行される。これについては下記でより詳細に述べる。TDダウンミキシングの場合について、またFDダウンミックスされたデータについても、当該処理は、各チャンネルについて、(i)直前のブロックがFDダウンミックスされた場合、TDダウンミックスされるようブロックを異なる仕方で処理し、またプログラム変化があればそれに対処し;(ii)逆変換を決定し;(iii)窓重複加算を実行し;TDダウンミキシングの場合、(iv)TPNPがあればそれを実行し、適切な出力チャンネルにダウンミキシングすることを含む。
図7は、単純なデータフロー図を示している。ブロック701は、ブロック型変化、TPNPまたはアップミキシングという三つの条件について試験し、いずれかの条件が真であればデータフローをTDダウンミキシング分枝721に差し向けるダウンミックス方法選択論理に対応する。TDダウンミキシング分枝721は、723における、FDダウンミキシングによって処理されたブロックの直後に現れるブロックを異なる仕方で処理し、プログラム変化処理するFDダウンミックス遷移論理と、725における指数による仮数の非正規化とを含む。ブロック721後のデータフローは、共通の処理ブロック731によって処理される。ダウンミックス方法選択論理ブロック701の試験が、当該ブロックがFDダウンミキシングのためのものであると判定する場合、データフローはFDダウンミキシング処理711に分岐する。FDダウンミキシング処理711は、利得レンジングを無効にし、指数によって仮数を非正規化し、FDダウンミキシングを実行する周波数領域ダウンミックス・プロセス713と、直前のブロックがTDダウンミキシングによって処理されたかどうかを判定し、そのようなブロックを異なる仕方で処理し、またフェードアウトするチャンネルのような何らかのプログラム変化を検出しこれに対処するTDダウンミックス遷移論理ブロック715とを含む。TDダウンミックス遷移ブロック715後のデータフローは、同じ共通の処理ブロック731に進む。
共通の処理ブロック731は、逆変換および任意のさらなる時間領域処理を含む。該さらなる時間領域処理は、利得レンジングの打ち消しおよび窓処理および重複加算処理を含む。当該ブロックがTDダウンミキシング・ブロック721からの場合、該さらなる時間領域処理はさらに、TPNP処理および時間領域ダウンミキシングがあればそれを含む。
図8は、図7に示したようなバックエンド復号モジュールについての処理のある実施形態のフローチャートである。このフローチャートは下記のように区分されており、同様な機能データフロー・ブロックについては図7と同じ参照符号を用いている。ダウンミックス方法選択論理セクション701では、論理的なフラグFD_dmxが、1のときに、当該ブロックについて周波数領域ダウンミキシングが使用されることを示すために使われる。TDダウンミキシング論理セクション721は、FDダウンミキシングによって処理されたブロックの直後に現れるブロックを異なる仕方で処理し、プログラム変化処理を実行する、FDダウンミックス遷移論理およびプログラム変化論理セクション723と、各入力チャンネルについて指数によって仮数を非正規化するセクションとを含む。ブロック721後のデータフローは、共通の処理セクション731によって処理される。ダウンミックス方法選択論理ブロック701が、当該ブロックがFDダウンミキシングのためのものであると判定する場合、データフローはFDダウンミキシング処理セクション711に分岐する。FDダウンミキシング処理セクション711は、利得レンジングを無効にし、各チャンネルについて、指数によって仮数を非正規化し、FDダウンミキシングを実行する周波数領域ダウンミックス・プロセスと、直前のブロックの各チャンネルについて、チャンネルのフェードアウトがあるかどうかまたは直前のブロックがTDダウンミキシングによって処理されたかどうかを判定し、そのようなブロックを異なる仕方で処理するTDダウンミックス遷移論理セクション715とを含む。TDダウンミックス遷移セクション715後のデータフローは、同じ共通の処理論理セクション731に進む。共通の処理論理セクション731は、各チャンネルについて、逆変換および任意のさらなる時間領域処理を含む。該さらなる時間領域処理は、利得レンジングの打ち消しおよび窓処理および重複加算処理を含む。FD_dmxが0であり、TDダウンミキシングを示すなら、731における前記さらなる時間領域処理は、TPNP処理があれば該処理と、時間領域ダウンミキシングをも含む。
FDダウンミキシング後は、TDダウンミックス遷移論理セクション715内で、817において、入力チャンネルの数Nが出力チャンネルの数Mと同じに設定されることを注意しておく。これにより、残りの処理、たとえば共通の処理論理セクション731における処理は、ダウンミキシングされたデータに対してのみ実行される。これは、計算量を減らす。もちろん、TDダウンミキシング――そのようなTDダウンミキシングはセクション715内の819として示されている――されたブロックからの遷移があるときの直前のブロックからのデータの時間領域ダウンミキシングは、N個の入力チャンネルのうちダウンミキシングに関わるもののすべてに対して実行される。
遷移の処理
復号において、オーディオ・ブロック間のなめらかな遷移をもつことが必要である。E-AC-3および他の多くのエンコード方法は、ラップ変換(lapped transform)、たとえば50%重複(overlapping)MDCTを使う。よって、現在ブロックを処理するとき、直前のブロックとの50%の重なりがあり、さらに、時間領域で次のブロックとの間に50%の重なりがある。本発明のいくつかの実施形態は、重複加算バッファを含む重複加算論理を使う。現在ブロックを処理するとき、重複加算バッファは直前のオーディオ・ブロックからのデータを含む。オーディオ・ブロック間でなめらかな遷移をもつことが必要なので、TDダウンミキシングからFDダウンミキシングへ、および、FDダウンミキシングからTDダウンミキシングへの遷移を異なる仕方で扱う論理が含められる。
図9は、それぞれL、C、R、LSおよびRSで表される左、中央、右、左サラウンドおよび右サラウンドのチャンネルを含む一般的な5チャンネル・オーディオのブロックk、k+1、……、k+4で表される5つのブロックを処理し、次の公式を使ってステレオ・ミックスにダウンミキシングする例を示している。
L'で表される左出力=aC+bL+cLS および
R'で表される右出力=aC+bR+cRS。
図9は、非重複変換(non-overlapped transform)が使われることを想定している。各長方形はブロックのオーディオ内容を表す。横軸は、左から右へ、ブロックk、……、k+4を表し、縦軸は上から下に、データの復号の進行を表す。ブロックkがTDダウンミキシングによって処理され、ブロックk+1およびk+2がFDダウンミキシングによって処理され、ブロックk+3およびk+4がTDダウンミキシングによって処理されるとする。見て取れるように、各TDダウンミキシング・ブロックについては、ダウンミキシングは、下のほうの時間領域ダウンミキシング後まで行われない。該時間領域ダウンミキシング後に、それらの内容はダウンミキシングされたL'およびR'チャンネルとなる。一方、FDダウンミキシングされるブロックについては、周波数領域における左および右チャンネルがすでに周波数領域ダウンミキシング後にダウンミックスされ、C、LSおよびRSチャンネル・データは無視される。ブロック間の重複がないので、TDダウンミキシングからFDダウンミキシングへ、あるいはFDダウンミキシングからTDダウンミキシングへの切り換えの際に特別なケースの処理は必要とされない。
図10は、50%重複(overlapped)変換の場合を記述している。重複加算が重複加算復号によって重複加算バッファを使って実行されるとする。この図では、データ・ブロックが二つの三角形として示されるときは、左下の三角形が、直前ブロックからの重複加算バッファ内のデータであり、一方、右上の三角形が現在ブロックからのデータを示す。
TDダウンミックスからFDダウンミックスへの遷移についての遷移処理
TDダウンミキシング・ブロックの直後のFDダウンミキシング・ブロックであるブロックk+1を考えよう。TDダウンミキシング後、重複加算バッファは直前ブロックからのL、C、R、LSおよびRSデータを含み、これが現在ブロックのために含められる必要がある。また、すでにFDダウンミックスされている現在ブロックk+1の寄与も含められる。出力のためのダウンミックスされたPCMデータを適正に決定するために、現在ブロックおよび直前ブロックのデータが含められる必要がある。このために、直前ブロックのデータは、フラッシュ・アウトされ、まだダウンミキシングされていないので時間領域でダウンミキシングされる必要がある。出力のためのダウンミックスされたPCMデータを決定するために、これら二つの寄与が加算されなければならない。この処理は、図7および図8のTDダウンミックス遷移論理715に、および図5Bに示されるFDダウンミックス・モジュールに含まれるTDダウンミックス遷移論理中のコードによって、含められる。そこで実行される処理は、図8のTDダウンミックス遷移論理セクション715においてまとめられている。より詳細には、TDダウンミックスからFDダウンミックスへの遷移のための遷移処理は、下記を含む。
・重複加算論理にゼロを供給し、窓処理および重複加算を実行することによって重複バッファをフラッシュ・アウトする(flush out)。重複加算論理からのフラッシュ・アウトされた出力をコピーする。これは、ダウンミキシング前のその特定のチャンネルの直前ブロックのPCMデータである。重複バッファは今やゼロを含んでいる。
・重複バッファからのPCMデータを時間領域ダウンミックスして、直前ブロックのTDダウンミックスのPCMデータを生成する。
・現在ブロックからの新たなデータの周波数領域ダウンミックス。逆変換を実行し、FDダウンミキシングおよび逆変換後の新たなデータを重複加算論理に供給する。該新たなデータに関して窓処理および重複加算などを実行し、現在ブロックのFDダウンミックスのPCMデータを生成する。
・TDダウンミックスおよびFDダウンミックスのPCMデータを加えてPCM出力を生成する。
ある代替的な実施形態では、直前ブロックにTPNPがなかったとして、重複加算バッファ内のデータがダウンミキシングされ、次いで重複加算演算がダウンミックスされた出力チャンネルに対して実行される。これは、各直前ブロックチャンネルについて重複加算演算を実行する必要を回避する。さらに、AC-3復号について上述したように、ダウンミックス・バッファとその対応する128サンプル長の半ブロック遅延バッファが使用され、窓処理され、組み合わされて256個のPCM出力サンプルを生成するとき、ダウンミックス演算はより単純になる。遅延バッファが256ではなくたった128個のサンプルだからである。この側面は、遷移処理に内在するピーク計算量を減らす。したがって、いくつかの実施形態では、データがTDダウンミックスされたブロックに続いてFDダウンミックスされる特定のブロックについて、遷移処理は、その特定のブロックの復号されたデータと重畳させられるべき直前ブロックのデータに、擬似時間領域においてダウンミキシングを適用することを含む。
FDダウンミックスからTDダウンミックスへの遷移についての遷移処理
FDダウンミキシング・ブロックk+2の直後のTDダウンミキシング・ブロックであるブロックk+3を考えよう。直前ブロックがFDダウンミキシング・ブロックだったので、より早い段階、たとえばTDダウンミキシング前の重複加算バッファは、左および右のチャンネルにはダウンミックスされたデータを含み、他のチャンネルにはデータを含まない。現在ブロックの寄与がダウンミックスされるのは、TDダウンミキシング後のことである。出力のためのダウンミックスされたPCMデータを適正に決定するために、現在ブロックおよび直前ブロックのデータが含められる必要がある。このために、直前ブロックのデータは、フラッシュ・アウトされる必要がある。出力のためのダウンミックスされたPCMデータを決定するためには、現在ブロックのデータは、時間領域でダウンミキシングされ、フラッシュ・アウトされた逆変換されたデータに加えられる必要がある。この処理は、図7および図8のFDダウンミックス遷移論理723に、および図5Bに示されるFDダウンミックス遷移論理モジュールに含まれるコードによって、含められる。そこで実行される処理は、図8のFDダウンミックス遷移論理セクション723においてまとめられている。より詳細には、各出力チャンネルについて出力PCMバッファがあるとして、FDダウンミックスからTDダウンミックスへの遷移のための遷移処理は、下記を含む。
・重複加算論理にゼロを供給し、窓処理および重複加算を実行することによって重複バッファをフラッシュ・アウトする。その出力を出力PCMバッファにコピーする。フラッシュ・アウトされたデータは、直前ブロックのFDダウンミックスのPCMデータである。重複バッファは今やゼロを含んでいる。
・現在ブロックの新たなデータの逆変換を実行し、現在ブロックのダウンミキシング前データを生成する。この新しい時間領域データ(変換後)を重複加算論理に供給する。
・現在ブロックからの該新たなデータに関して窓処理および重複加算、もしあればTPNPならびにTDダウンミックスを実行し、現在ブロックのTDダウンミックスのPCMデータを生成する。
・TDダウンミックスおよびFDダウンミックスのPCMデータを加えてPCM出力を生成する。
時間領域ダウンミキシングから周波数領域ダウンミキシングへの遷移に加えて、時間領域ダウンミックス遷移論理およびプログラム変化ハンドラにおいて、プログラム変化が扱われる。新たに出現するチャンネルが自動的にダウンミックスに含められ、よっていかなる特別な処置も必要としない。新たなプログラムにおいてもはや存在しないチャンネルはフェードアウトされる必要がある。これは、FDダウンミキシングの場合について図8のセクション715において示されるように、フェードするチャンネルの重複バッファをフラッシュ・アウトすることによって実行される。フラッシュ・アウトは、重複加算論理にゼロを供給し、窓処理および重複加算を実行することによって実行される。
図示したフローチャートおよびいくつかの実施形態では、周波数領域ダウンミックス論理セクション711は、周波数領域ダウンミックスの一部であるすべてのチャンネルについて任意的な利得レンジング機能を無効にすることを含むことを注意しておく。諸チャンネルは異なる利得レンジング・パラメータを有していてもよく、これはチャンネルのスペクトル係数の異なるスケーリングを誘導し、よってダウンミックスを妨げるのである。
ある代替的な実装では、FDダウンミキシング論理セクション711は、すべての利得のうち最小のものが、(周波数領域)ダウンミックスされたチャンネルについての利得レンジングを実行するために使われるよう、修正される。
変化するダウンミキシング係数をもつ時間領域ダウンミキシングならびに明示的なクロスフェードの必要性
ダウンミキシングはいくつかの問題を生じうる。異なるダウンミックスの式が異なる状況において求められる。よって、ダウンミックス係数は、信号条件に基づいて動的に変化する必要があることがある。最適な結果を求めてダウンミックス係数を調整することを許容するメタデータ・パラメータが利用可能である。
このように、ダウンミックス係数は時間とともに変化できる。第一の組のダウンミキシング係数から第二の組のダウンミキシング係数への変化があるとき、データは、第一の組から第二の組へとクロスフェードされるべきである。
ダウンミキシングが周波数領域で実行されるとき、また多くのデコーダ実装において、たとえば図1に示すような従来技術のAC-3デコーダにおいて、ダウンミキシングは窓処理および重複加算演算の前に実行される。ダウンミキシングを周波数領域で、あるいは時間領域で窓処理および重複加算の前に実行することの利点は、重複加算演算の結果として内在的なクロスフェードがあるということである。よって、ダウンミキシングが逆変換後に窓領域で、あるいはハイブリッド・ダウンミキシング実装において周波数領域で実行される多くの既知のAC-3デコーダおよび復号方法においては、明示的なクロスフェード処理はない。
時間領域ダウンミキシングおよび過渡プレノイズ処理(TPNP)の場合、たとえば7.1デコーダにおけるプログラム変化の問題によって引き起こされる、過渡プレノイズ処理復号における1ブロックの遅延がある。よって、本発明の諸実施形態において、ダウンミキシングが時間領域で実行され、TPNPが使用されるとき、時間領域ダウンミキシングは窓処理および重複加算後に実行される。時間領域ダウンミキシングが使用される場合の処理の順序は:逆変換、たとえばMDCTを実行、窓処理および重複加算を実行、過渡プレノイズ処理復号があればそれを実行(遅延なし)、そして時間領域ダウンミキシングである。
そのような場合、時間領域ダウンミキシングは、ダウンミックス係数における変化があったとしてもならされてしまうことを保証するよう、前および現在のダウンミキシング・データ、たとえばダウンミキシング係数またはダウンミキシング・テーブルのクロスフェードを必要とする。
一つの選択肢は、結果として得られる係数を計算するようクロスフェード処理を実行することである。使用すべきミキシング係数をc[i]で表す。ここで、iは256個の時間領域サンプルの時間インデックスを表し、範囲はi=0,…,255である。w2[i]は、i=0,…,255についてw2[i]+w2[255−i]=1となるような正の窓関数を表すとする。coldは、更新前のミキシング係数、cnewは更新されたミキシング係数を表すとする。適用すべきクロスフェード処理は:
c[i]=w2[i]・cnew+w2[255−i]・cold i=0,…255
となる。
係数クロスフェード処理を通じた各パス後、cold←cnewのように、古い係数は新しい係数で更新される。
次のパスでは、係数が更新されない場合、
c[i]=w2[i]・cnew+w2[255−i]・cnew=cnew
となる。
換言すれば、古い係数の組の影響は完全になくなっているのである!
本発明者は、多くのオーディオ・ストリームおよびダウンミキシング状況において、ミキシング係数はしばしば変化しないことを観察した。時間領域ダウンミキシング・プロセスのパフォーマンスを改善するため、時間領域ダウンミキシング・モジュールの諸実施形態は、ダウンミキシング係数がその前の値から変化しているかどうかを見きわめるべく試験し、変化していなければダウンミキシングを実行し、変化していれば、事前選択された正の窓関数に従ってダウンミキシング係数のクロスフェードを実行することを含む。ある実施形態では、窓関数は、窓処理および重複加算演算において使用されるのと同じ窓関数である。別の実施形態では、異なる窓関数が使用される。
図11は、ダウンミキシングのある実施形態についての簡略化された擬似コードを示している。そのような実施形態についてのデコーダは、SSEベクトル命令を実行する少なくとも一つのx86プロセッサを使用する。ダウンミキシングは、新しいダウンミキシング・データが古いダウンミキシング・データから不変であるかどうかを見きわめることを含む。もしそうであれば、ダウンミキシングは、前記一つまたは複数のx86プロセッサのうちの少なくとも一つでSSEベクトル命令を走らせるためにセットアップし、不変のダウンミキシング・データを使ってダウンミキシングすることを含み、該ダウンミキシングすることは、少なくとも一つの走っているSSEベクトル命令を実行することを含む。そうでなく、新しいダウンミキシング・データが古いダウンミキシング・データから変化していれば、本方法は、クロスフェード処理により、クロスフェードされたダウンミキシング・データを決定することを含む。
必要とされないデータの処理の除外
いくつかのダウンミキシング状況では、ダウンミックスされる出力に寄与しない少なくとも一つのチャンネルがある。たとえば、5.1オーディオからステレオへのダウンミックスの多くの場合、LFEチャンネルは含められない。よって、ダウンミックスは5.1から2.0である。LFEチャンネルをダウンミックスから除外することは、AC-3の場合のように、符号化フォーマットにとって本来的であってもよいし、E-AC-3の場合のように、メタデータによって制御されてもよい。E-AC-3では、lfemixlevcodeパラメータが、LFEチャンネルがダウンミックスに含められるかどうかを決定する。lfemixlevcodeパラメータが0のとき、LFEチャンネルはダウンミックスに含められない。
ダウンミックスが周波数領域で、擬似時間領域で逆変換後だが窓処理および重複加算演算前に、あるいは時間領域で逆変換後かつ窓処理および重複加算演算後に、実行されうることを想起されたい。純粋な時間領域ダウンミキシングは多くの既知のE-AC-3デコーダおよび本発明のいくつかの実施形態において実行され、たとえばTPNPの存在のために有利である。擬似時間領域ダウンミキシングは多くのAC-3デコーダおよび本発明のいくつかの実施形態において実行され、重複加算演算が本来的なクロスフェードを与え、これがダウンミキシング係数が変化するときに有利なので有利である。周波数領域ダウンミキシングは、本発明のいくつかの実施形態において条件が許すときに実行される。
本稿で論じたように、周波数領域ダウンミキシングは、5.1チャンネル入力から2チャンネル出力を生成するのに必要とされる逆変換および窓処理および重複加算演算の数を最小限にするので、最も効率的なダウンミキシング方法である。本発明のいくつかの実施形態では、たとえば図8においてFDダウンミキシングが実行されるとき、FDダウンミックス・ループ・セクション711において、要素813で始まり814で終わり、815で次のチャンネルにインクリメントされるループにおいて、ダウンミックスに含まれないチャンネルは、処理から除外される。
擬似時間領域で逆変換後だが窓処理および重複加算演算前に、あるいは時間領域で逆変換後かつ窓処理および重複加算後に行われるダウンミキシングは、周波数領域ほど計算効率がいいわけではない。今日のAC-3デコーダのような多くの今日のデータでは、ダウンミキシングは擬似時間領域で実行される。逆変換演算はダウンミキシング演算とは独立して、たとえば別個のモジュールにおいて実行される。そのようなデコーダにおける逆変換は、すべての入力チャンネル上で実行される。これは、比較的計算効率が悪い。というのも、LFEチャンネルが含まれない場合でも、逆変換がこのチャンネルについて実行されるからである。たとえLFEチャンネルが限られた帯域幅であったとしても、逆変換をLFEチャンネルに適用するのはいかなるフル帯域幅のチャンネルに逆変換を適用するのとも同じくらいの計算を必要とするので、この無用の処理は有意である。本発明者らは、この不効率を認識した。本発明のいくつかの実施形態は、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含む。非寄与チャンネルとは、復号されたオーディオのM.m個の出力チャンネルに寄与しないチャンネルである。いくつかの実施形態では、同定は、情報、たとえばダウンミキシングを定義するメタデータを使う。5.1から2.0へのダウンミキシングの例では、LFEチャンネルはそのようにして非寄与チャンネルとして同定される。本発明のいくつかの実施形態は、M.m個の出力チャンネルに寄与する各チャンネルに対して周波数から時間への変換を実行し、M.m個のチャンネル信号に寄与しない同定された各チャンネルに対しては周波数から時間への変換を実行しないことを含む。LFEチャンネルがダウンミックスに寄与しない5.1から2.0への例では、逆変換、たとえばIMCDTは5つのフル帯域幅のチャンネルに対してのみ実行され、よって、逆変換は、5.1チャンネルすべてについて必要とされる計算資源に対して約16%の削減をもって実行される。IMDCTは復号方法において計算量のかなりの源なので、この削減は有意となりうる。
今日のE-AC-3デコーダのような多くの今日のデコーダにおいて、ダウンミキシングは時間領域で実行される。逆変換演算および重複加算演算は、TPNPがあれば該TPNPより前に、かつダウンミキシング前に、ダウンミキシング演算とは独立に、たとえば別個のモジュールにおいて実行される。そのようなデコーダにおける逆変換および窓処理および重複加算演算は、すべての入力チャンネルに対して実行される。これは、比較的計算効率が悪い。というのも、LFEチャンネルが含まれない場合でも、逆変換および窓処理/重複加算がこのチャンネルについて実行されるからである。たとえLFEチャンネルが限られた帯域幅であったとしても、逆変換および重複加算をLFEチャンネルに適用するのはいかなるフル帯域幅のチャンネルに逆変換/重複加算を適用するのとも同じくらいの計算を必要とするので、この無用の処理は有意である。本発明のいくつかの実施形態では、ダウンミキシングは時間領域で実行され、他の実施形態では、ダウンミキシングは、ダウンミックス方法選択論理を適用した結果に依存して時間領域で実行されてもよい。TDダウンミキシングが使われる本発明のいくつかの実施形態は、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含む。いくつかの実施形態では、同定は、情報、たとえばダウンミキシングを定義するメタデータを使う。5.1から2.0へのダウンミキシングの例では、LFEチャンネルはそのようにして非寄与チャンネルとして同定される。本発明のいくつかの実施形態は、M.m個の出力チャンネルに寄与する各チャンネルに対して逆変換、すなわち周波数から時間への変換を実行し、M.m個のチャンネル信号に寄与しない同定された各チャンネルに対しては周波数から時間への変換や他の時間領域処理を実行しないことを含む。LFEチャンネルがダウンミックスに寄与しない5.1から2.0への例では、逆変換、たとえばIMCDT、重複加算およびTPNPは5つのフル帯域幅のチャンネルに対してのみ実行され、よって、逆変換および窓処理/重複加算部分は、5.1チャンネルすべてについて必要とされる計算資源に対して約16%の削減をもって実行される。図8のフローチャートでは、共通処理論理セクション731において、いくつかの実施形態の一つの特徴は、要素833で始まり834に続き、次のチャンネル要素へのインクリメント835を含むループにおける処理が、非寄与チャンネル以外のすべてのチャンネルについて実行されることを含む。これは、FDダウンミックスされるブロックについては本来的に行われる。
いくつかの実施形態では、LFEは非寄与チャンネルである、すなわちAC-3やE-AC-3において一般的であるようにダウンミックスされた出力チャンネルに含められないが、他の実施形態では、それに加えて、またはその代わりに、LFE以外のチャンネルが非寄与チャンネルとなり、ダウンミックス出力に含められない。本発明のいくつかの実施形態は、もしあるとすればどの一つまたは複数のチャンネルが、該チャンネルがダウンミックスに含められないという意味で非寄与であるかを識別するような条件について検査し、時間領域ダウンミキシングの場合、識別された非寄与チャンネルがあれば該チャンネルについて逆変換および窓重複加算演算を通じた処理を実行しないことを含む。
たとえば、AC-3およびE-AC-3では、サラウンド・チャンネルおよび/または中央チャンネルがダウンミックスされた出力チャンネルに含められないある種の条件がある。これらの条件は、エンコードされたビットストリームに含まれるメタデータが所定の値を取ることによって定義される。該メタデータはたとえば、ダウンミキシングがミックス・レベル・パラメータを含むことを定義する情報を含んでいてもよい。
そのようなミックス・レベル・パラメータのそのような例のいくつかについてここでE-AC-3の場合について例解の目的で述べておく。E-AC-3におけるステレオへのダウンミキシングでは、二つの型のダウンミキシングが提供される:LtRtマトリクス・サラウンド・エンコードされたステレオ対へのダウンミックスと、通常のステレオ信号LoRoへのダウンミックスである。ダウンミックスされたステレオ信号(LoRoまたはLtRt)はさらにモノにミックスされてもよい。ltrtsurmixlevと表される3ビットのLtRtサラウンド・ミックス・レベル・コードおよびlorosurmixlevと表される3ビットのLoRoサラウンド・ミックス・レベル・コードは、それぞれLtRtまたはLoRoダウンミックスにおける、左および右チャンネルに関するサラウンド・チャンネルの名目ダウンミックス・レベルを示す。二進「111」の値がダウンミックス・レベル0、すなわち−∞dBを示す。ltrtcmixlev、lorocmixlevと表される3ビットのLtRtおよびLoRo中央ミックス・レベル・コードは、それぞれLtRtまたはLoRoダウンミックスにおける、左および右チャンネルに関する中央チャンネルの名目ダウンミックス・レベルを示す。二進「111」の値がダウンミックス・レベル0、すなわち−∞dBを示す。
サラウンド・チャンネルがダウンミックスされた出力チャンネルに含められない条件がある。E-AC-3では、これらの条件は、メタデータによって同定される。これらの条件は、surmixlev='10'(AC-3のみ)、ltrtsurmixlev='111'およびlorosurmixlev='111'の場合を含む。これらの条件について、いくつかの実施形態では、デコーダは、ミックス・レベル・メタデータを使って、該メタデータがサラウンド・チャンネルがダウンミックスに含められないことを示していることを同定し、該サラウンド・チャンネルを、逆変換および窓処理/重複加算段階を通じて処理しないことを含む。さらに、中央チャンネルがダウンミックスされた出力チャンネルに含められない条件がある。これらの条件は、ltrtcmixlev='111'およびlorocmixlev='111'によって同定される。これらの条件について、いくつかの実施形態では、デコーダは、ミックス・レベル・メタデータを使って、該メタデータが中央チャンネルがダウンミックスに含められないことを示していることを同定し、該中央チャンネルを、逆変換および窓処理/重複加算段階を通じて処理しないことを含む。
いくつかの実施形態では、一つまたは複数の非寄与チャンネルを同定することは、内容依存である。一例として、該同定は、一つまたは複数のチャンネルが、一つまたは複数の他のチャンネルに比して取るに足りない量の内容を有するかどうかを識別することを含む。内容量の指標が使用される。ある実施形態では、内容量の指標はエネルギーであり、他の実施形態では、内容量の指標は絶対レベルである。同定は、チャンネル対の間の内容量の指標の差を設定可能な閾値と比較することを含む。一例として、ある実施形態では、一つまたは複数の非寄与チャンネルを同定することは、サラウンド・チャンネルが非寄与チャンネルであるかどうかを見きわめるために、あるブロックのサラウンド・チャンネルの内容量が各前方チャンネルの内容量より、少なくともある設定可能な閾値だけ小さいかどうかを見きわめることを含む。
理想的には、品質損失を最小にしながら必要とされる計算量を減らすようチャンネルを非寄与チャンネルとして同定するのを最大化するために、閾値は、信号のダウンミックスされたバージョンに知覚できるアーチファクトを導入することなく可能な限り低く選択される。いくつかの実施形態では、異なる復号アプリケーションについて異なる閾値が用意される。特定の復号アプリケーションについての閾値の選択は、その特定のアプリケーションについてのダウンミックスの品質(より高い閾値)と計算量削減(より低い閾値)との間の受け容れ可能なバランスを表す。
本発明のいくつかの実施形態では、チャンネルが他のチャンネルに対して取るに足りないと考えられるのは、そのエネルギーまたは絶対レベルが前記他のチャンネルより少なくとも15dB低い場合である。理想的には、チャンネルが他のチャンネルに対して取るに足りないのは、そのエネルギーまたは絶対レベルが前記他のチャンネルより少なくとも25dB低い場合である。
AおよびBと表される二つのチャンネルの間の差について、25dBと等価な閾値を使うことは、二つのチャンネルの絶対値の和のレベルが優勢なチャンネルのレベルの0.5dB以内であるということにほぼ等価である。すなわち、チャンネルAが−6dBFS(dB relative to full scale[フル・スケールに対するdB])であり、チャンネルBが−31dBFSであれば、チャンネルAおよびBの絶対値の和はほぼ−5.5dBFS、すなわちチャンネルAのレベルより約0.5dB上になる。
オーディオが比較的低品質である場合、および低コスト・アプリケーションについては、計算量を減らすために品質を犠牲にすることが受け容れ可能であることがあり、閾値は25dBより低くてもよい。一例では、18dBの閾値が使用される。そのような場合、二つのチャンネルの和が、高いほうのレベルをもつチャンネルのレベルの約1dB以内でありうる。これは、ある種の場合には聞いてわかることがありうるが、過度に不快ではないはずである。別の実施形態では、15dBの閾値が使用される。この場合、二つのチャンネルの和は優勢なチャンネルのレベルの1.5dB以内である。
いくつかの実施形態では、いくつかの閾値が使用される。たとえば、15dB、18dBおよび25dBである。
上記では非寄与チャンネルの同定はAC-3およびE-AC-3について記述されているが、本発明の非寄与チャンネル同定機能はそのようなフォーマットに限定されるわけではない。たとえば他のフォーマットも、一つまたは複数の非寄与チャンネルの同定のために使用可能なダウンミキシングに関する情報、たとえばメタデータを提供する。MPEG-2 AAC(ISO/IEC13818-7)およびMPEG-4オーディオ(ISO/IEC14496-3)はいずれも、当該規格によって「マトリクス・ミックスダウン係数(matrix-mixdown coefficient)」と称されるものを伝送できる。そのようなフォーマットを復号するための本発明のいくつかの実施形態は、3/2、すなわち左、中央、右、左サラウンド、右サラウンド信号からステレオまたはモノ信号を構築するためにこの係数を使う。マトリクス・ミックスダウン係数は、ステレオまたはモノ出力を構築するためにサラウンド・チャンネルがどのように前方チャンネルと混合されるかを決定する。これらの規格によれば、マトリクス・ミックスダウン係数の四つの可能な値があり、その一つは0である。値0は、サラウンド・チャンネルがダウンミックスに含まれないという結果を与える。本発明のいくつかのMPEG-2 AACデコーダまたはMPEG-4オーディオ・デコーダの実施形態は、ビットストリームにおいて信号伝達されるミックスダウン係数を使って3/2信号ステレオまたはモノのダウンミックスを生成することを含み、さらに、マトリクス・ミックスダウン係数0によって非寄与チャンネルを同定し、その場合、逆変換および窓処理/重複加算処理が実行されないことを含む。
図12は、少なくとも一つのプロセッサ1203を含む処理システム1200のある実施形態のブロック概略図である。この例では、SSEベクトル命令を含む命令セットをもつ一つのx86プロセッサが示されている。また、当該処理システムのさまざまなコンポーネントを結合するバス・サブシステム1205も簡略化されたブロックの形で示されている。処理システムは、たとえばバス・サブシステム1205を介してプロセッサ(単数または複数)に結合された、一つまたは複数の記憶装置を有する記憶サブシステム1211を含む。該記憶装置は、少なくともメモリを、そしていくつかの実施形態では磁気および/または光学式記憶コンポーネントのような一つまたは複数の他の記憶装置を含む。いくつかの実施形態はまた、少なくとも一つのネットワーク・インターフェース1207およびオーディオ入出力サブシステム1209をも含む。オーディオ入出力サブシステム1209はPCMデータを受け入れることができ、該PCMデータを一組のラウドスピーカーまたはイヤホンを駆動するための電気的な波形に変換する一つまたは複数のDACを含む。他の要素も当該処理システムに含まれていてもよく、当業者には明確であろう。よって、簡単のため図12には示していない。
記憶サブシステム1211は、処理システムにおいて実行されたときに、処理システムに、N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データ、たとえばE-AC-3データの復号してM.mチャンネルの復号オーディオを含む復号されたオーディオ・データを形成することを実行させる命令1213を含んでいる。ここで、M≧1であり、ダウンミキシングの場合にはM<Nである。今日の既知の符号化フォーマットについては、n=0または1であり、m=0または1であるが、本発明はそれに限定されない。いくつかの実施形態では、命令1211は、複数のモジュールに区分される。典型的には他の命令(他のソフトウェア)1215も記憶サブシステムに含まれる。図示した実施形態は、命令1211の中に以下のモジュールを含む:二つのデコーダ・モジュール、すなわちフロントエンド復号モジュール1231およびバックエンド復号モジュール1233を含む独立フレーム5.1チャンネル・デコーダ・モジュール1223ならびにフロントエンド復号モジュール1235およびバックエンド復号モジュール1237を含む従属フレーム・デコーダ・モジュール1225と、実行されたときに各フレームからビットストリーム情報(BSI)フィールドをアンパックしてフレームおよびフレーム種別を識別させ、識別されたフレームを適切なフロントエンド復号モジュールのインスタンス1231または1235に提供させる命令1221のフレーム情報解析モジュールと、実行されたとき、N>5の場合、それぞれのバックエンド復号モジュールからの復号データを組み合わせてN.nチャンネルの復号データを形成させる命令1227のチャンネル・マッピング器モジュールとである。
代替的な処理システム実施形態は、少なくとも一つのネットワーク・リンクによって結合された、すなわち分散した一つまたは複数のプロセッサを含んでいてもよい。すなわち、前記モジュールの一つまたは複数が、主たる処理システムにネットワーク・リンクによって結合された他の処理システムにあってもよい。そのような代替的な実施形態は、当業者には明白であろう。よって、いくつかの実施形態では、システムは、ネットワーク・リンクを介してネットワーク接続された、それぞれ少なくとも一つのプロセッサを含む一つまたは複数のサブシステムを有する。
よって、このように、図12の処理システムは、N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを処理してM.mチャンネルの復号オーディオを含む復号されたオーディオ・データを形成する装置の実施形態をなす。ここで、M≧1であり、ダウンミキシングの場合にはM<Nであり、アップミキシングについてはM>Nである。今日の規格については、n=0または1であり、m=0または1であるが、他の実施形態も可能である。本装置は、機能を実行する手段として機能的に表現されるいくつかの機能要素を含む。機能要素とは、処理機能を実行する要素を意味する。そのような各要素はハードウェア要素、たとえば専用ハードウェアまたは実行されたときに当該機能を実行する命令を含む記憶媒体を含む処理システムであってもよい。図12の装置は、エンコード方法によってエンコードされたNチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを受け入れる手段を含む。エンコード方法は、たとえばE-AC-3符号化方法であり、より一般には、重複変換を使ってNチャンネルのデジタル・オーディオ・データを変換し、周波数領域の指数および仮数データを形成およびパッキングし、周波数領域の指数および仮数データに関係したメタデータを形成およびパッキングすることを含むエンコード方法である。メタデータは、任意的に、過渡プレノイズ処理に関係したメタデータを含む。
本装置は、受け入れられたオーディオ・データを復号する手段を含む。
いくつかの実施形態では、復号する手段は、メタデータをアンパックする手段および周波数領域の指数および仮数データをアンパックおよび復号する手段と;アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定する手段と;周波数領域データを逆変換する手段と;窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定する手段と;過渡プレノイズ処理に関係したメタデータに従って要求される過渡プレノイズ処理復号があればそれを適用する手段と;ダウンミキシング・データに従ってTDダウンミキシングする手段とを含む。TDダウンミキシングする手段は、M<Nの場合、ダウンミキシング・データに従ってダウンミックスする。該ダウンミックスは、いくつかの実施形態では、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従ってダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む。
いくつかの実施形態は、あるブロックについて、TDダウンミキシングまたはFDダウンミキシングのどちらが使われるかを見きわめる手段と、FDダウンミキシング手段であって、前記あるブロックについてTDダウンミキシングまたはFDダウンミキシングのどちらが使われるかを見きわめる手段がFDダウンミキシングを特定した場合に作動され、TDからFDダウンミックスへの遷移処理のための手段を含む手段とを含む。そのような実施形態は、FDからTDダウンミックスへの遷移処理のための手段をも含む。これらの要素の動作は上述したとおりである。
いくつかの実施形態では、本装置は、N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定する手段を含み、非寄与チャンネルとは、M.m個のチャンネルに寄与しないチャンネルである。本装置は、同定された一つまたは複数の非寄与チャンネルに対しては、周波数領域データの逆変換およびTPNPや重複加算のようなさらなる処理の適用を実行しない。
いくつかの実施形態では、本装置は、ベクトル命令を含むストリーミング単一命令複数データ拡張(SSE)を含む命令セットを有する少なくとも一つのx86プロセッサを含む。前記ダウンミキシングする手段は、動作において、前記一つまたは複数のx86プロセッサの少なくとも一つの上でベクトル命令を走らせる。
図12に示された装置に対する代替的な装置も可能である。たとえば、示されている要素の一つまたは複数がハードウェア装置によって実装され、一方、他の要素はx86プロセッサの動作によって実装されてもよい。そのような変形は、当業者にとってはストレートであろう。
本装置のいくつかの実施形態では、復号する手段は、一つまたは複数のフロントエンド復号手段および一つまたは複数のバックエンド復号手段を含む。フロントエンド復号手段は、メタデータをアンパックする手段および周波数領域の指数および仮数データをアンパックおよび復号する手段を含む。バックエンド復号手段は、あるブロックについて、TDダウンミキシングまたはFDダウンミキシングのどちらが使われるかを見きわめる手段と、FDダウンミキシング手段であって、TDからFDダウンミックスへの遷移処理のための手段と、FDからTDダウンミックスへの遷移処理のための手段と、アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定する手段と;周波数領域データを逆変換する手段と;窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定する手段と;過渡プレノイズ処理に関係したメタデータに従って要求される過渡プレノイズ処理復号があればそれを適用する手段と;ダウンミキシング・データに従って時間領域ダウンミキシングする手段とを含む。時間領域ダウンミキシングは、M<Nの場合、ダウンミキシング・データに従ってダウンミックスする。該ダウンミックスは、いくつかの実施形態では、ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従ってダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む。
5.1チャンネルより多い符号化データのE-AC-3データを処理するためには、復号する手段は、フロントエンド復号手段およびバックエンド復号手段の複数のインスタンスを含む。それには、5.1チャンネルまでの独立フレームを復号するための第一のフロントエンド復号手段および第一のバックエンド復号手段と、一つまたは複数の従属フレームのデータを復号するための第二のフロントエンド復号手段および第二のバックエンド復号手段とが含まれる。本装置はまた、ビットストリーム情報フィールドをアンパックしてフレームおよびフレーム種別を識別し、識別されたフレームを適切なフロントエンド復号手段に与える手段と、それぞれのバックエンド復号手段からの復号データを組み合わせてNチャンネルの復号データを形成する手段をも含む。
E-AC-3および他の符号化方法が重複加算変換を使い、逆変換においては窓処理および重複加算演算を含むものの、逆変換およびさらなる処理によりエイリアシング・エラーなしで時間領域サンプルを復元できるように動作する他の形の変換が可能であることは知られている。したがって、本発明は重複加算変換に限定されるものではなく、周波数領域のデータを逆変換し、窓処理された重複加算演算を実行して時間領域のサンプルを決定することが言及されるときは常に、当業者は、一般には、これらの処理は、「周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定する」と表現できることを理解するであろう。
本稿を通じて指数(exponent)および仮数(mantissa)という用語が使われているが、それはこれらがAC-3およびE-AC-3で使われている用語だからであって、他の符号化フォーマットは他の用語を使うこともありうる。たとえば、HE-AACの場合ならスケール因子(scale factor)およびスペクトル係数(spectral coefficient)である。指数および仮数という用語を使っていることは、本発明の範囲を、指数および仮数という用語を使うフォーマットに限定するものではない。
特に断りのない限り、以下の記述から明白であるように、本明細書を通じて、「処理」「コンピューティング」「計算」「決定」「生成」などといった用語を使った議論は、電子的な量などの物理量として表現されたデータを操作および/または変換して物理量として同様に表現された他のデータにする、ハードウェア要素、たとえばコンピュータまたはコンピューティング・システム、処理システムまたは同様の電子計算装置の動作および/または工程をいう。
同様に、「プロセッサ」という用語は、レジスタおよび/またはメモリなどからの電子デを処理してその電子データを、レジスタおよび/またはメモリに記憶されるなどしうる他の電子データに変換する任意の装置または装置の一部を指しうる。「処理システム」または「コンピュータ」または「計算機械」または「コンピューティング・プラットフォーム」は一つまたは複数のプロセッサを含んでいてもよい。
いくつかの要素、たとえばいくつかの段階を含む方法が記述されるとき、特に明記されない限り、そのような要素、たとえば段階のいかなる順序も含意されないことを注意しておく。
いくつかの実施形態では、コンピュータ可読媒体は、少なくとも一つのプロセッサ要素および記憶サブシステムを含む、デジタル信号処理装置またはサブシステムのような処理システムの一つまたは複数のプロセッサによって実行されたときに、本稿に記載される方法を実行させる命令をもって構成されている、たとえば該命令をエンコードされている、たとえば該命令を記憶している。上記の記述において、命令が、実行されたときにプロセスを実行するよう構成されていると述べられるとき、それは、命令が、実行されたときに、ハードウェア装置、たとえば処理システムがそのプロセスを実行するよう一つまたは複数のプロセッサを動作させることを意味することは理解しておくべきである。
本稿に記載される方法論は、いくつかの実施形態では、一つまたは複数のコンピュータ可読媒体にエンコードされた論理、命令を受け入れる一つまたは複数のプロセッサによって実行可能である。該プロセッサの一つまたは複数によって実行されるとき、前記命令は、本稿に記載される方法の少なくとも一つの実行を引き起こす。工程が行われることを規定する一組の命令(シーケンシャルであってもなくてもよい)を実行することのできる任意のプロセッサが含まれる。よって、一つの例は、一つまたは複数のプロセッサを含む典型的な処理システムである。各プロセッサは、CPUまたは同様の要素、グラフィック処理ユニット(GPU: graphics processing unit)および/またはプログラム可能なDSPユニットの一つまたは複数を含んでいてもよい。処理システムはさらに、少なくとも一つの記憶媒体をもつ記憶サブシステムを含む。該記憶媒体は、半導体デバイスに埋め込まれたメモリまたはメインRAMおよび/または静的RAMおよび/またはROMまたキャッシュ・メモリを含む別個のメモリ・サブシステムを含みうる。記憶サブシステムはさらに、磁気および/または光学式および/またはさらなる半導体記憶デバイスといった一つまたは複数の他の記憶装置を含んでいてもよい。コンポーネント間の通信をするためにバス・サブシステムが含められてもよい。処理システムはさらに、ネットワーク・インターフェース・デバイスまたは無線ネットワーク・インターフェース・デバイスなどを介して、ネットワークによって結合されるプロセッサをもつ、分散式の処理システムであってもよい。処理システムがディスプレイを必要とする場合、そのようなディスプレイが含められてもよい。たとえば、液晶ディスプレイ(LCD)、有機発光ディスプレイ(OLED)または陰極線管(CRT)ディスプレイである。手動のデータ入力が必要とされる場合、処理システムは、キーボードのような英数字入力ユニット、マウスのような一制御デバイスなどの一つまたは複数といった入力装置をも含む。記憶装置、記憶サブシステムまたはメモリ・ユニットの用語は、本稿での用法では、コンテキストから明確であり、そうでないと明確に述べられているのでない限り、ディスク・ドライブ・ユニットのような記憶システムをも包含する。いくつかの構成の処理システムは、音出力装置およびネットワーク・インターフェース・デバイスを含んでいてもよい。
記憶サブシステムはこのように、一つまたは複数のプロセッサによって実行されたときに、本稿に記載される方法ステップの一つまたは複数を実行させる命令、たとえば論理、たとえばソフトウェアをもって構成されている、たとえばそれをエンコードされているコンピュータ可読媒体を含む。ソフトウェアは、ハードディスクに存在していてもよく、あるいはそのコンピュータ・システムによる実行の間、完全にまたは少なくとも部分的にRAMのようなメモリ内および/またはプロセッサ内部のメモリ内に存在していてもよい。このように、メモリおよびメモリを含むプロセッサも、命令がエンコードされるコンピュータ可読媒体をなす。
さらに、コンピュータ可読媒体はコンピュータ・プログラム・プロダクトをなしてもよく、あるいはコンピュータ・プログラム・プロダクトに含まれてもよい。
代替的な諸実施形態では、前記一つまたは複数のプロセッサはスタンドアローンの装置として動作するか、あるいはネットワーク展開において他のプロセッサ(単数または複数)に接続、たとえばネットワーク接続されていてもよく、前記一つまたは複数のプロセッサは、サーバー‐クライアント・ネットワーク環境におけるサーバーまたはクライアント・マシンの資格で、あるいはピアツーピアまたは分散式ネットワーク環境におけるピア・マシンとして機能してもよい。処理システムという用語は、本稿において明示的に除外されていない限り、そのようなあらゆる可能性を包含する。前記一つまたは複数のプロセッサは、パーソナル・コンピュータ(PC)、メディア再生装置、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA: Personal Digital Assistant)、ゲーム機、携帯電話、ウェブ・アプライアンス、ネットワーク・ルータ、スイッチもしくはブリッジまたは機械によって行われるべき工程を規定する一組の命令(シーケンシャルであってもなくてもよい)を実行できる任意の機械の形を取ってもよい。
一部の図面(単数または複数)は単一のプロセッサおよび単一の記憶サブシステム、たとえば命令を含む論理を記憶する単一のメモリしか示していないが、当業者は、上記のコンポーネントの多数が含まれるが、発明的な側面を埋没させないために明示的に図示したり説明したりはしていないことを理解するであろう。たとえば、単一の機械しか図示されていなくても、「機械」という用語は、個々にまたは合同して本稿で論じた方法論の任意の一つまたは複数を実行するよう一組(または複数組)の命令を実行する機械の任意の集合を含むものとも解釈されるものとする。
このように、本稿で記載される各方法の一つの実施形態は、一つまたは複数のプロセッサ、たとえばメディア・デバイスの一部である一つまたは複数のプロセッサ上で実行されるときに方法ステップの実行を引き起こす一組の命令、たとえばコンピュータ・プログラムをもって構成されたコンピュータ可読媒体の形である。いくつかの実施形態は、論理そのものの形である。よって、当業者は、本発明の諸実施形態は、方法、専用装置のような装置、データ処理システムのような装置、コンピュータ可読記憶媒体において具現されるなどした論理、または命令をエンコードされたコンピュータ可読記憶媒体、たとえばコンピュータ・プログラム・プロダクトとして構成されたコンピュータ可読記憶媒体として具現されてもよい。コンピュータ可読媒体は、一つまたは複数のプロセッサによって実行されたときに方法ステップの実行を引き起こす一組の命令をももって構成される。よって、本発明の諸側面は、方法、いくつかの機能要素を含む完全にハードウェアの実施形態の形を取ってもよい。ここで、機能要素とは処理機能を実行する要素を意味する。そのような各要素はハードウェア要素、たとえば専用ハードウェアまたは実行されたときに当該機能を実行する命令を含む記憶媒体を含む処理システムであってもよい。本発明の諸側面は、完全にソフトウェアの実施形態またはソフトウェアおよびハードウェアの側面を組み合わせる実施形態の形を取ってもよい。さらに、本発明は、コンピュータ可読媒体中などのプログラム論理、たとえばコンピュータ可読記憶媒体上のコンピュータ・プログラム、あるいはコンピュータ可読プログラム・コードをもって構成された該コンピュータ可読媒体、たとえばコンピュータ・プログラム・プロダクトの形を取ってもよい。専用ハードウェアの場合、ハードウェアの機能を定義することは、当業者が、プログラムによって処理できる機能記述を書くことができるようにするのに十分であることを注意しておく。あとは該プログラムが自動的に当該機能を実行するためのハードウェアを創り出すためのハードウェア記述を決定する。よって、本稿における記述は、そのような専用ハードウェアを定義するのに十分である。
コンピュータ可読媒体がある例示的実施形態では単一の媒体として示されているが、「媒体」という用語は、一つまたは複数の組の命令を記憶する単一の媒体または複数の媒体(たとえばいくつかのメモリ、中央集中されたまたは分散式のデータベースおよび/または付随するキャッシュおよびサーバー)を含むと解釈されるべきである。コンピュータ可読媒体は、これに限られないが不揮発性媒体および揮発性媒体を含む多くの形を取ることができる。不揮発性媒体はたとえば光ディスク、磁気ディスクおよび光磁気ディスクを含む。揮発性媒体はメイン・メモリのような動的〔ダイナミック〕メモリを含む。
本発明の実施形態が、いかなる特定の実装またはプログラミング技法にも限定されないこと、および本発明が本稿に記載される機能を実装するためのいかなる適切な技法を使って実装されてもよいことも理解されるであろう。さらに、諸実施形態は、いかなる特定のプログラミング言語またはオペレーティング・システムにも限定されない。
本明細書を通じての「一つの実施形態」または「ある実施形態」への言及は、その実施形態との関連で記述される特定の特徴、構造または特性が、本発明の少なくとも一つの実施形態に含まれることを意味する。よって、本明細書の随所で「一つの実施形態では」または「ある実施形態では」という表現が現れることは、必ずしも全部が同じ実施形態のことを指しているのではない。ただ、そうであることもありうる。さらに、一つまたは複数の実施形態において、該特定の特徴、構造または特性は、本開示から当業者には明白であろうように、いかなる好適な仕方で組み合わされてもよい。
同様に、本発明の例示的な実施形態の上記の記述において、本開示の流れをよくし、さまざまな発明的側面の一つまたは複数の理解を助ける目的で、本発明のさまざまな特徴が時に単一の実施形態、図面またはその説明においてまとめられていることを認識しておくべきである。しかしながら、このような開示法は、特許請求される発明が、各請求項において明示的に記載されているよりも多くの特徴を必要とするという意図を判定したものと解釈すべきではない。むしろ、付属の請求項に反映されるように、発明的側面は、上記で開示される単一の実施形態のすべての特徴よりも少ないもののうちにある。よって、請求項の記載は、ここに、明示的に、この発明を実施するための形態に組み込まれ、各請求項が本発明の別個の実施形態をなす。
さらに、本稿で記述されるいくつかの実施形態は、他の実施形態に含まれる特徴の一部を含み一部は含まないが、異なる実施形態の特徴の組み合わせも本発明の範囲内であり、異なる実施形態をなすことが意図される。そのことは、当業者には理解されるであろう。たとえば、請求項において、記載される実施形態の任意のものが任意の組み合わせにおいて使用できる。
さらに、いくつかの実施形態は、本稿では、コンピュータ・システムのプロセッサによってまたは当該機能を実行する他の手段によって実装できる方法または方法の要素の組み合わせとして記述される。よって、そのような方法または方法の要素を実行するための必要な命令をもつプロセッサは、方法または方法の要素を実行する手段をなす。さらに、装置実施形態の本稿に記載される要素は、本発明を実行するための該要素によって実行される機能を実行する手段の例である。
本稿で与えられる記述において、数多くの個別的詳細が記述されている。しかしながら、本発明の実施形態はそれらの個別的詳細なしでも実施されうることは理解されるものとする。その一方、よく知られた方法、構造および技法は、本記述の理解をかすませないよう、詳細に示しはしなかった。
本稿での用法では、特に断りのない限り、共通のオブジェクトを記述するための序数「第一」「第二」「第三」などの使用は単に、同様のオブジェクトの異なるインスタンスが言及されていることを示すのであって、そのように記述されているオブジェクトが時間的に、空間的に、序列において、またはいかなる仕方であれ、所定のシーケンスでなければならないことは意図していない。
本発明はE-AC-3規格のコンテキストで記述してきたが、本発明はそのようなコンテキストに限定されるものではなく、E-AC-3と何らかの類似性をもつ技法を使う他の方法によってエンコードされたデータを復号するためにも利用されうることは認識しておくべきである。たとえば、本発明の諸実施形態は、E-AC-3に対して上位互換である符号化オーディオを復号するためにも適用可能である。他の実施形態は、HE-AAC規格に従って符号化されている符号化オーディオを復号するためおよびHE-AACに対して上位互換である符号化オーディオを復号するために適用可能である。他の符号化ストリームも本発明の実施形態を使って有利に復号できる。
本稿において引用されているあらゆる米国特許、米国特許出願および米国を指定国とする国際(PCT)特許出願は、ここに参照によって組み込まれる。特許規則または法令が、それ自身参照によって情報を組み込んでいる素材の参照による組み込みを許さない場合には、本稿における参照による組み込みは、そのような参照によって組み込まれる素材における参照によって組み込まれている情報は、そのような情報が明示的に本稿に参照によって組み込まれているのでない限り、除外する。
本明細書における従来技術のいかなる議論も、いかなる意味でも、そのような従来技術が周知である、公知であるまたは技術常識であることを認めたものであると考えるべきではない。
請求項および明細書の記述において、有する、からなる、含むといった用語のいずれも、挙げられている要素/特徴を少なくとも含むが他を排除するものではないことを意味するオープンな用語である。よって、請求項で使われるときの有する、含むの語は、挙げられている手段または要素またはステップに限定するものとして解釈すべきではない。たとえば、AおよびBを有する装置という表現の範囲は、要素AおよびBのみを有する装置に限定されるべきではない。含むは有すると同義であり、有することを意味する。
同様に、請求項において使用されるときの結合されたという語は、直接接続だけに限定するものと解釈すべきではないことも注意しておくべきである。「結合された」および「接続された」という用語およびそれらの派生形が使用されうるが、これらの用語は、互いと同義であるとは意図されていないことを理解しておくべきである。よって、装置Bに結合された装置Aという表現の範囲は、装置Aの出力が装置Bの入力に直接接続されている装置系またはシステムに限定されるべきではない。Aの出力とBの入力の間に経路が存在し、その経路が他の装置または手段を含んでいてもよいことを意味する。「結合された」は二つ以上の要素が直接的な物理的または電気的接触状態にあること、あるいは二つ以上の要素が互いに直接接触してはいないがそれでも互いと協働または対話するを意味しうる。
このように、本発明の好ましい実施形態であると考えられるものについて記述してきたが、当業者は、本発明の精神から外れることなく他のさらなる修正がされうることを認識するであろう。本発明の範囲内にはいるようなそのようなすべての変更および修正を特許請求することが意図されている。たとえば、上記で挙げた公式は単に使用されうる手順の代表的なものである。ブロック図に機能を追加あるいは削除してもよく、機能要素間で処理が交換されてもよい。本発明の範囲内で記載される方法にステップが追加または削除されてもよい。
いくつかの態様を記載しておく。
〔態様1〕
N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するオーディオ・デコーダを動作させる方法であって、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数であり、当該方法は:
N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れる段階と;
受け入れたオーディオ・データを復号する段階とを含み、前記復号する段階は:
前記周波数領域の指数および仮数データをアンパックおよび復号する段階と;
アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定する段階と;
前記周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定する段階と;
M<Nの場合についてダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングする段階とを含み、次のA、BおよびCのうちの少なくとも一つは真であり、
Aは、前記復号する段階が、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定し、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用することを含むことであり、
Bは、前記時間領域ダウンミキシングが、前記ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、該クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、前記ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む、ことであり、
Cは、当該方法が、前記N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含み、非寄与チャンネルとは、前記M.m個のチャンネルに寄与しないチャンネルであり、当該方法が、同定された一つまたは複数の非寄与チャンネルに対しては、前記周波数領域データの逆変換および前記さらなる処理の適用を実行しない、ことである、
方法。
〔態様2〕
態様1記載の方法であって、前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含む、方法。
〔態様3〕
態様1または2記載の方法であって、前記エンコード方法が、前記周波数領域の指数および仮数データに関係するメタデータを形成およびパッキングすることを含み、前記メタデータは任意的に、過渡プレノイズ処理およびダウンミキシングに関係したメタデータを含む、方法。
〔態様4〕
態様1ないし3のうちいずれか一項記載の方法であって、Aが真である方法。
〔態様5〕
態様4記載の方法であって、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかの決定は、過渡プレノイズ処理があるかどうかを判定し、前記N個のチャンネルのうちのいずれかが異なるブロック型を有しているかどうかを判定し、前記N個のチャンネルにおいて同じブロック型をもち、過渡プレノイズ処理をもたず、M<Nであるブロックについてのみ周波数領域ダウンミキシングが適用される、方法。
〔態様6〕
態様4または5記載の方法であって、
前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含み、
前記特定のブロックについて周波数領域ダウンミキシングを適用することは、直前のブロックについてのダウンミキシングが時間領域ダウンミキシングであったかどうかを判定し、直前のブロックについてのダウンミキシングが時間領域ダウンミキシングであった場合、前記特定のブロックの復号データと重ねられるべき直前のブロックのデータに対して時間領域ダウンミキシングまたは擬似時間領域におけるダウンミキシングを適用することを含み、
特定のブロックについて時間領域ダウンミキシングを適用することは、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであったかどうかを判定し、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであった場合、前記特定のブロックを、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングでなかった場合とは異なる仕方で処理することを含む、
方法。
〔態様7〕
態様1ないし6のうちいずれか一項記載の方法であって、Bが真である、方法。
〔態様8〕
態様7記載の方法であって、前記デコーダはベクトル命令を含むストリーミング単一命令複数データ拡張(SSE)を含む命令セットを有する少なくとも一つのx86プロセッサを使用し、時間領域ダウンミキシングは前記一つまたは複数のx86プロセッサの少なくとも一つの上でベクトル命令を実行することを含む、方法。
〔態様9〕
態様1ないし8のうちいずれか一項記載の方法であって、Cが真である、方法。
〔態様10〕
態様9記載の方法であって、n=1かつm=0であり、逆変換およびさらなる処理の適用は低周波数効果チャンネル上では実行されない、方法。
〔態様11〕
態様9または10記載の方法であって、エンコードされたブロックを含むオーディオ・データは、ダウンミキシングを定義する情報を含み、一つまたは複数の非寄与チャンネルを同定することは、ダウンミキシングを定義する前記情報を使う、方法。
〔態様12〕
態様11記載の方法であって、ダウンミキシングを定義する前記情報は、一つまたは複数のチャンネルが非寄与チャンネルであることを示すあらかじめ定義された値をもつミックス・レベル・パラメータを含む、方法。
〔態様13〕
態様9または10記載の方法であって、一つまたは複数の非寄与チャンネルを同定することは、さらに、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することを含み、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも15dB低い場合である、方法。
〔態様14〕
態様13記載の方法であって、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも18dB低い場合である、方法。
〔態様15〕
態様13記載の方法であって、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも25dB低い場合である、方法。
〔態様16〕
態様13記載の方法であって、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することは、チャンネルの対の間の内容量の指標の差を設定可能な閾値と比較することを含む、方法。
〔態様17〕
態様16記載の方法であって、前記設定可能な閾値は、複数のあらかじめ定義された値のうちの一つに設定される、方法。
〔態様18〕
態様1ないし17のうちいずれか一項記載の方法であって、前記受け入れられるオーディオ・データが符号化されたデータのフレームのビットストリームの形であり、前記復号する段階は、一組のフロントエンド復号処理および一組のバックエンド復号処理に分割され、前記フロントエンド復号処理は、前記ビットストリームのフレームの前記周波数領域の指数および仮数データをアンパックおよび復号して、そのフレームについてのアンパックおよび復号された周波数領域の指数および仮数データおよびそのフレームの付随メタデータにすることを含み、前記バックエンド復号処理は、前記変換係数を決定する段階と、前記逆変換し、さらなる処理を適用する段階と、要求される過渡プレノイズ処理復号があればそれを適用する段階と、M<Nの場合にはダウンミキシングする段階とを含む、方法。
〔態様19〕
態様18記載の方法であって、前記フロントエンド復号処理は、第一のパスおよびそれに続く第二のパスにおいて実行され、前記第一のパスは、ブロックごとにメタデータをアンパックし、パックされた指数および仮数のデータが記憶されている場所へのポインタを保存することを含み、前記第二のパスは、パックされた指数および仮数への保存されたポインタを使って、チャンネルごとに指数および仮数のデータをアンパックおよび復号することを含む、方法。
〔態様20〕
態様1ないし19のうちいずれか一項記載の方法であって、前記エンコードされたオーディオ・データは、AC-3規格、E-AC-3規格、E-AC-3規格に対して上位互換である規格、HE-AAC規格およびHE-AAC規格に対して上位互換である規格からなる規格の集合のうちの一つに従ってエンコードされている、方法。
〔態様21〕
処理システムの一つまたは複数のプロセッサによって実行されたときに前記処理システムに、N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成することを実行させる復号命令を記憶しているコンピュータ可読記憶媒体であって、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数であり、前記復号命令は:
実行されたときに、N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れさせる命令と;
実行されたときに、受け入れたオーディオ・データを復号させる命令とを含み、実行されたときに復号させる前記命令は:
実行されたときに、前記周波数領域の指数および仮数データをアンパックおよび復号させる命令と;
実行されたときに、アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定させる命令と;
実行されたときに前記周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定させる命令と;
実行されたときに、M<Nであるかどうかを見きわめさせる命令と;M<Nであれば、
実行されたときにダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングさせる命令とを含み、次のA、BおよびCのうちの少なくとも一つは真であり、
Aは、実行されたときに復号させる前記命令が、実行されたときに、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定させる命令と、実行されたときに、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、周波数領域ダウンミキシングを適用させる命令とを含むことであり、
Bは、前記時間領域ダウンミキシングが、前記ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、該クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、前記ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む、ことであり、
Cは、実行されたときに復号させる前記命令が、前記N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含み、非寄与チャンネルとは、前記M.m個のチャンネルに寄与しないチャンネルであり、前記方法が、同定された一つまたは複数の非寄与チャンネルに対しては、前記周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである、
コンピュータ可読記憶媒体。
〔態様22〕
態様21記載のコンピュータ可読記憶媒体であって、前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含む、コンピュータ可読記憶媒体。
〔態様23〕
態様21または22記載のコンピュータ可読記憶媒体であって、前記エンコード方法が、前記周波数領域の指数および仮数データに関係するメタデータを形成およびパッキングすることを含み、前記メタデータは任意的に、過渡プレノイズ処理およびダウンミキシングに関係したメタデータを含む、コンピュータ可読記憶媒体。
〔態様24〕
態様21ないし23のうちいずれか一項記載のコンピュータ可読記憶媒体であって、Aが真である、コンピュータ可読記憶媒体。
〔態様25〕
態様24記載のコンピュータ可読記憶媒体であって、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかの決定は、過渡プレノイズ処理があるかどうかを判定し、前記N個のチャンネルのうちのいずれかが異なるブロック型を有しているかどうかを判定し、周波数領域ダウンミキシングが実行されるのは、実行されたときに、前記N個のチャンネルにおいて同じブロック型をもち、過渡プレノイズ処理をもたず、M<Nであるブロックについてのみ復号させる命令によってである、コンピュータ可読記憶媒体。
〔態様26〕
態様24または25記載のコンピュータ可読記憶媒体であって、
前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含み、
前記特定のブロックについて周波数領域ダウンミキシングを適用することは、直前のブロックについてのダウンミキシングが時間領域ダウンミキシングであったかどうかを判定し、直前のブロックについてのダウンミキシングが時間領域ダウンミキシングであった場合、前記特定のブロックの復号データと重ねられるべき直前のブロックのデータに対して時間領域ダウンミキシングまたは擬似時間領域におけるダウンミキシングを適用することを含み、
特定のブロックについて時間領域ダウンミキシングを適用することは、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであったかどうかを判定し、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであった場合、前記特定のブロックを、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングでなかった場合とは異なる仕方で処理することを含む、
コンピュータ可読記憶媒体。
〔態様27〕
態様21ないし26のうちいずれか一項記載のコンピュータ可読記憶媒体であって、Bが真である、コンピュータ可読記憶媒体。
〔態様28〕
態様27記載のコンピュータ可読記憶媒体であって、前記処理システムはベクトル命令を含むストリーミング単一命令複数データ拡張(SSE)を含む命令セットを有する少なくとも一つのx86プロセッサを使用し、実行されたときに受け入れたオーディオ・データを復号させる前記命令は前記一つまたは複数のx86プロセッサの少なくとも一つの上での実行のための命令を含み、実行されたときに時間領域ダウンミキシングをさせる前記命令は、前記一つまたは複数のx86プロセッサの少なくとも一つのためのベクトル命令を含む、コンピュータ可読記憶媒体。
〔態様29〕
態様21ないし28のうちいずれか一項記載のコンピュータ可読記憶媒体であって、Cが真である、コンピュータ可読記憶媒体。
〔態様30〕
態様29記載のコンピュータ可読記憶媒体であって、n=1かつm=0であり、逆変換およびさらなる処理の適用は低周波数効果チャンネル上では実行されない、コンピュータ可読記憶媒体。
〔態様31〕
態様29または30記載のコンピュータ可読記憶媒体であって、エンコードされたブロックを含むオーディオ・データは、ダウンミキシングを定義する情報を含み、一つまたは複数の非寄与チャンネルを同定することは、ダウンミキシングを定義する前記情報を使う、コンピュータ可読記憶媒体。
〔態様32〕
態様31記載のコンピュータ可読記憶媒体であって、ダウンミキシングを定義する前記情報は、一つまたは複数のチャンネルが非寄与チャンネルであることを示すあらかじめ定義された値をもつミックス・レベル・パラメータを含む、コンピュータ可読記憶媒体。
〔態様33〕
態様29または30記載のコンピュータ可読記憶媒体であって、一つまたは複数の非寄与チャンネルを同定することは、さらに、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することを含み、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも15dB低い場合である、コンピュータ可読記憶媒体。
〔態様34〕
態様33記載のコンピュータ可読記憶媒体であって、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも18dB低い場合である、コンピュータ可読記憶媒体。
〔態様35〕
態様33記載のコンピュータ可読記憶媒体であって、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも25dB低い場合である、コンピュータ可読記憶媒体。
〔態様36〕
態様33記載のコンピュータ可読記憶媒体であって、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することは、チャンネルの対の間の内容量の指標の差を設定可能な閾値と比較することを含む、コンピュータ可読記憶媒体。
〔態様37〕
態様36記載のコンピュータ可読記憶媒体であって、前記設定可能な閾値は、複数のあらかじめ定義された値のうちの一つに設定される、コンピュータ可読記憶媒体。
〔態様38〕
態様21ないし37のうちいずれか一項記載のコンピュータ可読記憶媒体であって、前記受け入れられるオーディオ・データが符号化されたデータのフレームのビットストリームの形であり、実行されたときに受け入れたデータを復号させる前記命令は、フロントエンド復号モジュールおよびバックエンド復号モジュールを含む一組の再利用可能なモジュールに分割され、前記フロントエンド復号モジュールは、実行されたときに前記ビットストリームのフレームの前記周波数領域の指数および仮数データをアンパックおよび復号して、そのフレームについてのアンパックおよび復号された周波数領域の指数および仮数データおよびそのフレームの付随メタデータにすることを行わせる命令を含み、前記バックエンド復号モジュールは、実行されたときに、前記変換係数を決定し、前記逆変換し、さらなる処理を適用し、要求される過渡プレノイズ処理復号があればそれを適用し、M<Nの場合にはダウンミキシングすることを行わせる命令を含む、コンピュータ可読記憶媒体。
〔態様39〕
態様21ないし38のうちいずれか一項記載のコンピュータ可読記憶媒体であって、前記エンコードされたオーディオ・データは、AC-3規格、E-AC-3規格、E-AC-3規格に対して上位互換である規格、HE-AAC規格およびHE-AAC規格に対して上位互換である規格からなる規格の集合のうちの一つに従ってエンコードされている、コンピュータ可読記憶媒体。
〔態様40〕
態様38記載のコンピュータ可読記憶媒体であって、
前記エンコードされたオーディオ・データは、E-AC-3規格に従ってまたはE-AC-3規格に対して上位互換である規格に従ってエンコードされており、5つより多くの符号化されたチャンネルを含むことができ、
前記さらなる処理は、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含み、
N>5の場合、前記符号化されたビットストリームは、5.1個までの符号化されたチャンネルの独立フレームおよび符号化されたデータの少なくとも一つの従属フレームを含み、
前記復号命令は、複数の5.1チャンネル復号モジュールとして構成され、各5.1チャンネル復号モジュールは、フロントエンド復号モジュールのそれぞれのインスタンスおよびバックエンド復号モジュールのそれぞれのインスタンスを含み、前記複数の5.1チャンネル復号モジュールは、実行されたときに前記独立フレームの復号をさせる第一の5.1チャンネル復号モジュールと、各従属フレームについての一つまたは複数の他のチャンネル復号モジュールとを含み、前記復号命令は、さらに:
実行されたときに、ビットストリーム情報フィールド・データをアンパックしてフレームおよびフレーム種別を識別させ、識別されたフレームを適切なフロントエンド復号モジュールのインスタンスに与えさせる命令のフレーム情報解析モジュールと、
実行されたときに、N>5の場合、それぞれのバックエンド復号モジュールからの復号されたデータを組み合わせて前記N個のチャンネルの復号データを形成させる命令のチャンネル・マッピング器モジュールとを含む、
コンピュータ可読記憶媒体。
〔態様41〕
N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するオーディオ・データ処理装置であって、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数であり、当該装置は:
N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れる手段と;
受け入れたオーディオ・データを復号する手段とを有しており、前記復号する手段は:
前記周波数領域の指数および仮数データをアンパックおよび復号する手段と;
アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定する手段と;
前記周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定する手段と;
M<Nの場合についてダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングする手段とを含み、
次のA、BおよびCのうちの少なくとも一つは真であり、
Aは、前記復号する手段が、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定する手段と、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用する周波数領域ダウンミキシング適用手段とを含むことであり、
Bは、前記時間領域ダウンミキシングする手段が、前記ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかの試験を実行し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、ダウンミキシング・データに従って直接、時間領域ダウンミキシングを適用する、ことであり、
Cは、当該装置が、前記N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定する手段を含み、非寄与チャンネルとは、前記M.m個のチャンネルに寄与しないチャンネルであり、当該装置が、同定された一つまたは複数の非寄与チャンネルに対しては、前記周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである、
装置。
〔態様42〕
態様41記載の装置であって、前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含む、装置。
〔態様43〕
態様41または42記載の装置であって、前記エンコード方法が、前記周波数領域の指数および仮数データに関係するメタデータを形成およびパッキングすることを含み、前記メタデータは任意的に、過渡プレノイズ処理およびダウンミキシングに関係したメタデータを含む、装置。
〔態様44〕
態様41ないし43のうちいずれか一項記載の装置であって、Aが真である装置。
〔態様45〕
態様44記載の装置であって、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定する手段は、過渡プレノイズ処理があるかどうかを判定し、前記N個のチャンネルのうちのいずれかが異なるブロック型を有しているかどうかを判定し、前記N個のチャンネルにおいて同じブロック型をもち、過渡プレノイズ処理をもたず、M<Nであるブロックについてのみ周波数領域ダウンミキシングが適用される、装置。
〔態様46〕
態様44または45記載の装置であって、
前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含み、
前記特定のブロックについて周波数領域ダウンミキシングを適用することは、直前のブロックについてのダウンミキシングが時間領域ダウンミキシングであったかどうかを判定し、直前のブロックについてのダウンミキシングが時間領域ダウンミキシングであった場合、前記特定のブロックの復号データと重ねられるべき直前のブロックのデータに対して時間領域ダウンミキシングまたは擬似時間領域におけるダウンミキシングを適用することを含み、
特定のブロックについて時間領域ダウンミキシングを適用することは、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであったかどうかを判定し、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングであった場合、前記特定のブロックを、直前のブロックについてのダウンミキシングが周波数領域ダウンミキシングでなかった場合とは異なる仕方で処理することを含む、
装置。
〔態様47〕
態様41ないし46のうちいずれか一項記載の装置であって、Bが真である、装置。
〔態様48〕
態様47記載の装置であって、当該装置はベクトル命令を含むストリーミング単一命令複数データ拡張(SSE)を含む命令セットを有する少なくとも一つのx86プロセッサを含み、時間領域ダウンミキシングする手段は前記一つまたは複数のx86プロセッサの少なくとも一つの上でベクトル命令を実行する、装置。
〔態様49〕
態様41ないし48のうちいずれか一項記載の装置であって、Cが真である、装置。
〔態様50〕
態様49記載の装置であって、n=1かつm=0であり、逆変換およびさらなる処理の適用は低周波数効果チャンネル上では実行されない、装置。
〔態様51〕
態様49または50記載の装置であって、エンコードされたブロックを含むオーディオ・データは、ダウンミキシングを定義する情報を含み、一つまたは複数の非寄与チャンネルを同定することは、ダウンミキシングを定義する前記情報を使う、装置。
〔態様52〕
態様49または50記載の装置であって、一つまたは複数の非寄与チャンネルを同定することは、さらに、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することを含み、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも15dB低い場合である、装置。
〔態様53〕
態様41ないし52のうちいずれか一項記載の装置であって、前記エンコードされたオーディオ・データは、AC-3規格、E-AC-3規格、E-AC-3規格に対して上位互換である規格、HE-AAC規格およびHE-AAC規格に対して上位互換である規格からなる規格の集合のうちの一つに従ってエンコードされている、装置。
〔態様54〕
N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを処理してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成する装置であって、M≧1であり、n=0または1はエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、m=0または1は復号オーディオ・データにおける低周波数効果チャンネルの数であり、当該装置は、
エンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データを含むオーディオ・データを受け入れる手段であって、前記エンコード方法は、N.nチャンネルのデジタル・オーディオ・データを、逆変換およびさらなる処理によってエイリアシング・エラーなしで時間領域サンプルを復元できるよう変換し、周波数領域の指数および仮数データを形成およびパッキングし、該周波数領域の指数および仮数データに関係するメタデータを形成およびパッキングすることを含み、前記メタデータは任意的に、過渡プレノイズ処理に関係したメタデータを含む、手段と;
受け入れたオーディオ・データを復号する手段とを有しており、
前記復号する手段は:
フロントエンド復号のための一つまたは複数の手段とバックエンド復号のための一つまたは複数の手段とを有しており、
前記フロントエンド復号のための手段は、前記メタデータのアンパックのためであり、前記周波数領域の指数および仮数データのアンパックおよび復号のためである手段を含み、
前記バックエンド復号のための手段は、アンパックされて復号された周波数領域の指数および仮数データから変換係数を決定するため;前記周波数領域データを逆変換するため;窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定するため;過渡プレノイズ処理に関係した前記メタデータに従って、必要とされる過渡プレノイズ処理復号があればそれを適用するため;およびダウンミキシング・データに従って時間領域ダウンミキシングするための手段を含み、前記時間領域ダウンミキシングは、M<Nの場合にダウンミキシング・データに従ってデータの少なくともいくつかのブロックを時間領域ダウンミキシングし、
次のA、BおよびCのうちの少なくとも一つは真であり、
Aは、前記バックエンド復号のための手段が、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定する手段と、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用する周波数領域ダウンミキシング適用手段とを含むことであり、
Bは、前記時間領域ダウンミキシングする手段が、前記ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかの試験を実行し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、該クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、前記ダウンミキシング・データに従って直接、時間領域ダウンミキシングを適用する、ことであり、
Cは、当該装置が、前記N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定する手段を含み、非寄与チャンネルとは、前記M.m個のチャンネルに寄与しないチャンネルであり、前記バックエンド復号のための手段が、同定された一つまたは複数の非寄与チャンネルに対しては、前記周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである、
装置。
〔態様55〕
態様54記載の装置であって、前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含む、装置。
〔態様56〕
態様54または55記載の装置であって、
前記エンコードされたオーディオ・データは、E-AC-3規格に従ってまたはE-AC-3規格に対して上位互換である規格に従ってエンコードされており、5つより多くの符号化されたチャンネルを含むことができ、
N>5の場合、前記オーディオ・データは5.1個までの符号化されたチャンネルの独立フレームおよび符号化されたデータの少なくとも一つの従属フレームを含み、
前記復号する手段は:
5.1チャンネルまでの前記独立フレームを復号するための第一のフロントエンド復号手段および第一のバックエンド復号手段と、一つまたは複数の従属フレームのデータを復号するための第二のフロントエンド復号手段および第二のバックエンド復号手段とを含む、前記フロントエンド復号のための手段および前記バックエンド復号のための手段の複数のインスタンスと;
ビットストリーム情報フィールド・データをアンパックしてフレームおよびフレーム種別を識別し、識別されたフレームを適切なフロントエンド復号手段に与える手段と;
それぞれのバックエンド復号手段からの復号データを組み合わせて前記Nチャンネルの復号データを形成する手段とを有する、
装置。
〔態様57〕
態様54ないし56のうちいずれか一項記載の装置であって、Aが真である、装置。
〔態様58〕
態様57記載の装置であって、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定する手段は、過渡プレノイズ処理があるかどうかを判定し、前記N個のチャンネルのうちのいずれかが異なるブロック型を有しているかどうかを判定することを実行し、前記N個のチャンネルにおいて同じブロック型をもち、過渡プレノイズ処理をもたず、M<Nであるブロックについてのみ周波数領域ダウンミキシングが適用される、装置。
〔態様59〕
態様54ないし58のうちいずれか一項記載の装置であって、Bが真である、装置。
〔態様60〕
態様59記載の装置であって、当該装置はベクトル命令を含むストリーミング単一命令複数データ拡張(SSE)を含む命令セットを有する少なくとも一つのx86プロセッサを含み、時間領域ダウンミキシングする手段は前記一つまたは複数のx86プロセッサの少なくとも一つの上でベクトル命令を実行する、装置。
〔態様61〕
態様54ないし60のうちいずれか一項記載の装置であって、Cが真である、装置。
〔態様62〕
態様61記載の装置であって、n=1かつm=0であり、逆変換およびさらなる処理の適用は低周波数効果チャンネル上では実行されない、装置。
〔態様63〕
態様61または62記載の装置であって、エンコードされたブロックを含むオーディオ・データは、ダウンミキシングを定義する情報を含み、一つまたは複数の非寄与チャンネルを同定することは、ダウンミキシングを定義する前記情報を使う、装置。
〔態様64〕
態様61または62記載の装置であって、一つまたは複数の非寄与チャンネルを同定することは、さらに、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することを含み、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも15dB低い場合である、装置。
〔態様65〕
態様54ないし64のうちいずれか一項記載の装置であって、前記エンコードされたオーディオ・データは、AC-3規格、E-AC-3規格、E-AC-3規格に対して上位互換である規格、HE-AAC規格およびHE-AAC規格に対して上位互換である規格からなる規格の集合のうちの一つに従ってエンコードされている、装置。
〔態様66〕
N.nチャンネルのオーディオ・データのエンコードされたオーディオ・データを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するよう構成されたシステムであって、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数であり、当該システムは:
一つまたは複数のプロセッサと;
前記一つまたは複数のプロセッサに結合された記憶サブシステムとを有しており、
当該システムは、N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成し、パッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れ;さらに、受け入れたオーディオ・データを復号するよう構成されており、前記は:
前記周波数領域の指数および仮数データをアンパックおよび復号し;
アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定し;
前記周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定し;
M<Nの場合についてはダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングすることを含み、
次のA、BおよびCのうちの少なくとも一つは真であり、
Aは、前記復号が、ブロックごとに、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定し、特定のブロックについて周波数領域ダウンミキシングを適用することが決定される場合、その特定のブロックについて周波数領域ダウンミキシングを適用することを含むことであり、
Bは、前記時間領域ダウンミキシングが、前記ダウンミキシング・データが前に使われたダウンミキシング・データから変わっているかどうかを試験し、もし変わっていれば、クロスフェーディングを適用してクロスフェードしたダウンミキシング・データを決定し、該クロスフェードしたダウンミキシング・データに従って時間領域ダウンミキシングし、もし変わっていなければ、前記ダウンミキシング・データに従って直接、時間領域ダウンミキシングすることを含む、ことであり、
Cは、前記方法が、前記N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含み、非寄与チャンネルとは、前記M.m個のチャンネルに寄与しないチャンネルであり、前記方法が、同定された一つまたは複数の非寄与チャンネルに対しては、前記周波数領域データの逆変換およびさらなる処理の適用を実行しない、ことである、
システム。
〔態様67〕
態様66記載のシステムであって、前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含む、システム。
〔態様68〕
態様66または67記載のシステムであって、Aが真である、システム。
〔態様69〕
態様68記載のシステムであって、周波数領域ダウンミキシングを適用するか時間領域ダウンミキシングを適用するかを決定することは、過渡プレノイズ処理があるかどうかを判定し、前記N個のチャンネルのうちのいずれかが異なるブロック型を有しているかどうかを判定し、前記N個のチャンネルにおいて同じブロック型をもち、過渡プレノイズ処理をもたず、M<Nであるブロックについてのみ周波数領域ダウンミキシングが適用される、システム。
〔態様70〕
態様66ないし69のうちいずれか一項記載のシステムであって、Bが真である、システム。
〔態様71〕
態様70記載のシステムであって、当該システムはベクトル命令を含むストリーミング単一命令複数データ拡張(SSE)を含む命令セットを有する少なくとも一つのx86プロセッサを含み、時間領域ダウンミキシングは前記一つまたは複数のx86プロセッサの少なくとも一つの上でベクトル命令を実行することを含む、システム。
〔態様72〕
態様66ないし71のうちいずれか一項記載のシステムであって、Cが真である、システム。
〔態様73〕
態様72記載のシステムであって、n=1かつm=0であり、逆変換およびさらなる処理の適用は低周波数効果チャンネル上では実行されない、システム。
〔態様74〕
態様72または73記載のシステムであって、エンコードされたブロックを含むオーディオ・データは、ダウンミキシングを定義する情報を含み、一つまたは複数の非寄与チャンネルを同定することは、ダウンミキシングを定義する前記情報を使う、システム。
〔態様75〕
態様72または73記載のシステムであって、一つまたは複数の非寄与チャンネルを同定することは、さらに、一つまたは複数のチャンネルが一つまたは複数の他のチャンネルに対して取るに足りない量の内容をもつかどうかを識別することを含み、チャンネルが別のチャンネルに対して取るに足りない量の内容をもつのは、そのエネルギーまたは絶対レベルが、前記別のチャンネルより少なくとも15dB低い場合である、システム。
〔態様76〕
態様66ないし75のうちいずれか一項記載のシステムであって、前記エンコードされたオーディオ・データは、AC-3規格、E-AC-3規格、E-AC-3規格に対して上位互換である規格、HE-AAC規格およびHE-AAC規格に対して上位互換である規格からなる規格の集合のうちの一つに従ってエンコードされている、システム。
〔態様77〕
態様66ないし76のうちいずれか一項記載のシステムであって、
受け入れたオーディオ・データは、符号化されたデータのフレームからなるビットストリームの形であり、
前記記憶サブシステムは、前記処理システムの前記プロセッサの一つまたは複数によって実行されたとき、受け入れたオーディオ・データの復号をさせる命令を与えられて構成されている、
システム。
〔態様78〕
態様66ないし77のうちいずれか一項記載のシステムであって、ネットワーク・リンクを介してネットワーク接続される一つまたは複数のサブシステムを含み、各サブシステムは少なくとも一つのプロセッサを含む、システム。

Claims (10)

  1. N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するオーディオ・デコーダを動作させる方法であって、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数であり、当該方法は:
    N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成してパッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコード・オーディオ・データのブロックを含むオーディオ・データを受け入れる段階と;
    受け入れたオーディオ・データを復号する段階とを含み、前記復号する段階は:
    前記周波数領域の指数および仮数データをアンパックおよび復号する段階と;
    アンパックされ復号された周波数領域の指数および仮数データから変換係数を決定する段階と;
    前記周波数領域データを逆変換し、さらなる処理を適用してサンプリングされたオーディオ・データを決定する段階と;
    M<Nの場合についてダウンミキシング・データに従って、決定されたサンプリングされたオーディオ・データの少なくともいくつかのブロックを時間領域ダウンミキシングする段階とを含み、
    当該方法が、前記N.n個の入力チャンネルのうちの一つまたは複数の非寄与チャンネルを同定することを含み、非寄与チャンネルとは、前記M.m個のチャンネルに寄与しないチャンネルであり、
    当該方法が、同定された一つまたは複数の非寄与チャンネルに対しては、前記周波数領域データの逆変換を実行する必要がなく、前記さらなる処理の適用する必要がない、
    方法。
  2. 請求項1記載の方法であって、前記エンコード方法における変換が重複変換を使用し、前記さらなる処理が、窓処理および重複加算演算を適用してサンプリングされたオーディオ・データを決定することを含む、方法。
  3. 請求項1または2記載の方法であって、前記エンコード方法が、前記周波数領域の指数および仮数データに関係するメタデータを形成およびパッキングすることを含み、前記メタデータは、過渡プレノイズ処理およびダウンミキシングに関係したメタデータを含む、方法。
  4. 請求項1ないし3のうちいずれか一項記載の方法であって、前記デコーダはベクトル命令を含むストリーミング単一命令複数データ拡張(SSE)を含む命令セットを有する少なくとも一つのx86プロセッサを使用し、時間領域ダウンミキシングは前記一つまたは複数のx86プロセッサの少なくとも一つの上でベクトル命令を実行することを含む、方法。
  5. 請求項1ないし3のうちいずれか一項記載の方法であって、前記受け入れられるオーディオ・データが符号化されたデータのフレームのビットストリームの形であり、前記復号する段階は、一組のフロントエンド復号処理および一組のバックエンド復号処理に分割され、前記フロントエンド復号処理は、前記ビットストリームのフレームの前記周波数領域の指数および仮数データをアンパックおよび復号して、そのフレームについてのアンパックおよび復号された周波数領域の指数および仮数データおよびそのフレームの付随メタデータにすることを含み、前記バックエンド復号処理は、前記変換係数を決定する段階と、前記逆変換し、さらなる処理を適用する段階と、要求される過渡プレノイズ処理復号があればそれを適用する段階と、M<Nの場合にはダウンミキシングする段階とを含む、方法。
  6. 請求項5記載の方法であって、前記フロントエンド復号処理は、第一のパスおよびそれに続く第二のパスにおいて実行され、前記第一のパスは、ブロックごとにメタデータをアンパックし、パックされた指数および仮数のデータが記憶されている場所へのポインタを保存することを含み、前記第二のパスは、パックされた指数および仮数への保存されたポインタを使って、チャンネルごとに指数および仮数のデータをアンパックおよび復号することを含む、方法。
  7. 請求項1ないし6のうちいずれか一項記載の方法であって、前記エンコードされたオーディオ・データは、AC-3規格、E-AC-3規格、E-AC-3規格に対して上位互換である規格およびHE-AAC規格およびHE-AAC規格に対して上位互換である規格からなる規格の集合のうちの一つに従ってエンコードされている、方法。
  8. 処理システムの一つまたは複数のプロセッサによって実行されたときに前記処理システムに、請求項1ないし7のうちいずれか一項記載の方法を実行させる復号命令を記憶しているコンピュータ可読記憶媒体。
  9. N.nチャンネルのオーディオ・データのエンコードされたブロックを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するオーディオ・データ処理装置であって、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数であり、当該装置は、請求項1ないし7のうちいずれか一項記載の方法を実行する手段を有する、装置。
  10. N.nチャンネルのエンコードされたオーディオ・データを含むオーディオ・データを復号してM.mチャンネルの復号されたオーディオを含む復号オーディオ・データを形成するよう構成されたシステムであって、M≧1であり、nはエンコードされたオーディオ・データにおける低周波数効果チャンネルの数であり、mは復号オーディオ・データにおける低周波数効果チャンネルの数であり、当該システムは:
    一つまたは複数のプロセッサと;
    前記一つまたは複数のプロセッサに結合された記憶サブシステムとを有しており、
    当該システムは、N.nチャンネルのデジタル・オーディオ・データを変換して周波数領域の指数および仮数データを形成してパッキングすることを含むエンコード方法によってエンコードされた、N.nチャンネルのエンコードされたオーディオ・データのブロックを含む前記オーディオ・データを受け入れるよう構成されており、
    前記記憶サブシステムは、実行されたときに請求項1ないし7のうちいずれか一項記載の方法を実行する手段を行なわせる命令を含んでいる、システム。
JP2014047759A 2010-02-18 2014-03-11 効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法 Active JP5863858B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US30587110P 2010-02-18 2010-02-18
US61/305,871 2010-02-18
US35976310P 2010-06-29 2010-06-29
US61/359,763 2010-06-29

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012512088A Division JP5501449B2 (ja) 2010-02-18 2011-02-03 効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法

Publications (2)

Publication Number Publication Date
JP2014146040A true JP2014146040A (ja) 2014-08-14
JP5863858B2 JP5863858B2 (ja) 2016-02-17

Family

ID=43877072

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2012512088A Active JP5501449B2 (ja) 2010-02-18 2011-02-03 効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法
JP2014047759A Active JP5863858B2 (ja) 2010-02-18 2014-03-11 効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2012512088A Active JP5501449B2 (ja) 2010-02-18 2011-02-03 効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法

Country Status (36)

Country Link
US (3) US8214223B2 (ja)
EP (2) EP2698789B1 (ja)
JP (2) JP5501449B2 (ja)
KR (2) KR101327194B1 (ja)
CN (2) CN102428514B (ja)
AP (1) AP3147A (ja)
AR (2) AR080183A1 (ja)
AU (1) AU2011218351B2 (ja)
BR (1) BRPI1105248B1 (ja)
CA (3) CA2794047A1 (ja)
CO (1) CO6501169A2 (ja)
DK (1) DK2360683T3 (ja)
EA (1) EA025020B1 (ja)
EC (1) ECSP11011358A (ja)
ES (1) ES2467290T3 (ja)
GE (1) GEP20146086B (ja)
GT (1) GT201100246A (ja)
HK (2) HK1160282A1 (ja)
HN (1) HN2011002584A (ja)
HR (1) HRP20140506T1 (ja)
IL (3) IL215254A (ja)
MA (1) MA33270B1 (ja)
ME (1) ME01880B (ja)
MX (1) MX2011010285A (ja)
MY (1) MY157229A (ja)
NI (1) NI201100175A (ja)
NZ (1) NZ595739A (ja)
PE (1) PE20121261A1 (ja)
PL (1) PL2360683T3 (ja)
PT (1) PT2360683E (ja)
RS (1) RS53336B (ja)
SG (1) SG174552A1 (ja)
SI (1) SI2360683T1 (ja)
TW (2) TWI557723B (ja)
WO (1) WO2011102967A1 (ja)
ZA (1) ZA201106950B (ja)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8948406B2 (en) * 2010-08-06 2015-02-03 Samsung Electronics Co., Ltd. Signal processing method, encoding apparatus using the signal processing method, decoding apparatus using the signal processing method, and information storage medium
US20120033819A1 (en) * 2010-08-06 2012-02-09 Samsung Electronics Co., Ltd. Signal processing method, encoding apparatus therefor, decoding apparatus therefor, and information storage medium
TWI716169B (zh) 2010-12-03 2021-01-11 美商杜比實驗室特許公司 音頻解碼裝置、音頻解碼方法及音頻編碼方法
KR101809272B1 (ko) * 2011-08-03 2017-12-14 삼성전자주식회사 다 채널 오디오 신호의 다운 믹스 방법 및 장치
WO2013101137A1 (en) * 2011-12-30 2013-07-04 Intel Corporation On die/off die memory management
KR101915258B1 (ko) * 2012-04-13 2018-11-05 한국전자통신연구원 오디오 메타데이터 제공 장치 및 방법, 오디오 데이터 제공 장치 및 방법, 오디오 데이터 재생 장치 및 방법
US10083700B2 (en) 2012-07-02 2018-09-25 Sony Corporation Decoding device, decoding method, encoding device, encoding method, and program
CA2843226A1 (en) * 2012-07-02 2014-01-09 Sony Corporation Decoding device, decoding method, encoding device, encoding method, and program
KR20150012146A (ko) * 2012-07-24 2015-02-03 삼성전자주식회사 오디오 데이터를 처리하기 위한 방법 및 장치
PL2880654T3 (pl) * 2012-08-03 2018-03-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Dekoder i sposób realizacji uogólnionej parametrycznej koncepcji kodowania przestrzennych obiektów audio dla przypadków wielokanałowego downmixu/upmixu
JP6242916B2 (ja) 2013-01-21 2017-12-06 ドルビー ラボラトリーズ ライセンシング コーポレイション メタデータのトランスコード
KR102473260B1 (ko) * 2013-01-21 2022-12-05 돌비 레버러토리즈 라이쎈싱 코오포레이션 상이한 재생 디바이스들에 걸친 라우드니스 및 동적 범위의 최적화
KR20140117931A (ko) 2013-03-27 2014-10-08 삼성전자주식회사 오디오 디코딩 장치 및 방법
KR102586356B1 (ko) 2013-03-28 2023-10-06 돌비 레버러토리즈 라이쎈싱 코오포레이션 임의적 라우드스피커 배치들로의 겉보기 크기를 갖는 오디오 오브젝트들의 렌더링
TWI530941B (zh) 2013-04-03 2016-04-21 杜比實驗室特許公司 用於基於物件音頻之互動成像的方法與系統
BR112015025092B1 (pt) * 2013-04-05 2022-01-11 Dolby International Ab Sistema de processamento de áudio e método para processar um fluxo de bits de áudio
TWI557727B (zh) 2013-04-05 2016-11-11 杜比國際公司 音訊處理系統、多媒體處理系統、處理音訊位元流的方法以及電腦程式產品
CN108806704B (zh) * 2013-04-19 2023-06-06 韩国电子通信研究院 多信道音频信号处理装置及方法
US8804971B1 (en) * 2013-04-30 2014-08-12 Dolby International Ab Hybrid encoding of higher frequency and downmixed low frequency content of multichannel audio
CN104143334B (zh) * 2013-05-10 2017-06-16 中国电信股份有限公司 可编程图形处理器及其对多路音频进行混音的方法
EP2804176A1 (en) * 2013-05-13 2014-11-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio object separation from mixture signal using object-specific time/frequency resolutions
EP2973551B1 (en) 2013-05-24 2017-05-03 Dolby International AB Reconstruction of audio scenes from a downmix
MY178342A (en) 2013-05-24 2020-10-08 Dolby Int Ab Coding of audio scenes
US11146903B2 (en) 2013-05-29 2021-10-12 Qualcomm Incorporated Compression of decomposed representations of a sound field
TWM487509U (zh) * 2013-06-19 2014-10-01 杜比實驗室特許公司 音訊處理設備及電子裝置
EP2830043A3 (en) 2013-07-22 2015-02-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method for Processing an Audio Signal in accordance with a Room Impulse Response, Signal Processing Unit, Audio Encoder, Audio Decoder, and Binaural Renderer
EP2830047A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for low delay object metadata coding
CN105531759B (zh) * 2013-09-12 2019-11-26 杜比实验室特许公司 用于下混合音频内容的响度调整
ES2641538T3 (es) 2013-09-12 2017-11-10 Dolby International Ab Codificación de contenido de audio multicanal
US10095468B2 (en) 2013-09-12 2018-10-09 Dolby Laboratories Licensing Corporation Dynamic range control for a wide variety of playback environments
EP2866227A1 (en) 2013-10-22 2015-04-29 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method for decoding and encoding a downmix matrix, method for presenting audio content, encoder and decoder for a downmix matrix, audio encoder and audio decoder
US9502045B2 (en) * 2014-01-30 2016-11-22 Qualcomm Incorporated Coding independent frames of ambient higher-order ambisonic coefficients
WO2015124597A1 (en) * 2014-02-18 2015-08-27 Dolby International Ab Estimating a tempo metric from an audio bit-stream
RU2646320C1 (ru) 2014-04-11 2018-03-02 Самсунг Электроникс Ко., Лтд. Способ и устройство для рендеринга звукового сигнала и компьютерно-читаемый носитель информации
US10770087B2 (en) 2014-05-16 2020-09-08 Qualcomm Incorporated Selecting codebooks for coding vectors decomposed from higher-order ambisonic audio signals
JP6683618B2 (ja) * 2014-09-08 2020-04-22 日本放送協会 音声信号処理装置
US9886962B2 (en) * 2015-03-02 2018-02-06 Google Llc Extracting audio fingerprints in the compressed domain
US9837086B2 (en) * 2015-07-31 2017-12-05 Apple Inc. Encoded audio extended metadata-based dynamic range control
ES2956344T3 (es) * 2015-08-25 2023-12-19 Dolby Laboratories Licensing Corp Descodificador de audio y procedimiento de descodificación
US10015612B2 (en) 2016-05-25 2018-07-03 Dolby Laboratories Licensing Corporation Measurement, verification and correction of time alignment of multiple audio channels and associated metadata
SG10202100336WA (en) * 2017-01-10 2021-02-25 Fraunhofer Ges Forschung Audio decoder, audio encoder, method for providing a decoded audio signal, method for providing an encoded audio signal, audio stream, audio stream provider and computer program using a stream identifier
US10210874B2 (en) * 2017-02-03 2019-02-19 Qualcomm Incorporated Multi channel coding
US11582383B2 (en) 2017-11-10 2023-02-14 Koninklijke Kpn N.V. Obtaining image data of an object in a scene
TWI681384B (zh) * 2018-08-01 2020-01-01 瑞昱半導體股份有限公司 音訊處理方法與音訊等化器
US11765536B2 (en) 2018-11-13 2023-09-19 Dolby Laboratories Licensing Corporation Representing spatial audio by means of an audio signal and associated metadata
CN110035299B (zh) * 2019-04-18 2021-02-05 雷欧尼斯(北京)信息技术有限公司 沉浸式对象音频的压缩传输方法与系统
CN110417978B (zh) * 2019-07-24 2021-04-09 广东商路信息科技有限公司 菜单配置方法、装置、设备及存储介质
JP7314398B2 (ja) * 2019-08-15 2023-07-25 ドルビー・インターナショナル・アーベー 変更オーディオビットストリームの生成及び処理のための方法及び装置
CN113035210A (zh) * 2021-03-01 2021-06-25 北京百瑞互联技术有限公司 一种lc3音频混合方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040117193A1 (en) * 2002-12-12 2004-06-17 Renesas Technology Corporation Audio decoding reproduction apparatus
JP2006146247A (ja) * 1995-09-29 2006-06-08 United Module Corp オーディオ復号装置
JP2009284212A (ja) * 2008-05-22 2009-12-03 Mitsubishi Electric Corp デジタル音声信号解析方法、その装置、及び映像音声記録装置

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5274740A (en) 1991-01-08 1993-12-28 Dolby Laboratories Licensing Corporation Decoder for variable number of channel presentation of multidimensional sound fields
US5867819A (en) 1995-09-29 1999-02-02 Nippon Steel Corporation Audio decoder
US6128597A (en) * 1996-05-03 2000-10-03 Lsi Logic Corporation Audio decoder with a reconfigurable downmixing/windowing pipeline and method therefor
SG54379A1 (en) 1996-10-24 1998-11-16 Sgs Thomson Microelectronics A Audio decoder with an adaptive frequency domain downmixer
SG54383A1 (en) * 1996-10-31 1998-11-16 Sgs Thomson Microelectronics A Method and apparatus for decoding multi-channel audio data
US5986709A (en) 1996-11-18 1999-11-16 Samsung Electronics Co., Ltd. Adaptive lossy IDCT for multitasking environment
US6005948A (en) * 1997-03-21 1999-12-21 Sony Corporation Audio channel mixing
TW405328B (en) * 1997-04-11 2000-09-11 Matsushita Electric Ind Co Ltd Audio decoding apparatus, signal processing device, sound image localization device, sound image control method, audio signal processing device, and audio signal high-rate reproduction method used for audio visual equipment
US5946352A (en) 1997-05-02 1999-08-31 Texas Instruments Incorporated Method and apparatus for downmixing decoded data streams in the frequency domain prior to conversion to the time domain
EP0990368B1 (en) 1997-05-08 2002-04-24 STMicroelectronics Asia Pacific Pte Ltd. Method and apparatus for frequency-domain downmixing with block-switch forcing for audio decoding functions
US6141645A (en) 1998-05-29 2000-10-31 Acer Laboratories Inc. Method and device for down mixing compressed audio bit stream having multiple audio channels
US6246345B1 (en) 1999-04-16 2001-06-12 Dolby Laboratories Licensing Corporation Using gain-adaptive quantization and non-uniform symbol lengths for improved audio coding
JP2002182693A (ja) 2000-12-13 2002-06-26 Nec Corp オーディオ符号化、復号装置及びその方法並びにその制御プログラム記録媒体
US7610205B2 (en) 2002-02-12 2009-10-27 Dolby Laboratories Licensing Corporation High quality time-scaling and pitch-scaling of audio signals
CN1312662C (zh) 2001-05-10 2007-04-25 杜比实验室特许公司 通过降低前噪声改善音频编码系统的瞬时性能的方法
US20030187663A1 (en) 2002-03-28 2003-10-02 Truman Michael Mead Broadband frequency translation for high frequency regeneration
US7450727B2 (en) * 2002-05-03 2008-11-11 Harman International Industries, Incorporated Multichannel downmixing device
US7447631B2 (en) 2002-06-17 2008-11-04 Dolby Laboratories Licensing Corporation Audio coding system using spectral hole filling
KR20040060718A (ko) * 2002-12-28 2004-07-06 삼성전자주식회사 오디오 스트림 믹싱 방법, 그 장치 및 그 정보저장매체
CA2514682A1 (en) * 2002-12-28 2004-07-15 Samsung Electronics Co., Ltd. Method and apparatus for mixing audio stream and information storage medium
US7318027B2 (en) 2003-02-06 2008-01-08 Dolby Laboratories Licensing Corporation Conversion of synthesized spectral components for encoding and low-complexity transcoding
US7318035B2 (en) 2003-05-08 2008-01-08 Dolby Laboratories Licensing Corporation Audio coding systems and methods using spectral component coupling and spectral component regeneration
JP2007526687A (ja) * 2004-02-19 2007-09-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 可変ブロック長信号の復号化スキーム
US7516064B2 (en) 2004-02-19 2009-04-07 Dolby Laboratories Licensing Corporation Adaptive hybrid transform for signal analysis and synthesis
EP2065885B1 (en) * 2004-03-01 2010-07-28 Dolby Laboratories Licensing Corporation Multichannel audio decoding
US7983922B2 (en) * 2005-04-15 2011-07-19 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for generating multi-channel synthesizer control signal and apparatus and method for multi-channel synthesizing
WO2006126844A2 (en) * 2005-05-26 2006-11-30 Lg Electronics Inc. Method and apparatus for decoding an audio signal
KR20070003593A (ko) * 2005-06-30 2007-01-05 엘지전자 주식회사 멀티채널 오디오 신호의 인코딩 및 디코딩 방법
US8494667B2 (en) * 2005-06-30 2013-07-23 Lg Electronics Inc. Apparatus for encoding and decoding audio signal and method thereof
KR100760976B1 (ko) 2005-08-01 2007-09-21 (주)펄서스 테크놀러지 프로그래머블 프로세서에서 mpeg-2 또는 mpeg-4aac 오디오 복호 알고리즘을 처리하기 위한 연산 회로및 연산 방법
KR100771401B1 (ko) 2005-08-01 2007-10-30 (주)펄서스 테크놀러지 프로그래머블 프로세서에서 mpeg-2 또는 mpeg-4aac 오디오 복호 알고리즘을 처리하기 위한 연산 회로및 연산 방법
KR100803212B1 (ko) * 2006-01-11 2008-02-14 삼성전자주식회사 스케일러블 채널 복호화 방법 및 장치
JP4801174B2 (ja) * 2006-01-19 2011-10-26 エルジー エレクトロニクス インコーポレイティド メディア信号の処理方法及び装置
CN101361117B (zh) * 2006-01-19 2011-06-15 Lg电子株式会社 处理媒体信号的方法和装置
RU2407226C2 (ru) * 2006-03-24 2010-12-20 Долби Свидн Аб Генерация пространственных сигналов понижающего микширования из параметрических представлений мультиканальных сигналов
JP5134623B2 (ja) * 2006-07-07 2013-01-30 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 複数のパラメータ的に符号化された音源を合成するための概念
JP2008236384A (ja) * 2007-03-20 2008-10-02 Matsushita Electric Ind Co Ltd 音声ミキシング装置
RU2495503C2 (ru) * 2008-07-29 2013-10-10 Панасоник Корпорэйшн Устройство кодирования звука, устройство декодирования звука, устройство кодирования и декодирования звука и система проведения телеконференций

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146247A (ja) * 1995-09-29 2006-06-08 United Module Corp オーディオ復号装置
US20040117193A1 (en) * 2002-12-12 2004-06-17 Renesas Technology Corporation Audio decoding reproduction apparatus
JP2009284212A (ja) * 2008-05-22 2009-12-03 Mitsubishi Electric Corp デジタル音声信号解析方法、その装置、及び映像音声記録装置

Also Published As

Publication number Publication date
AP2011005900A0 (en) 2011-10-31
EA025020B1 (ru) 2016-11-30
US20120016680A1 (en) 2012-01-19
TW201142826A (en) 2011-12-01
ME01880B (me) 2014-12-20
BRPI1105248B1 (pt) 2020-10-27
BRPI1105248A2 (pt) 2016-05-03
CN102428514A (zh) 2012-04-25
JP5501449B2 (ja) 2014-05-21
AR080183A1 (es) 2012-03-21
IL215254A0 (en) 2011-12-29
CN103400581A (zh) 2013-11-20
CA2757643A1 (en) 2011-08-25
TW201443876A (zh) 2014-11-16
SI2360683T1 (sl) 2014-07-31
US8868433B2 (en) 2014-10-21
KR101327194B1 (ko) 2013-11-06
HK1170059A1 (en) 2013-02-15
ES2467290T3 (es) 2014-06-12
IL227702A (en) 2015-01-29
CA2757643C (en) 2013-01-08
CO6501169A2 (es) 2012-08-15
AU2011218351A1 (en) 2011-10-20
RS53336B (en) 2014-10-31
US9311921B2 (en) 2016-04-12
EP2360683A1 (en) 2011-08-24
KR101707125B1 (ko) 2017-02-15
HRP20140506T1 (hr) 2014-07-04
AR089918A2 (es) 2014-10-01
CN102428514B (zh) 2013-07-24
NZ595739A (en) 2014-08-29
EP2698789A2 (en) 2014-02-19
MX2011010285A (es) 2011-12-16
CN103400581B (zh) 2016-05-11
ECSP11011358A (es) 2012-01-31
JP2012527021A (ja) 2012-11-01
ZA201106950B (en) 2012-12-27
DK2360683T3 (da) 2014-06-16
NI201100175A (es) 2012-06-14
EP2698789B1 (en) 2017-02-08
CA2794047A1 (en) 2011-08-25
EA201171268A1 (ru) 2012-03-30
IL227701A (en) 2014-12-31
TWI557723B (zh) 2016-11-11
HK1160282A1 (en) 2012-08-10
PL2360683T3 (pl) 2014-08-29
GEP20146086B (en) 2014-05-13
IL227702A0 (en) 2013-09-30
CA2794029C (en) 2018-07-17
US8214223B2 (en) 2012-07-03
KR20130055033A (ko) 2013-05-27
CA2794029A1 (en) 2011-08-25
JP5863858B2 (ja) 2016-02-17
GT201100246A (es) 2014-04-04
WO2011102967A1 (en) 2011-08-25
MA33270B1 (fr) 2012-05-02
EP2360683B1 (en) 2014-04-09
HN2011002584A (es) 2015-01-26
US20120237039A1 (en) 2012-09-20
AP3147A (en) 2015-03-31
PE20121261A1 (es) 2012-09-14
KR20120031937A (ko) 2012-04-04
IL215254A (en) 2013-10-31
SG174552A1 (en) 2011-10-28
TWI443646B (zh) 2014-07-01
AU2011218351B2 (en) 2012-12-20
US20160035355A1 (en) 2016-02-04
IL227701A0 (en) 2013-09-30
EP2698789A3 (en) 2014-04-30
PT2360683E (pt) 2014-05-27
MY157229A (en) 2016-05-13

Similar Documents

Publication Publication Date Title
JP5863858B2 (ja) 効率的なダウンミキシングを使ったオーディオ・デコーダおよびデコード方法
KR102083200B1 (ko) 스펙트럼-도메인 리샘플링을 사용하여 멀티-채널 신호를 인코딩 또는 디코딩하기 위한 장치 및 방법
RU2406166C2 (ru) Способы и устройства кодирования и декодирования основывающихся на объектах ориентированных аудиосигналов
JP5426680B2 (ja) 信号処理方法及び装置
US20090240505A1 (en) Audio decoding
TWI521502B (zh) 多聲道音訊的較高頻率和降混低頻率內容的混合編碼
KR20100095586A (ko) 신호 처리 방법 및 장치
JP2017535153A (ja) オーディオ・エンコーダおよびデコーダ
JP6640849B2 (ja) マルチチャネル・オーディオ信号のパラメトリック・エンコードおよびデコード
AU2013201583B2 (en) Audio decoder and decoding method using efficient downmixing
JP2022529731A (ja) 出力ダウンミックス表現を生成するための装置及びコンピュータプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150602

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151222

R150 Certificate of patent or registration of utility model

Ref document number: 5863858

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250