JP5331008B2 - デジタル音声ミキシング - Google Patents

デジタル音声ミキシング Download PDF

Info

Publication number
JP5331008B2
JP5331008B2 JP2009544985A JP2009544985A JP5331008B2 JP 5331008 B2 JP5331008 B2 JP 5331008B2 JP 2009544985 A JP2009544985 A JP 2009544985A JP 2009544985 A JP2009544985 A JP 2009544985A JP 5331008 B2 JP5331008 B2 JP 5331008B2
Authority
JP
Japan
Prior art keywords
source
frame
audio data
sequence
target
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.)
Expired - Fee Related
Application number
JP2009544985A
Other languages
English (en)
Other versions
JP2010515938A5 (ja
JP2010515938A (ja
Inventor
ハー,ステファン
シグムント,ウルリッヒ
Original Assignee
タグ ネットワークス,インコーポレイテッド
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 タグ ネットワークス,インコーポレイテッド filed Critical タグ ネットワークス,インコーポレイテッド
Publication of JP2010515938A publication Critical patent/JP2010515938A/ja
Publication of JP2010515938A5 publication Critical patent/JP2010515938A5/ja
Application granted granted Critical
Publication of JP5331008B2 publication Critical patent/JP5331008B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/032Quantisation or dequantisation of spectral components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/03Application of parametric coding in stereophonic audio systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Diaphragms For Electromechanical Transducers (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Table Equipment (AREA)

Description

本発明は、一般に、双方向ビデオゲームシステムに関し、より具体的には、ビデオゲームの実行前に符号化されたデジタル音声信号のミキシングを利用した双方向ビデオゲームシステムに関する。
ビデオゲームは、普及しているエンターテイメント形態である。特に、より多数のユーザが、インターネットとも呼ばれるワールドワイドウェブ(WWW)などのネットワークを利用して互いに交流することができるようになるにつれて、2人以上が共通の模擬環境で同時にプレイするマルチプレーヤゲームは、ますます普及してきている。シングルプレイヤゲームも、ネットワーク化された環境で実行され得る。ネットワーク化された環境でビデオゲームを実施することは、音声再生に関する難題を提起する。
ネットワーク化された環境で実施されるいくつかのビデオゲームにおいては、一時的に背景音を交替させることによって過渡音効果を実施し得る。音楽などの背景音は、長時間にわたる複数のビデオフレーム中に存在し得る。過渡音効果は、1つ以上のビデオフレーム中に存在し得るが、背景音と比較して短い間隔時間にわたって存在し得る。音声ステッチング(stitching)として知られるプロセスを通じて、過渡音効果が使用可能であるときに背景音は再生されない。一般に、音声ステッチングは、オフラインで既に符号化された音声フレームのシーケンスを生成するプロセスである。音声ステッチングによって生成された音声フレームのシーケンスは、同一の内容の連続ストリームを必ずしも形成する必要はない。例えば、背景音を含むフレームのすぐ後に、効果音を含むフレームが続くことが可能である。過渡音効果から背景音に円滑に戻るために、移行の間、背景音は減衰されてよく、音量はいくつかのビデオフレームにわたってゆっくりと増大してよい。しかし、背景音の割込みは、依然としてユーザの目に留まる。
従って、背景音の割込みなく効果音が再生されるように、効果音と背景音の同時再生が可能となることが望ましい。効果音および背景音は、多重パルス符号変調(PCM)ビットストリームに対応し得る。標準的な音声処理システムにおいて、多重PCMビットストリームは、ミックスされて、リアルタイムでAC−3形式などの形式に符号化されてよい。しかし、計算能力への制限によって、この手法は、ネットワーク化された環境で複数のビデオゲームを実施する際に非現実的なものとなる。
従って、PCMビットストリームのリアルタイムミックスおよび結果として得られるビットストリームの圧縮音声へのリアルタイム符号化を実行せずに複数のソースからの音声データをマージするシステムおよび方法が必要とされている。
音声を符号化する方法が開示される。当該方法において、複数の独立音声信号を表現するデータがアクセスされる。各音声信号を表現するデータは、ソースフレームのシーケンスを含む。ソースフレームシーケンスの各フレームは、複数の音声データコピーを含む。各音声データコピーは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である、関連品質レベルを有する。複数のソースフレームシーケンスは、複数のターゲットチャネルを含むターゲットフレームシーケンスにマージされる。対応ソースフレームを各ターゲットフレームにマージすることは、品質レベルを選択することと、各対応ソースフレームの選択された品質レベルにおける音声データコピーを少なくとも一つのターゲットチャネルに割り当てることとを含む。
音声を符号化する方法の別の態様が開示される。当該方法において、音声データは、複数の独立ソースから受信される。各独立ソースからの音声データは、ソースフレームのシーケンスに符合化されて、複数のソースフレームシーケンスを作成する。複数のソースフレームシーケンスは、複数の独立ターゲットチャネルを含むターゲットフレームのシーケンスにマージされる。各ソースフレームシーケンスは、1つ以上のターゲットチャネルに一意的に割り当てられる。
スピーカシステムと連動して音声を再生する方法が開示される。当該方法において、指令に応答して、複数のチャネルを含むフレームシーケンスを含む音声データが受信され、各チャネルは、(A)独立音声ソースに単独で対応する、または(B)独立音声ソース内の固有のチャネルに単独で対応する。スピーカの数がチャネルの数より少ない場合、2つ以上のチャネルはダウンミックスされ、かつ関連付けられた音声データは単一のスピーカで再生される。スピーカの数がチャネルの数と同じまたはより多い場合、各チャネルと関連付けられた音声データは、対応スピーカで再生される。
音声を符号化するシステムが開示され、当該方法は、メモリと、1つ以上のプロセッサと、メモリに格納され、かつ1つ以上のプロセッサによって実行されるように構成される1つ以上のプログラムとを備える。1つ以上のプログラムは、複数の独立音声信号を表現するデータにアクセスする命令を含む。各音声信号を表現するデータは、ソースフレームシーケンスを含む。ソースフレームシーケンスの各フレームは、複数の音声データコピーを含む。各音声データコピーは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である関連品質レベルを有する。また、1つ以上のプログラムは、複数のソースフレームシーケンスを、複数のターゲットチャネルを含むターゲットフレームのシーケンスにマージする命令を含む。マージする命令は、各ターゲットフレームおよび複数の対応ソースフレームに対して、品質レベルを選択する命令と、各対応ソースフレームの選択された品質レベルの音声データコピーを少なくとも1つのターゲットチャネルに割り当てる命令とを含む。
音声を符号化するシステムの別の態様が開示され、当該システムは、メモリと、1つ以上のプロセッサと、メモリに格納され、かつ1つ以上のプロセッサによって実行されるように構成される1つ以上のプログラムとを備える。1つ以上のプログラムは、複数の独立ソースから音声データを受信する命令と、各独立ソースからの音声データをソースフレームのシーケンスに符合化して、複数のソースフレームシーケンスを作成する命令とを含む。また、1つ以上のプログラムは、複数のソースフレームシーケンスをターゲットフレームのシーケンスにマージする命令を含み、ターゲットフレームは、複数の独立ターゲットチャネルを含み、各ソースフレームシーケンスは、1つ以上のターゲットチャネルに一意的に割り当てられる。
スピーカシステムと連動して音声を再生するシステムが開示され、当該システムは、メモリと、1つ以上のプロセッサと、メモリに格納され、かつ1つ以上のプロセッサによって実行されるように構成される1つ以上のプログラムとを備える。1つ以上のプログラムは、指令に応答して、複数のチャネルを含むフレームシーケンスを含む音声データを受信する命令を含み、各チャネルは、(A)独立音声ソースに単独で対応する、または(B)独立音声ソース内の固有のチャネルに単独で対応する。また、1つ以上のプログラムは、スピーカの数がチャネルの数より少ない場合、2つ以上のチャネルをダウンミックスし、かつ2つ以上のダウンミックスされたチャネルと関連付けられた音声データを単一のスピーカで再生する命令を含む。さらに、1つ以上のプログラムは、スピーカの数がチャネルの数と同じまたはより多い場合、各チャネルと関連付けられた音声データを対応スピーカで再生する命令を含む。
音声符号化と連動して使用されるコンピュータプログラム製品が開示される。当該コンピュータプログラム製品は、コンピュータ読取り可能記憶媒体と、その中に組み込まれるコンピュータプログラム機構とを備える。コンピュータプログラム機構は、複数の独立音声信号を表現するデータにアクセスする命令を含む。各音声信号を表現するデータは、ソースフレームシーケンスを含む。ソースフレームシーケンスの各フレームは、複数の音声データコピーを含む。各音声データコピーは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である関連品質レベルを有する。コンピュータプログラム機構は、複数のソースフレームシーケンスを、複数のターゲットチャネルを含むターゲットフレームのシーケンスにマージする命令を含む。マージする命令は、各ターゲットフレームおよび複数の対応ソースフレームに対して、品質レベルを選択する命令と、各対応ソースフレームの選択された品質レベルの音声データコピーを少なくとも1つのターゲットチャネルに割り当てる命令とを含む。
音声符号化と連動して使用されるコンピュータプログラム製品の別の態様が開示される。当該コンピュータプログラム製品は、コンピュータ読取り可能記憶媒体と、その中に組み込まれるコンピュータプログラム機構とを備える。コンピュータプログラム機構は、複数の独立ソースから音声データを受信する命令と、各独立ソースからの音声データをソースフレームのシーケンスに符合化して、複数のソースフレームシーケンスを作成する命令とを含む。また、コンピュータプログラム機構は、複数のソースフレームシーケンスをターゲットフレームのシーケンスにマージする命令を含み、ターゲットフレームは、複数の独立ターゲットチャネルを含み、各ソースフレームシーケンスは、1つ以上のターゲットチャネルに一意的に割り当てられる。
スピーカシステムでの音声再生と連動して使用されるコンピュータプログラム製品が開示される。当該コンピュータプログラム製品は、コンピュータ読取り可能記憶媒体と、その中に組み込まれるコンピュータプログラム機構とを備える。コンピュータプログラム機構は、指令に応答して、複数のチャネルを含むフレームシーケンスを含む音声データを受信する命令を含み、各チャネルは、(A)独立音声ソースに単独で対応する、または(B)独立音声ソース内の固有のチャネルに単独で対応する。また、コンピュータプログラム機構は、スピーカの数がチャネルの数より少ない場合、2つ以上のチャネルをダウンミックスし、かつ2つ以上のダウンミックスされたチャネルと関連付けられた音声データを単一のスピーカで再生する命令を含む。さらに、コンピュータプログラム機構は、スピーカの数がチャネルの数と同じまたはより多い場合、各チャネルと関連付けられた音声データを対応スピーカで再生する命令を含む。
音声を符号化するシステムが開示される。当該システムは、複数の独立音声信号を表現するデータにアクセスする手段を備える。各音声信号を表現するデータは、ソースフレームシーケンスを含む。ソースフレームシーケンスの各フレームは、複数の音声データコピーを含む。各音声データコピーは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である関連品質レベルを有する。また、システムは、複数のソースフレームシーケンスを、複数のターゲットチャネルを含むターゲットフレームのシーケンスにマージする手段を備える。マージする手段は、各ターゲットフレームおよび複数の対応ソースフレームに対して、品質レベルを選択する手段と、各対応ソースフレームの選択された品質レベルの音声データコピーを少なくとも1つのターゲットチャネルに割り当てる。
音声を符号化するシステムの別の態様が開示される。当該システムは、複数の独立ソースから音声データを受信する手段と、各独立ソースからの音声データをソースフレームシーケンスに符合化して、複数のソースフレームシーケンスを作成する手段とを備える。また、システムは、複数のソースフレームシーケンスをターゲットフレームのシーケンスにマージする手段を備え、ターゲットフレームは、複数の独立ターゲットチャネルを含み、各ソースフレームシーケンスは、1つ以上のターゲットチャネルに一意的に割り当てられる。
スピーカシステムと連動して音声を再生するシステムが開示される。当該システムは、指令に応答して、複数のチャネルを含むフレームシーケンスを含む音声データを受信する手段を備え、各チャネルは、(A)独立音声ソースに単独で対応する、または(B)独立音声ソース内の固有のチャネルに単独で対応する。また、システムは、スピーカの数がチャネルの数より少ない場合、2つ以上のチャネルをダウンミックスし、かつ2つ以上のダウンミックスされたチャネルと関連付けられた音声データを単一のスピーカで再生する手段を備える。さらに、システムは、スピーカの数がチャネルの数と同じまたはより多い場合、各チャネルと関連付けられた音声データを対応スピーカで再生する手段を備える。
本発明をさらに理解するために、添付図面に関連する以下の詳細な説明を参照することが必要である。
図1は、ケーブルテレビジョンシステムの一実施形態を示すブロック図である。 図2は、ビデオゲームシステムの一実施形態を示すブロック図である。 図3は、セットトップボックスの一実施形態を示すブロック図である。 図4は、いくつかの実施形態における、音声を符号化するプロセスを示すフロー図である。 図5は、いくつかの実施形態における、音声を符号化するプロセスを示すフロー図である。 図6は、いくつかの実施形態における、音声を符号化し、および伝送するプロセスを示すフロー図である。 図7は、いくつかの実施形態における、音声を符号化するプロセスを示すブロック図である。 図8は、いくつかの実施形態における、音声フレームセットのブロック図である。 図9は、いくつかの実施形態における、音声を符号化し、伝送し、および再生するシステムを示すブロック図である。 図10A〜図10Cは、いくつかの実施形態における、ソースフレームのターゲットフレームチャネル割当てを示すブロック図である。 図11Aおよび図11Bは、いくつかの実施形態における、AC−3フレームのデータ構造を示すブロック図である。 図12は、いくつかの実施形態における、複数のソースフレームのSNR変数のターゲットフレームへの併合を示すブロック図である。 図13は、いくつかの実施形態における、ターゲットフレームのシーケンスを受信し、復号化し、および再生するプロセスを示すフロー図である。 図14の(A)〜(C)は、いくつかの実施形態における、チャネル割当ておよびダウンミックスを示すブロック図である。 図15Aは、いくつかの実施形態における、ビット割付けポインタテーブルを示す。 図15Bは、いくつかの実施形態における、ビット割付けポインタテーブルを示す。 図15Cは、いくつかの実施形態における、ビット割付けポインタテーブルを示す。 図15Dは、いくつかの実施形態における、ビット割付けポインタテーブルを示す。 図15Eは、いくつかの実施形態における、ビット割付けポインタテーブルを示す。
同じ参照符号は、図面を通して対応する部分を示す。
添付図面に示す実施形態および実施例について、以下に詳細に述べる。以下の詳細な説明において、本発明の完全な理解を与えるために多くの特定の詳細が述べられる。しかし、本発明はこれら特定の詳細がなくても実施できることが当業者には理解されよう。他の場合には、よく知られた方法、手順、要素、および回路は、実施形態の態様を不必要に曖昧にしないために詳細には記載されない。
図1は、(マルチユーザビデオゲームを含む)1つ以上のビデオゲームなどのコンテンツの注文を受けて1人以上のユーザに当該コンテンツを提供するケーブルテレビジョンシステム100の一実施形態を示すブロック図である。いくつかのコンテンツデータストリームは、各サービス利用者に伝送されてよく、次に各サービス利用者は、ビデオゲーム内のサービスを注文したり、ユーザアクションを伝送し得る。アナログテレビジョン信号などの衛星信号は、衛星アンテナ144を使用して受信され得る。アナログ信号は、アナログヘッドエンド146で処理され、無線周波(RF)結合器134に結合され、ネットワーク136を介してセットトップボックス(STB)140に伝送され得る。加えて、信号は、衛星受信機148で処理され、マルチプレクサ(MUX)150に結合され、直交振幅変調器(QAM)132−2(256レベルのQAMなど)を使用してデジタル形式に変換され、無線周波(RF)結合器134に結合され、ネットワーク136を介してSTB140に伝送され得る。ビデオオンデマンド(VOD)サーバ118は、注文された動画に対応する信号をスイッチ126−2に提供し、当該スイッチは、信号をQAM132−1に結合してデジタル形式に変換し得る。これらのデジタル信号は、無線周波(RF)結合器134に結合され、ネットワーク136を介してSTB140に伝送される。
STB140は、後述のビデオゲームコンテンツに対応する信号を含む、1つ以上の映像信号を、テレビジョンまたは他のディスプレイデバイス138に表示してよく、後述のビデオゲームコンテンツに対応する信号を含む、1つ以上の音声信号を、スピーカ139で再生してよい。スピーカ139は、テレビジョン138に組み込まれてもよく、またはテレビジョン138と分かれていてもよい。図1は、1人のサービス利用者のSTB140、テレビジョンまたは他のディスプレイデバイス138、およびスピーカ139を示しているが、他の実施形態において、各々が1つ以上のSTB、1つ以上のテレビジョンまたは他のディスプレイデバイス、および/または1つ以上のスピーカを有する追加のサービス利用者が存在してよい。
ケーブルテレビジョンシステム100は、アプリケーションサーバ114および複数のゲームサーバ116も含み得る。アプリケーションサーバ114および複数のゲームサーバ116は、ケーブルテレビジョンシステムヘッドエンドに位置し得る。アプリケーションサーバ114および複数のゲームサーバ116の単一のインスタンスまたはグループ化が図1に示されているが、他の実施形態は、1つ以上のヘッドエンドにおける追加のインスタンスを含んでよい。1つ以上のヘッドエンドでのサーバおよび/または他のコンピュータは、ウィンドウズ(登録商標)(Windows(登録商標))、リナックス(Linux)、ユニックス(Unix(登録商標))、またはソラリス(Solaris)などのオペレーティングシステムを実行し得る。
アプリケーションサーバ114およびゲームサーバ116のうちの1つ以上のゲームサーバは、1人以上のユーザが注文した1つ以上のビデオゲームに対応するビデオゲームコンテンツを提供し得る。ケーブルテレビジョンシステム100において、複数のユーザとビデオゲームのうちの1つのビデオゲームのコピーとの間に多対1対応が存在し得る。アプリケーションサーバ114は、データベース内のゲーム関連情報にアクセスおよび/またはログ記録し得る。アプリケーションサーバ114は、レポーティングおよびプライシングに使用されてもよい。ゲームサーバ116内の1つ以上のゲームエンジン(ゲームエンジンモジュールとも呼ばれる)248(図2)は、前符号化(pre-encoded)された映像および/または音声データを使用してビデオゲームコンテンツを動的に生成するように設計される。例示的な実施形態において、ゲームサーバ116は、MPEG圧縮規格と互換性がある映像符号化を利用し、かつAC−3圧縮規格と互換性がある音声符号化を利用する。
ビデオゲームコンテンツは、スイッチ126−2に結合されて、QAM132−1でデジタル形式に変換される。256レベルのQAMを用いる例示的な実施形態において、ナローキャスト・サブチャネル(約6MHzの帯域幅を有し、これは約38Mbpsのデジタルデータに対応する)は、1〜4Mbpsを利用するビデオゲームの10〜30個のビデオゲームデータストリームを伝送するために使用され得る。
これらのデジタル信号は、無線周波(RF)結合器134に結合されて、ネットワーク136を介してSTB140に伝送される。アプリケーションサーバ114は、インターネット110を介して、継続的なプレイヤまたはマルチプレイヤサーバ112に格納されたデータベースのユーザデータにアクセスしてもよい。アプリケーションサーバ114および複数のゲームサーバ116は、図2を参照して以下でさらに説明する。
STB140は、1つ以上のユーザアクションに対応する情報を受信し、かつゲームサーバ116のうちの1つ以上のゲームサーバの情報を伝送する、ゲーム142などのクライアントアプリケーションを任意に含み得る。また、ゲームアプリケーション142は、テレビジョン138上の映像フレームの更新およびスピーカ139上の付随する音声フレームの再生の前に、ビデオゲームコンテンツを格納し得る。テレビジョン138は、NTSC形式、またはPALもしくはSECAMなどの別の形式と互換性があり得る。STB140は、図3を参照して以下でさらに説明する。
ケーブルテレビジョンシステム100は、STB制御器120、運用支援システム122、および課金システム124も有し得る。STB制御器120は、リターンパルス振幅(PAM)復調器130およびスイッチ126−1を用いて、帯域外(OOB)サブチャネルを使用して受信される1つ以上のユーザアクション(各ビデオゲームと関連付けられたユーザアクション)を処理し得る。複数のOOBサブチャネルが存在し得る。OOBサブチャネルの帯域幅は実施形態によって異なるが、一実施形態において、各OOBサブチャネルの帯域幅は、約1Mbpsのビットレートまたはデータレートに対応する。運用支援システム122は、各ビデオゲームなどの各サービスに対するサービス利用者の注文を処理し、課金システム124を更新し得る。また、STB制御器120、運用支援システム122、および/または課金システム124は、スイッチ126−1および、信号をOOBサブチャネルに適した形式に変換するOOBモジュール128を介して、OOBサブチャネルを使用してサービス利用者と通信し得る。あるいは、運用支援システム122および/または課金システム124は、インターネット接続などの別の通信リンクや電話システムが提供する通信リンクを介してサービス利用者と通信し得る。
ケーブルテレビジョンシステム100内で伝送および受信されるさまざまな信号は、パケットベースのデータストリームを使用して通信され得る。例示的な実施形態において、一部のパケットは、ユーザデータグラムプロトコル(UDP)などのインターネットプロトコルを利用してよい。いくつかの実施形態において、ケーブルテレビジョンシステム100におけるネットワーク136などのネットワークおよび構成要素間の結合は、無線エリアネットワーク、ローカルエリアネットワーク、伝送ライン(同軸ケーブルなど)、ランドラインおよび/または光ファイバのうちの1つ以上のインスタンスを含み得る。一部の信号は、基本電話サービス(POTS)および/または総合デジタル通信網(ISDN)などのデジタル電話ネットワークを使用して通信され得る。無線通信は、高度携帯電話システム(AMPS)、移動通信用グローバルシステム(GSM)、符号分割多元接続(CDMA)および/または時分割多元接続(TDMA)を使用する携帯電話ネットワーク、ならびにWiFiとしても知られるIEEE802.11通信プロトコル、および/またはブルートゥース(Bluetooth)通信プロトコルを利用するネットワークを含み得る。
図1は、ケーブルテレビジョンシステムを示すが、説明される当該システムおよび方法は、衛星ベースのシステム、インターネット、電話システムおよび/または地上デジタル放送システムにおいて実施され得る。ケーブルテレビジョンシステム100は、追加の要素を含んでよいし、および/または1つ以上の要素を削除してよい。加えて、2つ以上の要素は、単一の要素に合体されてよいし、および/またはケーブルテレビジョンシステム100の1つ以上の要素の位置は、変更されてよい。いくつかの実施形態において、例えば、アプリケーションサーバ114およびその機能は、ゲームサーバ116と併合かつゲームサーバ116内に併合されてよい。
図2は、ビデオゲームシステム200の一実施形態を示すブロック図である。ビデオゲームシステム200は、少なくとも1つのデータプロセッサ、ビデオプロセッサおよび/または中央処理装置(CPU)210、1つ以上の任意のユーザインタフェース214、他のコンピュータと通信する、通信またはネットワークインタフェース220、サーバおよび/または1つ以上のSTB(図1のSTB140など)、メモリ222、およびこれらの構成要素を互いに結合させる1つ以上の信号ライン212を含み得る。少なくとも1つのデータプロセッサ、ビデオプロセッサおよび/または中央処理装置(CPU)210は、多重または並行処理を目的として構成され得る、または構成可能であり得る。ユーザインタフェース214は、1つ以上のキーボード216および/またはディスプレイ218を有し得る。1つ以上の信号ライン212は、1つ以上の通信バスを構成し得る。
メモリ222は、ROM、RAM、EPROM、およびEEPROMを含む高速ランダムアクセスメモリおよび/または不揮発性メモリ、1つ以上のフラッシュディスクドライブ、1つ以上の光ディスクドライブ、および/または1つ以上の磁気ディスク記憶装置を含み得る。メモリ222は、基本システムサービスを扱い、かつハードウェア依存タスクを実行する手順(または命令のセット)を含む、リナックス(Linux)、ユニックス(Unix(登録商標))、ウィンドウズ(登録商標)(Windows(登録商標))、またはソラリス(Solaris)などのオペレーティングシステム224を格納し得る。メモリ222は、ネットワーク通信モジュール226における通信手順(または命令のセット)も記憶し得る。通信手順は、STB140(図1)などの1つ以上のSTB、およびビデオゲームシステム200内の他のサーバおよびコンピュータとの通信を行うために使用される。
メモリ222は、アプリケーションサーバモジュール228(または命令のセット)、ゲームアセット管理システムモジュール230(または命令のセット)、セッションリソース管理モジュール234(または命令のセット)、プレイヤ管理システムモジュール236(または命令のセット)、セッションゲートウェイモジュール242(または命令のセット)、マルチプレイヤサーバモジュール244(または命令のセット)、1つ以上のゲームサーバモジュール246(または命令のセット)、音声信号前符号器264(または命令のセット)、ならびにマクロブロックおよび前符号化音声信号を記憶するバンク256、といった構成要素、またはこれら構成要素のサブセットまたはスーパーセットも含み得る。ゲームアセット管理システムモジュール230は、前符号化マクロブロックと、前符号化音声信号と、1つ以上のビデオゲームに対応する実行可能コードとを含むゲームデータベース232も含み得る。プレイヤ管理システムモジュール236は、ユーザ名、アカウント情報、取引情報、ユーザのSTB140(図1)上のビデオゲームの表示をカストマイズする基本設定、実行されるビデオゲームの高得点、実行されるビデオゲームの順位付けおよび他の技能レベル情報、および/または、休止されて再開され得るビデオゲームの持続的な保存ゲーム状態などの情報を含むプレイヤ情報データベース240を含み得る。ゲームサーバモジュール246の各インスタンスは、1つ以上のゲームエンジンモジュール248を含み得る。ゲームエンジンモジュール248は、1つ以上のビデオゲームをプレイするユーザの1つ以上のセットに対応するゲーム状態250、シンセサイザモジュール252、1つ以上の圧縮エンジンモジュール254、および音声フレームマージャ255を含み得る。バンク256は、1つ以上のビデオゲームに対応する前符号化音声信号257、1つ以上のビデオゲームに対応する前符号化マクロブロック258、および/または1つ以上のビデオゲームに対応する動的生成または符号化マクロブロック260を含み得る。
ゲームサーバモジュール246は、ウィンドウズエクスプローラ(Windows Explorer)、ネットスケープナビゲータ(Netscape Navigator)、またはモジラ(Mozilla)のファイアフォックス(FireFox)などのブラウザアプリケーションを実行して、各ビデオゲームに対応する命令を実行し得る。しかし、ブラウザアプリケーションは、ゲームサーバモジュール246内のビデオゲームコンテンツをレンダリングしないように構成され得る。ビデオゲームコンテンツのレンダリングは不必要であり得る。というのは、コンテンツはゲームサーバによって表示されるのではなく、このようなレンダリングを避けることで、各ゲームサーバは、可能な数よりもずっと多くのゲーム状態を維持することが可能となるからである。ゲームサーバモジュール246は、1つ以上のプロセッサによって実行され得る。ビデオゲームは、複数のプロセッサによって並行して実行され得る。また、ゲームは、多重オペレーティングシステムの並列スレッド内で実施され得る。
図2は、多数の個別アイテムが構成するビデオゲームシステム200を示しているが、図2は、本明細書で説明する実施形態の構造概略というよりも、ビデオゲームシステムに存在し得るさまざまな特徴の機能記述として意図されている。実際には、そして当業者によって認識されるように、ビデオゲームシステム200の機能は、さまざまなサーバグループがそれらの機能の特定のサブセットを実行するように、多数のサーバまたはコンピュータに分散されてよい。図2に個別に示されるアイテムは組み合わされてよく、また、一部のアイテムは別々のアイテムであってよい。例えば、図2に個別に示されるアイテムの一部は、単一のサーバ上で実施されてよく、単一のアイテムは、1つ以上のサーバによって実施されてよい。ビデオゲームシステムのサーバの実際の数、ならびにゲームサーバモジュール246およびゲームエンジンモジュール248などの機能の割り当てられ方は、実施例によって変化し、かつ一部分において、システムが格納する情報量ならびに/もしくはピーク使用期間および平均使用期間中にシステムが処理しなければならないデータトラフィック量に左右される。いくつかの実施形態において、音声信号前符号器264は、ビデオゲームシステム200とは別の、前符号化システムと呼ばれ得る個別のコンピュータシステム上で実施される。
さらに、メモリ222内の上記識別される要素の各々は、上述したメモリデバイスのうちの1つ以上のメモリデバイスに格納され得る。上記識別されるモジュールの各々は、上述の機能を実行する命令のセットに対応する。上記識別されるモジュールまたはプログラム(すなわち、命令のセット)は、個別のソフトウェアプログラム、手順、またはモジュールとして実施される必要はなく、従って、これらのモジュールのさまざまなサブセットは、組み合わされてよく、または、さまざまな実施形態に再構成されてよい。いくつかの実施形態において、メモリ222は、上記識別されるモジュールおよびデータ構造のサブセットを格納してよい。また、メモリ222は、上述されていない追加のモジュールおよびデータ構造を格納してよい。
図3は、STB140(図1)などのセットトップボックス(STB)300の一実施形態を示すブロック図である。STB300は、少なくとも1つのデータプロセッサ、ビデオプロセッサ、および/または中央処理装置(CPU)310、他のコンピュータおよび/またはビデオゲームシステム200(図2)などのサーバと通信する、通信またはネットワークインタフェース314、チューナ316、音声復号器318、スピーカ322に結合される音声ドライバ320、映像復号器324、およびディスプレイ328に結合される映像ドライバ326を含み得る。STB300は、1つ以上のデバイスインタフェース330、1つ以上のIRインタフェース334、メモリ340、および構成要素と構成要素とを結合する1つ以上の信号ライン312も含み得る。少なくとも1つのデータプロセッサ、ビデオプロセッサ、および/または中央処理装置(CPU)310は、多重または並行処理を目的として構成され得る、または構成可能であり得る。1つ以上の信号ライン312は、1つ以上の通信バスを構成し得る。1つ以上のデバイスインタフェース330は、1つ以上のゲームコントローラ332に結合され得る。1つ以上のIRインタフェース334は、IR信号を使用して1つ以上のリモート制御器336と無線で通信し得る。
メモリ340は、ROM、RAM、EPROM、およびEEPROMなどの高速ランダムアクセスメモリおよび/または不揮発性メモリ、1つ以上のフラッシュディスクドライブ、1つ以上の光ディスクドライブ、および/または1つ以上の磁気ディスク記憶装置を含みうる。メモリ340は、基本的なシステムサービスを処理し、かつハードウェア依存タスクを実行する手順(または命令のセット)を含むオペレーティングシステム342を格納し得る。オペレーティングシステム342は、リナックス(Linux)、OS9、もしくはウィンドウズ(登録商標)(Windows(登録商標))などの組込みオペレーティングシステム、またはウインドリバー・システムズ(Wind River Systems, Inc.)のブイエックスワークス(Vx Works)などの、産業または商業用デバイスでの使用に適切なリアルタイムオペレーティングシステムであり得る。メモリ340は、ネットワーク通信モジュール344における通信手順(または命令のセット)を記憶し得る。通信手順は、コンピュータおよび/またはビデオゲームシステム200(図2)などのサーバと通信するために使用される。メモリ340は、音声ドライバプログラム348(または命令のセット)および映像ドライバプログラム350(または命令のセット)を含み得る制御プログラム346(または命令のセット)も含み得る。
STB300は、注文情報およびユーザアクションに対応する情報を伝送し、ネットワーク136を介してビデオゲームコンテンツを受信する。受信された信号は、ネットワークインタフェース314を使用して処理されて、ビデオゲームコンテンツを含むデータストリームのヘッダおよび他の情報を除去する。チューナ316は、1つ以上のサブチャネルに対応する周波数を選択する。結果の音声信号は、音声復号器318で処理される。いくつかの実施形態において、音声復号器318は、AC−3復号器である。結果との映像信号は、映像復号器324で処理される。いくつかの実施形態において、映像復号器314は、MPEG−1、MPEG−2、MPEG−4、H.262、H.263、H.264、またはVC−1復号器であり、他の実施形態において、映像復号器314は、MPEG互換復号器または別の映像圧縮規格用の復号器であり得る。映像復号器324から出力される映像コンテンツは、映像ドライバ326を使用してディスプレイ328を駆動するための適切な形式に変換される。同様に、音声復号器318から出力される音声コンテンツは、音声ドライバ320を使用してスピーカ322を駆動するための適切な形式に変換される。ゲームコントローラ332および/またはリモート制御器336に入力されるユーザの指令またはアクションは、デバイスインタフェース330および/またはIRインタフェース334によって受信され、伝送のためにネットワークインタフェース314に転送される。
ゲームコントローラ332は、Sony Playstation(登録商標)、Nintendo(登録商標)、Sega(登録商標)およびMicrosoft Xbox(登録商標)が備える専用のビデオゲームコンソール、またはパーソナルコンピュータであり得る。ゲームコントローラ332は、ゲームパッド、キーボード、ジョイスティック、マイクロホン、マウス、1つ以上のリモート制御器、1つ以上の追加のゲームコントローラ、または、音声認識技術を含むユーザインタフェースなどの他のユーザインタフェースからの1つ以上のユーザアクションに対応する情報を受信し得る。ディスプレイ328は、テレビジョン、コンピュータ、またはビデオゲームコントローラ332や携帯電話などの携帯デバイスにおける、ブラウン管、液晶ディスプレイ、または他の適切なディスプレイデバイスであり得る。いくつかの実施形態において、スピーカ322は、ディスプレイ328に組み込まれる。いくつかの実施形態において、スピーカ322は、ディスプレイ32の左右にそれぞれ位置決めされる左右のスピーカを含む。いくつかの実施形態において、スピーカ322は、左右のスピーカに加えて、センタースピーカを含む。いくつかの実施形態において、スピーカ322は、ユーザの後ろに位置決めされるサラウンドサウンドスピーカを含む。
いくつかの実施形態において、STB300は、ビデオゲームコンテンツを表示する前に、受信されたビデオゲームコンテンツに対する平滑化動作を実行し得る。いくつかの実施形態において、受信されたビデオゲームコンテンツは復号化され、ディスプレイ328に表示され、そして受信される際にリアルタイムにスピーカ322で再生される。他の実施形態において、STB300は、ビデオのフルフレームが受信されるまで、受信されたビデオゲームコンテンツを格納する。その後、ビデオのフルフレームは復号化され、ディスプレイ328に表示され、一方、付随する音声は、復号化され、スピーカ322で再生される。
図3は、多数の個別システムが構成するSTB300を示しているが、図3は、本明細書で説明する実施形態の構造概略というよりも、セットトップボックスに存在し得るさまざまな特徴の機能記述として意図されている。実際には、そして当業者によって認識されるように、図3に個別に示されるアイテムは組み合わされてよく、また、一部のアイテムは別々のアイテムであってよい。さらに、メモリ340の上記識別される要素の各々は、上述したメモリデバイスのうちの1つ以上のメモリデバイスに格納され得る。上記識別されるモジュールの各々は、上述の機能を実行する命令のセットに対応する。上記識別されるモジュールまたはプログラム(すなわち、命令のセット)は、個別のソフトウェアプログラム、手順、またはモジュールとして実施される必要はなく、従って、これらのモジュールのさまざまなサブセットは、組み合わされてよく、または、さまざまな実施形態に再構成されてよい。いくつかの実施形態において、メモリ340は、上記識別されるモジュールおよびデータ構造のサブセットを格納してよい。また、メモリ340は、上述されていない追加のモジュールおよびデータ構造を格納してよい。
図4は、いくつかの実施形態における、音声を符号化するプロセス400を示すフロー図である。いくつかの実施形態において、プロセス400は、ビデオゲームシステム200(図2)などのビデオゲームシステムによって実行される。交互に、プロセス400は、別個のコンピュータシステムで実行され、結果の符号化音声データは、1つ以上のビデオゲームシステム200に転送またはコピーされる。音声データは、複数の独立ソースから受信される(402)。いくつかの実施形態において、音声データは、.wavファイルなどのパルス符号変調ビットストリームの形で、各独立ソースから受信される(404)。いくつかの実施形態において、独立ソースから受信される音声データは、ビデオゲーム用のバックグラウンドミュージックに対応する音声データ、およびビデオゲーム用のさまざまな音響効果に対応する音声データを含む。
各独立ソースからの音声データは、ソースフレームのシーケンスに符号化され、それによって複数のソースフレームシーケンスを作成する(406)。いくつかの実施形態において、ビデオゲームシステム200(図2)または別のコンピュータシステムの、音声信号前符号器264などの音声信号前符号器は、各独立ソースから音声データを符号化する。いくつかの実施形態において、ソースフレームシーケンス内のフレームに関して、フレームの複数のコピーが生成される(408)。各コピーは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である、別個の関連品質レベルを有する。いくつかの実施形態において、関連品質レベルは、指定の信号対雑音比に対応する(410)。いくつかの実施形態において、各コピーが消費するビットの数は、関連品質レベルの低下に伴い減少する。結果の複数のソースフレームシーケンスは、後で、例えば、対話式ビデオゲームの実行中に使用するためにメモリに格納される。
ビデオゲームまたは他の対話式プログラムの実行中に、複数のソースフレームシーケンスのうちの2つ以上のシーケンスは、ターゲットフレームのシーケンスにマージされる(412)。ターゲットフレームは、複数の独立ターゲットチャネルを含む。いくつかの実施形態において、ゲームサーバモジュール246(図2)の音声フレームマージャ255などの音声フレームマージャは、2つ以上のソースフレームシーケンスをマージする。いくつかの実施形態において、ソースフレームに対する信号対雑音比が選択される(414)。例えば、信号対雑音比は、ターゲットフレームシーケンスに対する定ビットレートを維持するように選択される。いくつかの実施形態において、選択された信号対雑音比は、定ビットレートを維持可能な最高信号対雑音比である。しかし、いくつかの実施形態において、ターゲットフレームシーケンスに対するビットレートは、フレームとフレームとの間で動的に変化し得る。いくつかの実施形態において、選択された信号対雑音比を有するソースフレームのコピーは、ターゲットフレームシーケンス内のターゲットフレームにマージされる(416)。いくつかの実施形態において、ターゲットフレームは、AC−3形式である。
ターゲットフレームのシーケンスは、ビデオゲームシステム200(図2)などのサーバシステムからセットトップボックス300(図3)などのクライアントシステムに伝送され得る。STB300は、スピーカ構成に応じて、各ターゲットチャネルを個別のスピーカに割り当ててもよく、または2つ以上のターゲットチャネルを、スピーカに割り当てられた音声ストリームにダウンミックスしてもよい。複数のソースフレームシーケンスを複数の独立ターゲットチャネルを含むターゲットフレームシーケンスにマージすることで、複数の独立音声信号の同時再生が可能となる。
図5は、いくつかの実施形態における、音声を符号化するプロセス500を示すフロー図である。いくつかの実施形態において、プロセス500は、ビデオゲームシステム200(図2)の音声フレームマージャ255などの音声フレームマージャによって実行される。複数の独立音声信号を表現するデータは、アクセスされる(502)。各音声信号を表現するデータは、ソースフレームのシーケンスを含む。いくつかの実施形態において、複数の独立音声信号を表現するデータは、ビデオゲームシステム200のバンク256に前符号化音声信号257として格納され、これにより、音声フレームマージャ255はデータにアクセスできる。前符号化音声信号の生成を、図4を参照して以下で説明する。
いくつかの実施形態において、各ソースフレームは、複数の音声データコピーを含む(504)。各音声データコピーは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である、別個の関連品質レベルを有する。いくつかの実施形態において、関連品質レベルは、指定の信号対雑音比に対応する。
いくつかの実施形態において、2つのソースフレームシーケンスがアクセスされる。例えば、第1ソースフレームシーケンスは、非サイレント音声データの連続ソースを含み、第2ソースフレームシーケンスは、サイレンスを表現する音声データのシーケンスを含む非サイレント音声データのエピソードソースを含む(506)。いくつかの実施形態において、第1シーケンスは、ビデオゲーム用のバックグラウンドミュージックに対応してよく、第2シーケンスは、ユーザ指令に応答して再生される音響効果に対応してよい。別の例において、第1ソースフレームシーケンスは、非サイレント音声データの第1エピソードソースを含み、第2ソースフレームシーケンスは、非サイレント音声データの第2エピソードソースを含む。従って、両方のシーケンスは、サイレンスを表現する音声データのシーケンスを含む(505)。いくつかの実施形態において、第1シーケンスは、第1ユーザ指令に応答して再生される第1音響効果に対応し得る。第2シーケンスは、第1音響効果とオーバーラップする、第2ユーザ指令に応答して再生される第2音響効果に対応し得る。さらに別の例においては、第1ソースフレームシーケンスは、非サイレント音声データの第1連続ソースを含み、第2ソースフレームシーケンスは、非サイレント音声データの第2連続ソースを含む。いくつかの実施形態において、第1シーケンスは、第1楽曲断片(musical piece)に対応してよく、第2シーケンスは、第1楽曲断片と平行して再生される第2楽曲断片に対応してよい。いくつかの実施形態において、2つより多いソースフレームシーケンスがアクセスされる。
複数のソースフレームシーケンスは、複数の独立ターゲットチャネルを含むターゲットフレームのシーケンスにマージされる(508)。いくつかの実施形態において、ターゲットフレームおよび対応ソースフレームに対する品質レベルが選択される(510)。例えば、品質レベルは、ターゲットフレームシーケンスに対する定ビットレートを維持するように選択される。いくつかの実施形態において、選択された品質レベルは、定ビットレートを維持可能な最高品質レベルである。しかし、いくつかの実施形態において、ターゲットフレームシーケンスに対するビットレートは、フレームとフレームとの間で動的に変化し得る。いくつかの実施形態において、各対応ソースフレームの選択された品質レベルでの音声データコピーは、少なくとも1つのターゲットチャネルに割り当てられる(512)。
プロセス400(図4)にあるように、プロセス500の結果として生じるターゲットフレームシーケンスは、ビデオゲームシステム200(図2)などのサーバシステムからセットトップボックス300(図3)などのクライアントシステムに伝送され得る。STB300は、スピーカ構成に応じて、各ターゲットチャネルを個別のスピーカに割り当ててよく、または2つ以上のターゲットチャネルを、スピーカに割り当てられた音声ストリームにダウンミックスしてもよい。複数のソースフレームシーケンスを複数の独立ターゲットチャネルを含むターゲットフレームのシーケンスにマージすることで、複数の独立音声信号の同時再生が可能となる。
図6は、いくつかの実施形態における、音声を符号化し、および伝送するプロセス600を示すフロー図である。音声データは、複数の独立ソースから受信される(402)。各独立ソースからの音声データは、ソースフレームのシーケンスに符号化されて、複数のソースフレームシーケンスを作成する(406)。プロセス400(図4)に関してより詳細に上述される動作402および406は、オーサリングプロセスの一部として、前もって実行され得る。指令は受信される(602)。いくつかの実施形態において、ビデオゲームシステム200は、ビデオゲームを実行しているユーザのアクションから生じる、セットトップボックス300からの指令を受信する。指令に応答して、複数のソースフレームシーケンスは、複数の独立ターゲットチャネルを含むターゲットフレームのシーケンスにマージされる(412;図4を参照)。ターゲットフレームシーケンスは伝送される(604)。いくつかの実施形態において、ターゲットフレームシーケンスは、ネットワーク136を介してビデオゲームシステム200からSTB300に伝送される。STB300は、スピーカ構成に応じて、各ターゲットチャネルを個別のスピーカに割り当ててよく、または2つ以上のターゲットチャネルを、スピーカに割り当てられた音声ストリームにダウンミックスしてもよい。動作602、412、および604は、ビデオゲームや他のアプリケーションの実施または実行中に、リアルタイムに実行されてよい。
図7は、いくつかの実施形態における、音声を符号化する「前符号化」またはオーサリングプロセス700を示すブロック図である。音声符号器704は、.wavファイルなどのパルス符号変調(PCM)ファイル702を入力として受信し、条件付きAC−3フレーム706のファイルを出力として作成する。いくつかの実施形態において、音声符号器704は、修正AC−3符号器である。出力されたAC−3フレームは条件付けられて、当該フレームがその後ターゲットフレームの単一チャネルに割り当てられることを確実にする。具体的に、すべての小数仮数グループは完全であり、従って、別々のソースチャネルからの仮数が同一のターゲットチャネルに連続して格納されないことが確実となる。いくつかの実施形態において、音声符号器704は、ビデオゲームシステム200(図2)の音声信号前符号器264に対応し、条件付きAC−3フレームのシーケンスは、前符号化音声信号257として格納される。いくつかの実施形態において、各条件付きAC−3フレームは、巡回冗長検査(CRC)値を含む。複数の独立ソースからのPCM音声ファイルに対してプロセス700を繰り返し実施することは、プロセス400(図4)の動作402および406の実施に対応する。結果の条件付きAC−3は、その後ターゲットフレームシーケンスにマージされ得る。
図8は、いくつかの実施形態における、音声フレームのシーケンス800のブロック図である。いくつかの実施形態において、音声フレームのシーケンス800は、音声符号器704(図7)が生成する条件付きAC−3フレームのシーケンス706に対応する。音声フレームのシーケンス800は、ヘッダ802、フレームポインタテーブル804、およびフレーム1〜nのデータ(806、808、810)を含み、ここでnはシーケンス800のフレーム数を示す整数である。ヘッダ802は、バージョン情報、ビットレート、シーケンスの固有のID、フレーム数、フレームごとのSNR変数の数、フレームデータの先頭のポインタ、および検査合計などの、音声フレームのシーケンス800の一般的な性質を格納する。フレームポインタテーブル804は、各フレームの各SNR変数のポインタを含む。例えば、フレームポインタテーブル804は、フレームデータの先頭から各フレームの各SNR変数のデータへのオフセットおよびフレームデータの先頭から当該フレームの指数データへのオフセットを含み得る。従って、いくつかの実施形態において、フレームポインタテーブル804は、フレームごとに17個のポインタを含む。
フレーム1データ806は、指数データ812およびSNR変数1〜N(814、816、818)を含み、ここでNは、フレームごとのSNR変数の総数を示す整数である。いくつかの実施形態において、Nは16である。フレームのデータは、指数データおよび仮数データを含む。いくつかの実施形態において、指数データは1つのフレームのすべてのSNR変数と同一であるので、指数データ812は、仮数データとは別に、一度だけ格納される。しかし、仮数データは、SNR変数によって異なるので、各変数に対して別々に格納される。例えば、SNR変数N818は、SNR変数Nに対応する仮数データを含む。変数の作成を試みた音声符号器704(図7)などの符号器が、すべての小数仮数グループを満たすことによって小数仮数問題を解決できなかった場合、SNR変数は空であり得る。小数仮数問題を解決することで、SNR変数がターゲットフレームの単一のチャネルに割り当てられることが可能となる。符号器が小数仮数問題を解決できない場合、符号器はSNR変数を生成せず、SNR変数を空として示すことになる。指数および仮数データが別々に格納されるいくつかの実施形態において、フレームポインタテーブル804は、各フレームに対する指数データのポインタおよび各フレームに対する仮数データの各SNR変数のポインタを含む。
図9は、いくつかの実施形態における、音声を符号化し、伝送し、かつ再生するシステム900を示すブロック図である。システム900は、ゲームサーバ902、セットトップボックス912、およびスピーカ920を含む。ゲームサーバ902は、前符号化バックグラウンド(BG)ミュージック904および前符号化音響効果(FX)906を含む複数の独立音声信号を格納する。BGデータ904およびFXデータ906は、それぞれ、条件付きAC−3フレームのシーケンス706(図7)などのソースフレームシーケンスを含む。音声フレームマージャ908は、BGデータ904およびFXデータ906にアクセスし、ソースフレームシーケンスをターゲットフレームにマージする。BGデータ904およびFXデータ906は、ターゲットフレーム内の1つ以上の個別のチャネルに割り当てられる。トランスポートストリーム(TS)フォーマッタ910は、結果として生じる、伝送用のターゲットフレームシーケンスをフォーマットし、ターゲットフレームシーケンスをSTB912に伝送する。いくつかの実施形態において、TSフォーマッタ910は、ネットワーク136(図1)上で、ターゲットフレームシーケンスをSTB912に伝送する。
セットトップボックス912は、デマルチプレクサ(demux)914、音声復号器916、およびダウンミキサ918を含む。デマルチプレクサ914は、複数のプログラムを含む、入力されるトランスポートストリームを多重分離し、STB912に関連するプログラムを抽出する。その後、デマルチプレクサ914は、プログラムを音声(例えば、AC−3)ストリームおよび映像(例えば、MPEG−2映像)ストリームに分割する。音声復号器916(いくつかの実施形態においては標準的なAC−3復号器)は、BGデータ904およびFCデータ906を含む伝送された音声を復号化する。その後、ダウンミキサ918は、音声データをダウンミックスし、FG音声およびBG音声が同時に再生されるように音声信号をスピーカ920に伝送する。
いくつかの実施形態において、ダウンミキサ918によって実行される機能は、スピーカ920の数と伝送されたターゲットフレーム内のチャネル数との相関関係によって決まる。スピーカ920が各チャネルに対応するスピーカを含む場合、ダウンミックスは実行されない。その代わりに、各チャネル上の音声信号は、対応スピーカで再生される。しかし、スピーカ920の数がチャネルの数より少ない場合、ダウンミキサ918は、スピーカ920の構成、伝送されたターゲットフレームに使用される符号化モード、および音声フレームマージャ908が行うチャネル割当てに基づいてチャネルをダウンミックスすることになる。
AC−3音声符号化規格は、表1に要約されるように、各AC−3フレームに組み込まれる音声符号化モード(「acmod」)特性によって指定されるさまざまなチャネル構成を有する多数の異なるモードを含む。
Figure 0005331008
表1に示す5つのチャネルに加えて、AC−3規格は、低音増強(LFE)チャネルを含む。いくつかの実施形態において、LFEチャネルは使用されず、それによって他のチャネルに対する追加のビットを得る。いくつかの実施形態において、AC−3モードは、フレーム単位で選択される。いくつかの実施形態において、同一のAC−3モードは、アプリケーション全体に対して使用される。例えば、ビデオゲームは、各音声フレームに対して3/0モードを使用し得る。
図10A〜10Cは、いくつかの実施形態における、ソースフレームのターゲットフレームチャネル割当てを示すブロック図である。図示されたターゲットフレームチャネル割当ては例示に過ぎず、他のターゲットフレームチャネル割当ても可能である。いくつかの実施形態において、チャネル割当ては、音声フレームマージャ255(図2)または908(図9)などの音声フレームマージャによって実行される。図10Aについては、3/0モード(acmod=‘011’)が選択されている。3/0モードは、左1000、右1004、およびセンター1002という3つのチャネルを有する。前符号化バックグラウンド(BG)ミュージック904(図9)(いくつかの実施形態において、ステレオ音響であり、従って2つのチャネルを含む)は、左チャネル1000および右チャネル1004に割り当てられる。前符号化音響効果(FX)データ906は、センターチャネル1002に割り当てられる。
図10Bについては、2/2モード(acmod=‘110’)が選択されている。2/2モードは、左1000、右1004、左サラウンド1006、および右サラウンド1008という4つのチャネルを有する。前符号化BG904は、左チャネル1000および右チャネル1004に割り当てられる。前符号化FX906は、左サラウンドチャネル1006および右サラウンドチャネル1008に割り当てられる。
図10Cについては、3/0モードが選択されている。前符号化音響効果データ(FX1)1010の第1ソースは、左チャネル1000に割り当てられ、前符号化音響効果データ(FX2)1014の第2ソースは、右チャネル1004に割り当てられる。いくつかの実施形態において、前符号化BG1012(この例においてはステレオ音響ではない)は、センターチャネル1002に割り当てられる。いくつかの実施形態において、前符号化BG1012は存在せず、サイレンスを表現する音声データのシーケンスは、センターチャネル1002に割り当てられる。いくつかの実施形態において、2/0モードは、2つの音響効果のみが存在し、かつ背景音が存在しないときに、使用され得る。図14の(C)に関して以下に説明するように、2つの独立した音響効果を独立のチャネルに割り当てることにより、2つの音響効果が個別のスピーカで同時にされることが可能となる。
いくつかの実施形態において、チャネル割当てを実行する音声フレームマージャは、音声ステッチングを実行することも可能であり、それによってソースフレームのミキシングを利用しないビデオゲームおよび他のアプリケーションとの後方互換性を提供する。いくつかの実施形態において、音声フレームマージャは、実行中にミキシングとステッチングを繰り返すことが可能である。
図10Aおよび図10Bに示すチャネルマッピングなどの、AC−3規格に基づくチャネルマッピングを実行する音声フレームマージャは、いくつかの実施形態において、AC−3フレームのシーケンスを出力として生成する。図11Aおよび図11Bは、いくつかの実施形態における、AC−3フレーム1100のデータ構造を示すブロック図である。図11Aのフレーム1100は、同期情報(SI)ヘッダ1102、ビットストリーム情報(BSI)1104、6つの符号化音声ブロック(AB0〜AB5)1106〜1116、補助データビット(Aux)1118、および巡回冗長検査(CRC)1120を含む。SIヘッダ1102は、同期を取得しかつ維持するために使用される同期語、ならびにサンプル速度、フレームサイズ、および復号器による評価が任意であるCRC値を含む。BSI1104は、チャネル構成、処理後構成(圧縮、ダイアログ正規化など)、著作権、および時刻コードについての情報などの符号化音声データを表現するパラメータを含む。各符号化音声ブロック1106〜1116は、チャネルごとの256個の音声サンプルに対応する指数および仮数データを含む。補助データビット1118は、復号化に必要でない追加のデータを含む。いくつかの実施形態において、補助データは存在しない。いくつかの実施形態において、補助データは、音声ブロックデータによって使用されないすべてのビットを確保するために使用される。CRC1120は、フレーム全体にわたるCRCを含む。いくつかの実施形態において、CRC値は、ソースフレームに対する以前に計算されたCRC値に基づいて計算される。AC−3フレームに関する追加の詳細は、AC−3仕様(米国次世代テレビジョンシステム委員会(ATSC)ドキュメントA/52B、「デジタル音声圧縮規格(AC−3、E−AC−3)改訂B)」(2005年6月14日))に記載されている。AC−3仕様は、参照により本明細書に組み込まれる。
標準AC−3符号器のビット割付けアルゴリズムは、個々のチャネルと関係付けられたビットを格納するための利用可能資源としての、フレーム内のすべての利用可能ビットを使用する。従って、標準AC−3符号器が生成するAC−3フレームにおいて、チャネルおよび音声ブロックごとの、正確な仮数または指数ビット割当ては存在しない。その代わりに、ビット割付けアルゴリズムは、概して、チャネル全体にわたって動作し、チャネル、周波数、およびブロックにわたってビットを柔軟に割り付ける。従って、6個のブロックのサイズは、各フレームにおいて可変である。さらに、一部の仮数は、小数サイズに量子化されることができ、その後、いくつかの仮数は整数ビットのグループに収集され、このグループは、当該グループの第1小数仮数の位置に格納される(下記表3を参照)。結果として、異なるチャネルおよびブロックからの仮数が、単一の場所に一緒に格納され得る。加えて、標準AC−3符号器は、ソースPCM音声内のチャネル間の依存性を活用する、結合と呼ばれる技術を適用して、相互依存チャネルの符号化に必要なビット数を減少させ得る。2/0モード(すなわち、ステレオ)については、標準AC−3符号器は、マトリックス化と呼ばれる技術を適用してサラウンド情報を符号化し得る。小数仮数量子化、結合、およびマトリックス化は、各チャネルが独立して存在することを防ぐ。
しかし、符号器がすべての小数仮数グループを満たすことによって小数仮数問題を解決するとき、かつ符号器が結合およびマトリックス化を利用しないとき、音声フレームマージャは、特定のソースフレームに対応する仮数および指数データをターゲットフレームの音声ブロック内の指定のターゲットチャネルに割り当てることができる。図11Bは、いくつかの実施形態における、3/0モードのAC−3音声ブロックにおけるチャネル割当てを示す。各音声ブロックは、AB0 1106の左チャネル1130、センターチャネル1132、および右チャネル1134などの左、センター、右チャネルに分割される。第1独立音声信号(Src1)に対応する第1ソースフレームからのデータは、左チャネル1130および右チャネル1134に割り当てられる。いくつかの実施形態において、第1ソースフレームからのデータは、2つの対応ソースチャネル(Src1、Ch0およびSrc1、Ch1)でのステレオ形式の音声データに対応する。第1ソースフレームの各ソースチャネルに対応するデータは、AC−3フレームの個別のチャネルに割り当てられる。つまり、Src1、Ch0は、左チャネル1130に割り当てられ、かつSrc1、Ch1は、右チャネル1134に割り当てられる。いくつかの実施形態において、Src1は、前符号化BG904(図9)に対応する。第2独立音声信号(Src2)に対応する第2ソースフレームからのデータは、センターチャネル1132に割り当てられる。いくつかの実施形態において、Src2は、前符号化FX906(図9)に対応する。
いくつかの実施形態において、AC−3音声ブロックのターゲットチャネルに割り当てられる仮数データは、対応ソースフレームの選択されたSNR変数に対応する。いくつかの実施形態において、同一のSNR変数が、ターゲットフレームの各ブロックに対して選択される。いくつかの実施形態において、異なるSNR変数は、ブロック単位で選択され得る。
図12は、いくつかの実施形態における、多重ソースフレームの選択されたSNR変数のターゲットフレームへの併合を示すブロック図である。図12は、2つの独立ソース、ソース1(1204)およびソース2(1208)に対応するソースフレームの2つのシーケンス1204、1208を含む。各シーケンスのフレームは、時系列で番号が付けられ、ターゲットフレーム1206にマージされる。それにより、ソース1フレーム111およびソース2フレーム3は、同一のターゲットフレーム(フレームt、1240)にマージされ、従って、ターゲットフレームが続いて復号化されるときに同時に再生されることになる。
ソース1フレーム1204と比較して小さい番号付けをソース2フレーム1208に対して行うことは、ソース2がソース1よりもずっと短い音響効果に対応することを示す。いくつかの実施形態において、ソース1は、前符号化BG904に対応し、ソース2は、前符号化FX906に対応する(図9)。前符号化FX906は、エピソード的にのみ、例えば、ユーザの指令に応答して再生され得る。いくつかの実施形態において、前符号化FX906が再生されていないとき、サイレンスに対応する一連のビットは、前符号化FX906が割り当てられるターゲットフレームチャネルに書き込まれる。いくつかの実施形態において、STB300などのセットトップボックスは、受信されたターゲットフレームのチャネル数の変化に気づくと自身を再構成し、音声再生の中断という結果になる。サイレンスに対応するデータを適切なターゲットフレームチャネルに書き込むことで、STBがチャネル数の変化に気づいて自身を再構成することを防ぐ。
ソース1フレームシーケンス1204のフレーム111は、16個のSNR変数を含み、その範囲は、最低品質の変数であり、かつ532ビットしか消費しないSNR0(1238)から、最高品質の変数であり、かつ3094ビットを消費するSNR15(1234)に及ぶ。ソース2フレームシーケンス1208のフレーム3は、13個のみのSNR変数を含み、その範囲は、最低品質の変数であり、かつ532ビットしか消費しないSNR0(1249)から、最高品質の使用可能な変数であり、かつ2998ビットを消費するSNR12(1247)に及ぶ。フレーム3(1242、1244、および1246)の3つの高品質な潜在的SNR変数は、これらの変数がそれぞれ、ターゲットフレーム1206ビットレートおよびサンプルレートが許可するであろうビットと比べてより多くのビットを消費するであろうという理由で、使用可能ではない。いくつかの実施形態において、SNR変数のビットサイズが、ターゲットフレームビットレートおよびサンプルレートが許可するビットサイズより高い場合は、音声信号前符号器264は、SNR変数を作成せず、従ってメモリを節約することになる。いくつかの実施形態において、ターゲットフレームビットレートは128kB/sでありサンプルレートは48kHzであり、これは1フレーム当たり4096ビットに対応する。これらのビットのうちの約300ビットはヘッダおよび他のサイド情報に使用され、1フレーム当たり、指数および仮数データに対して約3800ビットが使用可能となる。使用可能な約3800ビットは、後述の通り、デルタビット割付け(DBA)にも使用される。
図12において、音声フレームマージャ255は、SNR10に対応するソース1(1236)およびソース2(1248)からSNR変数を選択している。これらのSNR変数は、ソースフレームが結合される際に、指数、仮数およびDBAデータ(1264+2140=3404)に使用可能なターゲットビットの許容数を超えない当該ソースフレームの高品質な使用可能変数である。これらのSNR変数に必要なビット数は、最大許容ビット数よりも少ないため、補助データビットフィールドからのビットは、フレームを満たすために使用される。ソース1のSNR変数1236は、条件付きAC−3フレーム1200において前符号化され、当該フレームは、共通データ1220および音声データブロックAB0〜AB5(1222〜1232)を含む。この例において、ソース1はステレオ形式であるため、音声ブロックごとに2つのチャネル(すなわち、フレーム1200のCh0およびCh1)を有する条件付きAC−3フレームに前符号化される。共通データ1220は、AC−3フレーム1100(図11A)のフィールドSI1102、BSI1104、Aux1118、およびCRC1120に対応する。いくつかの実施形態において、指数データは、仮数データとは別に格納される。例えば、条件付きAC−3フレーム1200は、共通データ1220とAB0データ1222とに間に共通指数データフィールド(図示なし)を含み得る。同様に、ソース2のSNR変数1248は、条件付きAC−3フレーム1212において前符号化され、当該フレームは、共通データ1250および音声データブロックAB0〜AB5(1252〜1262)を含み、かつ共通指数データ(図示なし)を含んでよい。この例において、ソース2は、ステレオ音響でなく、ブロックごとに1つのチャネルを有する条件付きAC−3フレームに符号化される(すなわち、フレーム1212のCh0)。
いくつかの実施形態において、図12に示すように一旦ソースフレームシーケンスがターゲットフレームシーケンスにマージされると、ターゲットフレームシーケンスを、セットトップボックス300(図3)などのクライアントシステムに伝送することができ、ここでターゲットフレームは、復号化され、再生される。図13は、いくつかの実施形態における、ターゲットフレームシーケンスを受信し、復号化し、および再生するプロセス1300を示すフロー図である。指令に応答して、独立音声ソースに対応する複数のチャネルを含むフレームシーケンスを含む音声データが受信される(1302)。いくつかの実施形態において、音声データは、AC−3形式で受信される(1304)。受信された音声データは、復号化される(1306)。いくつかの実施形態において、標準的なAC−3復号器は、受信された音声データを復号化する。
クライアントシステムと関連付けられるスピーカの数は、受信されたフレームシーケンス内のチャネルの数と比較される(1308)。いくつかの実施形態において、クライアントシステムと関連付けられるスピーカの数は、セットトップボックス300(図3)に結合されるスピーカの数と等しい。スピーカの数がチャネルの数以上である場合(1308−No)、各チャネルと関連付けられた音声データは、対応スピーカで再生される(1310)。例えば、受信された音声データがAC−3 2/2モードで符号化される場合、左、右、左サラウンド、および右サラウンドという4つのチャネルが存在する。各スピーカがチャネルに対応するようにクライアントシステムが少なくとも4つのスピーカを有する場合、各チャネルからのデータは、対応スピーカで再生することができ、ダウンミックスは実行されない。別の例においては、受信された音声データがAC−3 3/0モードに符号化される場合、左、右、およびセンターという3つのチャネルが存在する。クライアントシステムが、対応する左、右、およびセンタースピーカを有する場合、各チャネルからのデータは、対応スピーカで再生されることが可能であり、ダウンミックスは実行されない。しかし、スピーカの数がチャネルの数より少ない場合(1308−Yes)、チャネルのうちの2つ以上のチャネルがダウンミックスされ(1312)、2つ以上のダウンミックスされたチャネルと関連付けられた音声データは、同一のスピーカで再生される(1314)。
ダウンミックスの例が図14の(A)〜(C)に示される。図14の(A)は、いくつかの実施形態における、2つのソースチャネル904、906および2つのスピーカ1402、1404を前提とする、AC−3 3/0モードでのチャネル割当ておよびダウンミックスを示すブロック図である。図10Aに示すように、前符号化FX906はセンターチャネル1002に割り当てられ、前符号化BG904は左チャネル1000および右チャネル1004に割り当てられる。左チャネル1000の音声データは左スピーカ1402で再生され、右チャネル1004の音声データは右スピーカ1404で再生される。しかし、どのスピーカもセンターチャネル1002に対応しない。従って、音声データは、前符号化FX906が、前符号化BG904とともに両方のスピーカで同時に再生されるようにダウンミックスされる。
図14の(B)は、いくつかの実施形態における、2つのソースチャネル904、906および2つのスピーカ1402、1404を前提とする、AC−3 2/2モードでのチャネル割当ておよびダウンミックスを示すブロック図である。図10Bに示すように、前符号化BG904は、左チャネル1000および右チャネル1004に割り当てられる。同様に、前符号化FX906は、左サラウンドチャネル1006および右サラウンドチャネル1008に割り当てられる。4つのチャネルおよび2つのみのスピーカが存在するため、ダウンミックスが実行される。左チャネル1000および左サラウンドチャネル1006の音声データは、ダウンミックスされ、左スピーカ1402で再生される。また、右チャネル1004および右サラウンドチャネル1008の音声データは、ダウンミックスされ、右スピーカ1404で再生される。結果として、前符号化BG904および前符号化FX906は、両方のスピーカで同時に再生される.
図14の(C)は、いくつかの実施形態における、3つのソースチャネル1010、1012、および1014ならびに2つのスピーカ1402および1404を前提とする、AC−3 3/0モードでのチャネル割当ておよびダウンミックスを示すブロック図である。図10Cに示すように、前符号化FX1 1010は左チャネル1000に割り当てられ、前符号化FX2 1014は右チャネル1004に割り当てられ、前符号化BG1012はセンターチャネル1002に割り当てられる。3つのチャネルと2つのみのスピーカが存在するため、ダウンミックスが実行される。左チャネル1000およびセンターチャネル1002の音声データは、ダウンミックスされ、左スピーカ1402で再生される。右チャネル1004およびセンターチャネル1002の音声データは、ダウンミックスされ、右スピーカ1404で再生される。結果として、前符号化FX1 1010および前符号化FX2 1014は、それぞれ個別のスピーカで同時に再生される。
次に、小数仮数問題の解決に注目する。標準AC−3符号器は、いくつかの仮数グループに対して、仮数ごとに小数ビットを割り付ける。そのようなグループが特定のソースからの仮数で完全には満たされない場合、別のソースからの仮数が、当該グループに加えられ得る。結果として、1つのソースからの仮数の直後に別のソースからの仮数が続くことになるであろう。この割当てにより、AC−3復号器は仮数チャネル割当てのトラックを失い、それによって、ターゲットフレーム内の異なるチャネルへの、異なるソース信号の割当てを防ぐことになるであろう。
AC−3規格は、符号器が使用する標準マスキングカーブを修正することによって特定の周波数帯域内の仮数の量子化を調整するためのデルタビット割当て(DBA)として知られるプロセスを含む。デルタビット割当て情報は、復号器への側波帯情報として送信され、すべてのAC−3復号器によって支援される。後述するアルゴリズムを使用して、デルタビット割当ては、ビット割付けを修正して完全な小数仮数グループを確実のものとする。
AC−3符号化スキームにおいて、仮数は、各ブロックの各チャネルの入力サンプルの256−ビン変形離散コサイン変換(MDCT)から生じる指数によって形成される電力スペクトル密度電力包絡線(PSD)で折り返されたマスキングカーブに従って量子化され、約1/6オクターブバンドのスペクトルが生じる。マスキングカーブは、人間の耳の心理音響モデルに基づき、その形状は、符号化AC−3ビットストリーム内のサイド情報として送信されるパラメータによって決定される。仮数のビット割付けプロセスの詳細は、AC−3仕様(米国次世代テレビジョンシステム委員会(ATSC)ドキュメントA/52B、「デジタル音声圧縮規格(AC−3、E−AC−3)改訂B)」(2005年6月14日))に記載されている。
仮数の量子化レベルを決定するために、いくつかの実施形態において、符号器は、まず周波数帯域の各々に対するビット割付けポインタ(BAP)を決定する。BAPは、ビット割付けポインタテーブル(表2)のアドレスに基づいて決定される。ビット割付けポインタテーブルは、各アドレス値に対する指標(すなわち、BAP)を、仮数に割り付けるビット数を決定する第2テーブルに格納する。アドレス値は、各バンドのPSDから対応するマスク値を引き、その結果を5だけ右シフトする(その結果を32で割ることに対応する)ことによって計算される。この値は、0から63の範囲にある閾値である。
Figure 0005331008
帯域内の仮数に割り付けるビット数を決定する第2テーブルは、ビット割当てテーブルと呼ばれる。いくつかの実施形態において、ビット割当てテーブルは、16個の量子化レベルを含む。
Figure 0005331008
ビット割付けテーブル(表3)から分かるように、BAP1、2、4は、量子化仮数の小数サイズにつながる量子化レベル(BAP1に対する1.67(5/3)ビット、BAP2に対する2.33(7/3)ビット、およびBAP4に対する3.5(7/2)ビット)を示す。そのような小数仮数は、BAP1、2、4の各々に対して1つのループである、3つの個別のグループに収集される。小数仮数が3つのグループの各々に対して初めて生じるたびに、または、小数仮数が生じて、同じ型の先のグループが完全に満たされると、符号器は、出力ビットストリームの現在位置にグループの全ビットを確保する。その後、特定の仮数に対するソース信号にかかわらず、符号器は、そのグループの型の小数仮数を収集し、そのグループが満たされるまでその位置に小数仮数を書き込む。BAP1については、グループは5ビットを有し、グループが満たされるまで、3つの仮数が収集される。BAP2については、グループは3つの仮数に対して7ビットを有する。BAP4については、グループは2つの仮数に対して7ビットを有する。
デルタビット割当ては、符号器が、選択された周波数帯域に対するマスキングカーブを修正することによって仮数の量子化を調整することを可能にする。AC−3規格 は、帯域ごとに+6または−6dBの倍数でのマスキングカーブ修正を可能にする。帯域に対して−6dBでマスキングカーブを修正することは、当該帯域内でのすべての仮数に対するちょうど1ビットの解像度の増加に対応し、これはビット割付けポインタテーブル(例えば、表2)に対する指標として使用されるアドレスを+4だけ増加させることに対応する。同様に、帯域に対して+6dBでマスキングカーブを修正することは、当該帯域内でのすべての仮数に対するちょうど1ビットの解像度の減少に対応し、これはビット割付けポインタテーブル(例えば、表2)に対する指標として使用されるアドレスを−4だけ増加させることに対応する。
デルタビット割当ては、他の制限を有する。最大で8つのデルタビット補正値エントリがチャネルおよびブロックごとに可能である。さらに、DBAデータ内の第1周波数帯域は、5ビット絶対値として格納され、一方、補正される次の周波数帯域は、第1帯域番号からのオフセットとして符号化される。従って、いくつかの実施形態において、補正されるべき第1周波数帯域は、0〜31の範囲に制限される。いくつかの実施形態において、第1実補正が31より大きい帯域番号に対してのものである場合、0〜31の範囲の帯域の擬似補正は格納される。また、帯域番号27より上の周波数帯域は、1より大きい幅を有するため(すなわち、帯域番号ごとに1つより多い仮数が存在する)、そのような帯域に対する補正は、いくつかの仮数について同時に行う量子化に影響を及ぼす。
このような規則を前提として、いくつかの実施形態において、デルタビット割当ては、小数仮数グループを満たすために用いることができる。いくつかの実施形態において、標準AC−3符号器は、最初にデルタビット割当てを使用しないように修正される。つまり、ビット割付けプロセスは、デルタビット割当てを行わずに実行される。各チャネルおよびブロックについては、ビット割付けプロセスによって生じるデータは、小数仮数グループがあるかどうかについて分析される。その後、修正符号器は、デルタビット割当て値を使用して、選択された仮数の量子化を補正することによって、不完全な小数仮数グループを満たす、もしくは空にしようとする。いくつかの実施形態において、BAP1、2、および4に対応するグループ内の仮数は、体系的に補正される。いくつかの実施形態において、バックトラッキングアルゴリズムは、少なくとも1つの解が見つかるまで、可能な補正についてのすべての知覚可能な組合せを試みる。
下記の例においては(表4)、符号器は、所与のSNRでの指定のソース信号に対応する1つのターゲットフレームチャネルに対する1つのブロックデータのビット割当てを終了している。デルタビット割当ては未だ実施されておらず、小数仮数グループは、完全には満たされていない。表4は、結果として得られる量子化を示す。0に量子化されないすべての周波数仮数について、テーブルは、帯域番号、帯域内の周波数番号、ビット割付けポインタ(BAP;表3を参照)、およびBAPテーブル(表2)からBAPを検索するために使用されたアドレスを一覧表示する。
Figure 0005331008
デルタビット割当て補正を行わずに符号化されると、以下の数の小数仮数が存在する(表4において、BAP2およびBAP4に対応する小数仮数は、容易に参照できるように強調表示されている)。
Figure 0005331008
表5に示すように、このブロックについては、25個の仮数がBAP=1を有し、2つの仮数はBAP=2を有し、1つの仮数はBAP=4を有する。BAP1については、グループ全体で3つの仮数を有する。従って、25個の仮数は、8個の完全なグループおよび仮数を1つのみ有する9番目のグループに対応する(25 mod 3=1)。9番目のグループは、一杯になるためにさらに2つの仮数を必要とする。BAP2については、グループ全体で3つの仮数を有する。従って、2つの仮数は、満たされるためにもう1つの仮数を必要とする1つのグループに対応する(3−(2 mod 3)=1)。BAP4については、グループ全体で2つの仮数を有する。従って、1つの仮数は、満たされるためにもう1つの仮数を必要とする1つのグループに対応する(2−(1 mod 2)=1)。
部分的に満たされた仮数グループを満たすまたは空にするために、いくつかの方策を実施できるであろう。いくつかの実施形態において、より多数の量子化レベルにつながる(すなわち、より高品質につながる)デルタビット補正のみが許可される。この限定を有する実施形態については、以下の、小数仮数グループを満たすまたは空にする別の手法が存在する。
1つの代替策は、BAP=0である2つの仮数(表4に図示なし)を見つけて、各仮数がBAP値=1に対応するBAPテーブルアドレスを有するまで、DBA補正を行うことによるマスク値の増加を試みることによって、BAP=1の9番目のグループを満たすことである。これらの2つの仮数は、BAP1グループを満たすであろう。いくつかの実施形態におけるビット割付けポインタテーブル(BAPテーブル)1500を示す図15Aは、9番目のグループを満たすこの方法を示す。矢印1502および1504は、BAP=0を当初有する2つの仮数に対する増加したマスク値に対応する。上述の通り、DBAが質を向上させるためだけに用いられる実施形態については、1つのDBA補正ステップが+4のアドレス変更に対応する。従って、9番目のグループを満たすこの方法は、(予測されたマスク値に、可能なDBA補正の最大数を加えたものに等しい)最大限のマスク値を帯域に対するPSD値から引くことでBAP値=1を指すBAPテーブルアドレスをもたらす当該帯域内の仮数が存在する場合にのみ可能である。そのような仮数がブロック内で発見されない場合が多く確認されてきた。
他の代替策は、BAP=1である1つの仮数を見つけてBAP>1を示すようにアドレスを増加させることによって、BAP=1である9番目のグループを空にすることである。オリジナルアドレスが1である場合、1回の補正後に得られるアドレスは5であり、これは、依然としてBAP=1に対応する(矢印1510;図15B)。2回目の補正は、アドレス9という結果になり、これはBAP=3に対応する(矢印 1516;図15B)。表4において、これらの2つの補正は、アドレス1を有する帯域8に対して行われるであろう。
オリジナルアドレスが2または3である場合、1回の補正後のアドレスは、それぞれ6または7となり、これはBAP2に対応する(矢印1512および1514;図15B)。表4において、帯域14は、アドレス2を有し、帯域15はアドレス3を有する。これらの帯域のどちらかに対して実行される補正は、9番目のBAP1グループを空にし、かつBAP2グループを満たすであろう。他のシナリオにおいては、そのような補正は、補正を必要とするであろうBAP2の小数仮数のグループを作成し得る。
オリジナルアドレスが4または5である場合、1回の補正後のアドレスはそれぞれ8または9となり、これはBAP3に対応する(矢印1518および1520;図15B)。表4において、アドレス4を有する帯域0または他のいくつかの帯域は補正され、それによって9番目のBAP1グループを空とし、追加のBAP3の仮数を作成するであろう。
いくつかの実施形態において、いったんすべてのBAP1グループが満たされると、すべてのBAP2グループを満たすための補正が検討される。上述の通り、1つの代替策は、アドレス2または3の帯域内の仮数を見つけてこれらのアドレスを、BAP2に対応する6または7に増加させることである。表4において、帯域14は、アドレス2からアドレス6に補正されることができ(矢印1512;図15B)、帯域15は、アドレス3からアドレス7へ補正することができる(矢印1514;図15B)。しかし、一般に、一旦すべてのBAP1グループが満たされたら、BAP1からBAP2への補正は実行されるべきでない。そうでなければ、部分的に満たされたBAP1グループが作成されることになる。
他の代替策は、不完全なグループ内の仮数のアドレスを増加させることによって不完全なBAP2グループを空にすることである。具体的に、アドレス6および7は、それぞれアドレス10および11に補正され得る(矢印1530および1532;図15C)。表4において、帯域18は、アドレス6からアドレス10に補正されることができ、これはBAP3に対応する。帯域20は、アドレス7からアドレス11に補正されることができ、これはBAP4に対応する。従って、帯域20への補正は、同時にBAP2グループを空にし、かつBAP4グループを満たすだろう。他のシナリオにおいては、アドレス7からアドレス11への補正は、補正を必要とするBAP4グループを作成し得る。
いくつかの実施形態において、一旦すべてのBAP1およびBAP2グループが満たされると、すべてのBAP4グループを満たすための補正が検討される。1つの代替策は、DBA補正の実施がBAP4に対応するアドレスにつながるアドレスを有する仮数の見つけようとすることである。具体的に、アドレス7または8は、それぞれアドレス11または12に補正され得る(矢印1550および1552;図15D)。表4において、上述の通り、帯域20は、アドレス7からアドレス11に補正されることができ、これはBAP4に対応する。あるいは、2回の補正を実行してアドレス3からアドレス11に(矢印1546および1550)、またはアドレス4からアドレス12に(矢印1548および1552)することができる。しかし、一般に、一旦すべてのBAP1およびBAP2グループが満たされると、部分的に満たされたBAP1またはBAP2グループを作成するような補正は実行され得ない。場合によっては、必要な補正ステップ(矢印1540、1544、1548、および1552または矢印1542、1546、および1550)を実施することによって、BAP=0の仮数をアドレス11または12に移動させることが可能であり得る。しかし、上述の通り、この最後の方法は、当初の未量子化仮数値が、当該帯域に対する最大限のマスク値によってマスクされない程度に十分高いマスク値を有すると判明した場合にのみ可能である。
他の代替策は、BAP4に対応するアドレス11または12を有する仮数を見つけて、DBA補正により当該アドレスをBAP6に対応する15または16に増加させる(矢印1560および1562;図15E)ことである。表4において、帯域19は、アドレス11からアドレス19へ補正されることができ、それによって部分的に満たされたBAP4グループを空にする。
部分的に満たされた小数仮数グループを満たすまたは空にするための上記方策は、帯域28およびそれ以上の帯域について、1より大きいBAPの仮数は、1回のDBA補正によって変化されるという事実によってさらに複雑になる。例えば、そのような帯域がBAP=1につながるアドレスを有する1つの仮数およびBAP=2につながるアドレスを有する別の仮数を含む場合、2つの小数仮数グループは、1つの補正値により修正されるであろう。
いくつかの実施形態において、アルゴリズムは、部分的に満たされた仮数グループを順次満たすまたは空にするための上記方策を利用し、最初にBAP1グループ、続いてBAP2グループ、最後にBAP4グループを処理する。BAPグループ処理の他の順序も可能である。そのようなアルゴリズムは、ビット割付けおよび部分的な小数仮数グループについての多くの場合に対する小数仮数問題の解を見つけることができる。しかし、処理が実行される順序は、可能な解の数を決定する。すなわち、アルゴリズムの線形実行は、解空間を制限する。
解空間を拡大するために、バックトラッキングアルゴリズムは、いくつかの実施形態において使用される。いくつかの実施形態において、バックトラッキングアルゴリズムは、上記方策のすべての知覚可能な組合せを試みる。デルタビット割付け補正の可能な組合せは、ベクトル(v1、…、vm)で表現される。バックトラッキングアルゴリズムは、少なくとも1つの解が見つかるまで、深さ優先方式でベクトルの領域を再帰的に走査する。いくつかの実施形態において、バックトラッキングアルゴリズムは、呼び出されると、空ベクトルで開始する。実行の各段階において、バックトラッキングアルゴリズムは、ベクトルに新規値を加え、それによって部分ベクトルを生成する。部分解を表現できない部分ベクトル(v1;…、vj)に達すると、アルゴリズムは、ベクトルから後続値を除去することによって後戻りし、その後、ベクトルを代替値で拡張しようとすることによって進む。いくつかの実施形態において、代替値は、表4に関して上述したDBA方策に対応する。
解空間のバックトラッキングアルゴリズム走査は、木の深さ優先走査によって表現され得る。いくつかの実施形態において、木そのものは、談話においてアルゴリズムによって完全には格納されず、その代わりに、根への経路のみが格納されてバックトラッキングが可能となる。
いくつかの実施形態において、バックトラッキングアルゴリズムは、最低限の補正量を保証しないものの、最低限の補正量を必要とする解をしばしば見つける。表4の例については、いくつかの実施形態において、バックトラッキングアルゴリズムは、まず1つの+4アドレスステップによって帯域14を補正し、それによって1つの構成要素分BAP1を減少させ、1つの構成要素分BAP2を増加させる。その後、バックトラッキングアルゴリズムは、1つの+4アドレスステップによって帯域19を補正し、それによって1つの構成要素分BAP4を減少させる。すべての小数仮数グループが完全となった最終結果を表6に示す。BAP1は、24の帯域で完全に満たされ(24 mod 3=0)、BAP2は、3つの帯域で完全に満たされ(3 mod 3=0)、BAP4は空である。
Figure 0005331008
いくつかの実施形態において、バックトラッキングアルゴリズムは、ソースフレームの特定のSNR変数に対する解を時々見つけることができない。従って、特定のSNR変数は、ターゲットフレームにおいて使用される音声フレームマージャに対して使用可能でないことになる。いくつかの実施形態において、音声フレームマージャが使用可能でないSNR変数を選択する場合、音声フレームマージャは、代わりに次に小さいSNR変数を選択し、わずかな質の低下はあるものの、継続的な音声再生を可能とする。
本発明の具体的な実施形態についての先の記述は、例示および説明のために提示されるものである。それらは、包括的なもの、または開示された厳密な形式に本発明を限定するものではない。むしろ当然のことながら、上記の教示に鑑みて多くの変更および変形が可能である。これらの実施形態は、本発明の原理およびその実際的な用途を最も良く説明するために選択され、説明されたものであり、それによって、企図される特定の使用に適するように、他の当業者が本発明およびさまざまな変更を伴うさまざまな実施形態を最良に利用することが可能になる。

Claims (28)

  1. 音声データをターゲットチャネルに割り当てる方法であって、
    複数の独立音声信号を表現するデータであって、音声データの各ソースフレームシーケンスを含む各音声信号を表現するデータにアクセスすることと、
    前記ソースフレームシーケンスをターゲットフレームシーケンスにマージすることと、
    を含み、
    前記各ソースフレームシーケンスの各ソースフレームは、前記ソースフレームの前記音声データの複数のコピーを含み、前記ソースフレームの前記音声データの各コピーは、関連品質レベルを有し、各コピーの前記品質レベルは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素であり、
    前記ターゲットフレームは、前記ターゲットフレーム内に複数のターゲットチャネルを含み、前記マージすることは、各ターゲットフレームおよび複数の対応ソースフレームに対して、品質レベルを選択し、かつ前記選択された品質レベルにおける前記複数の対応ソースフレームの前記音声データの前記コピーの各々を、前記各ターゲットフレーム内の別個のターゲットチャネルの各々に割り当てることを含む、方法。
  2. 前記ソースフレームの前記音声データの前記複数のコピーにおける、前記ソースフレームの前記音声データの各コピーは、1つ以上の小数仮数グループを含み、
    小数仮数グループは、各仮数がビットの非整数に対応するサイズを個別に有する、仮数のグループであり、
    前記1つ以上の小数仮数グループにおける各小数仮数グループは、前記小数仮数グループ全体がビットの整数に対応するサイズを有するような数の仮数を含む場合に満たされ、当該仮数は、各々がビットの非整数を持つ、請求項1に記載の方法。
  3. 前記アクセスされたソースフレームシーケンスのうちの第1シーケンスは、非サイレント音声データの連続ソースを含み、前記アクセスされたソースフレームシーケンスのうちの第2シーケンスは、サイレンスを表現する音声データのシーケンスを含む非サイレント音声データのエピソードソースを含む、請求項1に記載の方法。
  4. 前記アクセスされたソースフレームシーケンスのうちの第1シーケンスは、サイレンスを表現する音声データのシーケンスを含む非サイレント音声データの第1エピソードソースを含み、前記アクセスされたソースフレームシーケンスのうちの第2シーケンスは、サイレンスを表現する音声データのシーケンスを含む非サイレント音声データの第2エピソードソースを含む、請求項1に記載の方法。
  5. 前記アクセスされたソースフレームシーケンスのうちの第1シーケンスは、非サイレント音声データの第1連続ソースを含み、前記アクセスされたソースフレームシーケンスのうちの第2シーケンスは、非サイレント音声データの第2連続ソースを含む、請求項1に記載の方法。
  6. 音声データをターゲットチャネルに割り当てる方法であって、
    複数の独立ソースから音声データを受信することと、
    各独立ソースからの前記音声データを各ソースフレームシーケンスに符号化して、複数の、音声データのソースフレームシーケンスを作成することと、
    前記複数のソースフレームシーケンスをターゲットフレームシーケンスにマージすることと、
    を含み、
    各ソースフレームシーケンスの各ソースフレームは、前記ソースフレームの前記音声データの複数のコピーを含み、前記ソースフレームの前記音声データの各コピーは、別個の関連品質レベルを有し、各コピーの前記品質レベルは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素であり、
    前記ターゲットフレームは、前記ターゲットフレーム内に複数の独立ターゲットチャネルを含み、各ソースフレームシーケンスは、前記ターゲットフレーム内の前記複数の独立ターゲットチャネルのうちの1つ以上のターゲットチャネルに一意的に割り当てられる、方法。
  7. 指令を受信することと、
    前記ターゲットフレームシーケンスを伝送することと、をさらに含む、請求項6に記載の方法。
  8. 各独立ソースからの前記音声データは、パルス符号変調ビットストリームである、請求項6に記載の方法。
  9. 前記パルス符号変調ビットストリームは、WAV、W64、AU、またはAIFFファイルである、請求項8に記載の方法。
  10. 前記音声データを符号化することは、
    各ソースフレームシーケンスのフレームに対して、前記フレームの複数のコピーを生成し、各コピーは、関連品質レベルを有し、各コピーの前記品質レベルは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である、請求項6に記載の方法。
  11. 前記音声データを符号化することは、
    各コピーに関して、ビット割付けプロセスを実行することと、
    前記ビット割付けプロセスが1つ以上の不完全な小数仮数グループを生成する場合、前記ビット割付けプロセスの結果を修正して、各不完全な小数仮数グループを満たすまたは空にすることと、をさらに含み、小数仮数グループは、各仮数がビットの非整数に対応するサイズを個別に有する、仮数のグループである、請求項10に記載の方法。
  12. 前記ビット割付けプロセスの結果は、デルタビット割付けを実行することによって修正される、請求項11に記載の方法。
  13. 前記実行されたデルタビット割付けは、バックトラッキングアルゴリズムによって決定される、請求項12に記載の方法。
  14. 各コピーに関して、各不完全な小数仮数グループを満たすまたは空にすることができない場合、前記各コピーは前記フレームに含まれない、請求項11に記載の方法。
  15. 前記関連品質レベルは、指定の信号対雑音比に対応する、請求項10に記載の方法。
  16. 前記複数のソースフレームシーケンスを前記ターゲットフレームシーケンスにマージすることは、
    ソースフレームに対する信号対雑音比を選択することと、
    前記選択された信号対雑音比を有する前記コピーを前記ターゲットフレームシーケンスのターゲットフレームにマージすることと、を含む、請求項11に記載の方法。
  17. 前記信号対雑音比は、前記ターゲットフレームシーケンスに対する定ビットレートを維持するように選択される、請求項16に記載の方法。
  18. 前記ターゲットフレームは、AC−3形式である、請求項6に記載の方法。
  19. 音声データをターゲットチャネルに割り当てるシステムであって、
    格納されたプログラムを実行する1以上のプロセッサと、
    前記1以上のプロセッサによる実行のための1以上のプログラムを格納するメモリと、
    を含み、
    前記1つ以上のプログラムは、
    複数の独立音声信号を表現するデータであって、音声データの各ソースフレームシーケンスを含む各音声信号を表現するデータにアクセスするための命令であって、前記各ソースフレームシーケンスの各ソースフレームは、前記ソースフレームの前記音声データの複数のコピーを含み、前記ソースフレームの前記音声データの各コピーは、関連品質レベルを有し、各コピーの前記品質レベルは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である、命令と、
    前記ソースフレームシーケンスをターゲットフレームシーケンスにマージするための命令であって、前記ターゲットフレームは、前記ターゲットフレーム内に複数のターゲットチャネルを含む、命令であって、前記マージするための命令は、各ターゲットフレームに対して品質レベルを選択する命令を含み、前記ターゲットフレームは複数の対応ソースフレームを有する、命令と、
    前記選択された品質レベルにおける前記複数の対応ソースフレームの前記音声データの前記コピーの各々を、各ターゲットフレーム内の別個のターゲットチャネルの各々に割り当てるための命令と、
    を含む、システム。
  20. 前記ソースフレームの前記音声データの前記複数のコピーにおける、前記ソースフレームの前記音声データの各コピーは、1つ以上の小数仮数グループを含み、
    小数仮数グループは、各仮数がビットの非整数に対応するサイズを個別に有する、仮数のグループであり、
    前記1つ以上の小数仮数グループにおける各小数仮数グループは、前記小数仮数グループ全体がビットの整数に対応するサイズを有するような数の仮数を含む場合に満たされ、当該仮数は、各々がビットの非整数を持つ、請求項19に記載のシステム。
  21. 前記アクセスされたソースフレームシーケンスのうちの第1シーケンスは、非サイレント音声データの連続ソースを含み、前記アクセスされたソースフレームシーケンスのうちの第2シーケンスは、サイレンスを表現する音声データのシーケンスを含む非サイレント音声データのエピソードソースを含む、請求項19に記載のシステム。
  22. 前記アクセスされたソースフレームシーケンスのうちの第1シーケンスは、サイレンスを表現する音声データのシーケンスを含む非サイレント音声データの第1エピソードソースを含み、前記アクセスされたソースフレームシーケンスのうちの第2シーケンスは、サイレンスを表現する音声データのシーケンスを含む非サイレント音声データの第2エピソードソースを含む、請求項19に記載のシステム。
  23. 前記アクセスされたソースフレームシーケンスのうちの第1シーケンスは、非サイレント音声データの第1連続ソースを含み、前記アクセスされたソースフレームシーケンスのうちの第2シーケンスは、非サイレント音声データの第2連続ソースを含む、請求項19に記載のシステム。
  24. 音声データをターゲットチャネルに割り当てるシステムであって、
    格納されたプログラムを実行する1以上のプロセッサと、
    前記1以上のプロセッサによる実行のための1以上のプログラムを格納するメモリと、
    を含み、
    前記1以上のプログラムは、
    複数の独立ソースから音声データを受信するための命令と、
    各独立ソースからの前記音声データを各ソースフレームシーケンスに符号化して、複数の、音声データのソースフレームのシーケンスを作成するための命令であって、各ソースフレームシーケンスの各ソースフレームは、前記ソースフレームの前記音声データの複数のコピーを含み、前記ソースフレームの前記音声データの各コピーは、別個の関連品質レベルを有し、各コピーの前記品質レベルは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である、命令と、
    前記複数のソースフレームのシーケンスをターゲットフレームのシーケンスにマージするための命令であって、前記ターゲットフレームは、前記ターゲットフレーム内に複数の独立ターゲットチャネルを含み、各ソースフレームシーケンスは、前記ターゲットフレーム内の前記複数の独立ターゲットチャネルのうちの1つ以上のターゲットチャネルに一意的に割り当てられる、命令と、
    を含む、システム。
  25. 各独立ソースからの前記音声データは、パルス符号変調ビットストリームである、請求項24に記載のシステム。
  26. 前記パルス符号変調ビットストリームは、WAV、W64、AU、またはAIFFファイルである、請求項25に記載のシステム
  27. 前記音声データを符号化するための命令は、
    各ソースフレームシーケンスのフレームに対して、前記フレームの複数のコピーを生成するための命令を含み、各コピーは、関連品質レベルを有し、各コピーの前記品質レベルは、最高品質レベルから最低品質レベルに及ぶ所定の品質レベル範囲の構成要素である、請求項24に記載のシステム
  28. 前記音声データを符号化するための命令は、
    各コピーに関して、ビット割付けプロセスを実行するための命令と、
    前記ビット割付けプロセスが1つ以上の不完全な小数仮数グループを生成する場合、前記ビット割付けプロセスの結果を修正して、各不完全な小数仮数グループを満たすまたは空にするための命令と、をさらに含み、小数仮数グループは、各仮数がビットの非整数に対応するサイズを個別に有する、仮数のグループである、請求項27に記載のシステム
JP2009544985A 2007-01-05 2008-01-04 デジタル音声ミキシング Expired - Fee Related JP5331008B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/620,593 US8270439B2 (en) 2005-07-08 2007-01-05 Video game system using pre-encoded digital audio mixing
US11/620,593 2007-01-05
PCT/US2008/050221 WO2008086170A1 (en) 2007-01-05 2008-01-04 Digital audio mixing

Publications (3)

Publication Number Publication Date
JP2010515938A JP2010515938A (ja) 2010-05-13
JP2010515938A5 JP2010515938A5 (ja) 2011-02-24
JP5331008B2 true JP5331008B2 (ja) 2013-10-30

Family

ID=39430693

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009544985A Expired - Fee Related JP5331008B2 (ja) 2007-01-05 2008-01-04 デジタル音声ミキシング

Country Status (8)

Country Link
US (1) US8270439B2 (ja)
EP (1) EP2100296B1 (ja)
JP (1) JP5331008B2 (ja)
CN (1) CN101627424B (ja)
AT (1) ATE472152T1 (ja)
DE (1) DE602008001596D1 (ja)
HK (1) HK1134855A1 (ja)
WO (1) WO2008086170A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US10200744B2 (en) 2013-06-06 2019-02-05 Activevideo Networks, Inc. Overlay rendering of user interface onto source video
US10275128B2 (en) 2013-03-15 2019-04-30 Activevideo Networks, Inc. Multiple-mode system and method for providing user selectable video content
US10409445B2 (en) 2012-01-09 2019-09-10 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8074248B2 (en) 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
US8032672B2 (en) 2006-04-14 2011-10-04 Apple Inc. Increased speed of processing of audio samples received over a serial communications link by use of channel map and steering table
US9355681B2 (en) 2007-01-12 2016-05-31 Activevideo Networks, Inc. MPEG objects and systems and methods for using MPEG objects
JP4840666B2 (ja) * 2007-06-18 2011-12-21 ソニー株式会社 音声再生装置および音声再生方法
US8571879B2 (en) * 2008-01-21 2013-10-29 Panasonic Corporation Sound reproducing device adding audio data to decoded sound using processor selected based on trade-offs
KR101230481B1 (ko) 2008-03-10 2013-02-06 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 트랜지언트 이벤트를 갖는 오디오 신호를 조작하기 위한 장치 및 방법
US8588302B2 (en) * 2008-06-13 2013-11-19 Telefonaktiebolaget Lm Ericsson (Publ) Packet loss analysis
US8548067B2 (en) * 2010-01-29 2013-10-01 Goran Ivkovic Single sensor radio scene analysis for packet based radio signals using 2nd and 4th order statistics
JP2012049776A (ja) * 2010-08-26 2012-03-08 Fujitsu Ltd アンテナ装置、通信システム、基地局装置及び通信方法
AU2011315950B2 (en) 2010-10-14 2015-09-03 Activevideo Networks, Inc. Streaming digital video between video devices using a cable television system
EP2695388B1 (en) 2011-04-07 2017-06-07 ActiveVideo Networks, Inc. Reduction of latency in video distribution networks using adaptive bit rates
CN102572588A (zh) * 2011-12-14 2012-07-11 中兴通讯股份有限公司 一种实现机顶盒混音的方法及装置
US9800945B2 (en) 2012-04-03 2017-10-24 Activevideo Networks, Inc. Class-based intelligent multiplexing over unmanaged networks
US9123084B2 (en) 2012-04-12 2015-09-01 Activevideo Networks, Inc. Graphical application integration with MPEG objects
EP2901448A4 (en) * 2012-09-26 2016-03-30 Nokia Technologies Oy METHOD, APPARATUS AND COMPUTER PROGRAM PRODUCT FOR CREATING AUDIO COMPOSITION SIGNAL
US9219922B2 (en) 2013-06-06 2015-12-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9294785B2 (en) 2013-06-06 2016-03-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US20150025894A1 (en) * 2013-07-16 2015-01-22 Electronics And Telecommunications Research Institute Method for encoding and decoding of multi channel audio signal, encoder and decoder
RU2648632C2 (ru) * 2014-01-13 2018-03-26 Нокиа Текнолоджиз Ой Классификатор многоканального звукового сигнала
US9788029B2 (en) 2014-04-25 2017-10-10 Activevideo Networks, Inc. Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks
CN105280212A (zh) * 2014-07-25 2016-01-27 中兴通讯股份有限公司 混音播放方法及装置
JP6412259B2 (ja) 2014-10-03 2018-10-24 ドルビー・インターナショナル・アーベー パーソナル化されたオーディオへのスマート・アクセス
EP3035674B1 (en) 2014-12-19 2021-05-05 Unify Patente GmbH & Co. KG Distributed audio control method, device, system, and software product
CN104883644A (zh) * 2015-03-31 2015-09-02 联想(北京)有限公司 一种信息处理方法和电子设备
CN104936090B (zh) * 2015-05-04 2018-12-14 联想(北京)有限公司 一种音频数据的处理方法和音频处理器

Family Cites Families (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE35314E (en) 1986-05-20 1996-08-20 Atari Games Corporation Multi-player, multi-character cooperative play video game with independent player entry and departure
US5883661A (en) 1990-09-28 1999-03-16 Ictv, Inc. Output switching for load levelling across multiple service areas
ES2087522T3 (es) * 1991-01-08 1996-07-16 Dolby Lab Licensing Corp Descodificacion/codificacion para campos sonoros multidimensionales.
JPH05109196A (ja) * 1991-10-14 1993-04-30 Sony Corp 記録方法
US5596693A (en) 1992-11-02 1997-01-21 The 3Do Company Method for controlling a spryte rendering processor
US5632003A (en) * 1993-07-16 1997-05-20 Dolby Laboratories Licensing Corporation Computationally efficient adaptive bit allocation for coding method and apparatus
US5581653A (en) * 1993-08-31 1996-12-03 Dolby Laboratories Licensing Corporation Low bit-rate high-resolution spectral envelope coding for audio encoder and decoder
JP3404837B2 (ja) * 1993-12-07 2003-05-12 ソニー株式会社 多層符号化装置
JPH07202820A (ja) * 1993-12-28 1995-08-04 Matsushita Electric Ind Co Ltd ビットレート制御システム
JP3435674B2 (ja) * 1994-05-06 2003-08-11 日本電信電話株式会社 信号の符号化方法と復号方法及びそれを使った符号器及び復号器
US5570363A (en) * 1994-09-30 1996-10-29 Intel Corporation Transform based scalable audio compression algorithms and low cost audio multi-point conferencing systems
US5630757A (en) 1994-11-29 1997-05-20 Net Game Limited Real-time multi-user game communication system using existing cable television infrastructure
US5793980A (en) * 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system
US5999189A (en) 1995-08-04 1999-12-07 Microsoft Corporation Image compression to reduce pixel and texture memory requirements in a real-time image generator
US6084908A (en) 1995-10-25 2000-07-04 Sarnoff Corporation Apparatus and method for quadtree based variable block size motion estimation
US6192081B1 (en) 1995-10-26 2001-02-20 Sarnoff Corporation Apparatus and method for selecting a coding mode in a block-based coding system
IL117133A (en) * 1996-02-14 1999-07-14 Olivr Corp Ltd Method and system for providing on-line virtual reality movies
US5978756A (en) * 1996-03-28 1999-11-02 Intel Corporation Encoding audio signals using precomputed silence
CN1169322C (zh) 1996-06-17 2004-09-29 三星电子株式会社 在高清晰度电视中检测数据段同步信号的方法和电路
US5864820A (en) 1996-12-20 1999-01-26 U S West, Inc. Method, system and product for mixing of encoded audio signals
US5995146A (en) 1997-01-24 1999-11-30 Pathway, Inc. Multiple video screen display system
KR100261254B1 (ko) * 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 데이터 부호화/복호화방법 및 장치
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
US6236730B1 (en) 1997-05-19 2001-05-22 Qsound Labs, Inc. Full sound enhancement using multi-input sound signals
US5990912A (en) 1997-06-27 1999-11-23 S3 Incorporated Virtual address access to tiled surfaces
JP3103045B2 (ja) 1997-07-10 2000-10-23 三菱電機株式会社 画像撮影再生方式及び方法並びに画像再生プログラムを記録した記録媒体
KR100335609B1 (ko) * 1997-11-20 2002-10-04 삼성전자 주식회사 비트율조절이가능한오디오부호화/복호화방법및장치
US6205582B1 (en) 1997-12-09 2001-03-20 Ictv, Inc. Interactive cable television system with frame server
KR100281462B1 (ko) 1998-03-30 2001-02-01 전주범 격행 부호화에서 이진 형상 신호의 움직임 벡터 부호화 방법
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
US6078328A (en) 1998-06-08 2000-06-20 Digital Video Express, Lp Compressed video graphics system and methodology
US6130912A (en) 1998-06-09 2000-10-10 Sony Electronics, Inc. Hierarchical motion estimation process and system using block-matching and integral projection
US6226041B1 (en) 1998-07-28 2001-05-01 Sarnoff Corporation Logo insertion using only disposable frames
US6697869B1 (en) 1998-08-24 2004-02-24 Koninklijke Philips Electronics N.V. Emulation of streaming over the internet in a broadcast application
US7272556B1 (en) * 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US6253238B1 (en) 1998-12-02 2001-06-26 Ictv, Inc. Interactive cable television system with frame grabber
US6952221B1 (en) 1998-12-18 2005-10-04 Thomson Licensing S.A. System and method for real time video production and distribution
US6452612B1 (en) 1998-12-18 2002-09-17 Parkervision, Inc. Real time video production system and method
EP1014712A1 (en) 1998-12-21 2000-06-28 Deutsche Thomson-Brandt Gmbh Method and apparatus for providing OSD data for OSD display in a video signal having an encoded format
US6675387B1 (en) 1999-04-06 2004-01-06 Liberate Technologies System and methods for preparing multimedia data using digital video data compression
US6754271B1 (en) 1999-04-15 2004-06-22 Diva Systems Corporation Temporal slice persistence method and apparatus for delivery of interactive program guide
US6651252B1 (en) 1999-10-27 2003-11-18 Diva Systems Corporation Method and apparatus for transmitting video and graphics in a compressed form
US6687663B1 (en) 1999-06-25 2004-02-03 Lake Technology Limited Audio processing method and apparatus
US6560496B1 (en) 1999-06-30 2003-05-06 Hughes Electronics Corporation Method for altering AC-3 data streams using minimum computation
US6446037B1 (en) * 1999-08-09 2002-09-03 Dolby Laboratories Licensing Corporation Scalable coding method for high quality audio
JP2001094433A (ja) 1999-09-17 2001-04-06 Matsushita Electric Ind Co Ltd サブバンド符号化・復号方法
US6810528B1 (en) 1999-12-03 2004-10-26 Sony Computer Entertainment America Inc. System and method for providing an on-line gaming experience through a CATV broadband network
US6579184B1 (en) 1999-12-10 2003-06-17 Nokia Corporation Multi-player game system
US20020016161A1 (en) * 2000-02-10 2002-02-07 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for compression of speech encoded parameters
JP2002011243A (ja) 2000-04-27 2002-01-15 Sony Computer Entertainment Inc 記録媒体、プログラム、エンタテインメントシステムおよびエンタテインメント装置
US6614442B1 (en) 2000-06-26 2003-09-02 S3 Graphics Co., Ltd. Macroblock tiling format for motion compensation
US6757860B2 (en) * 2000-08-25 2004-06-29 Agere Systems Inc. Channel error protection implementable across network layers in a communication system
US6993075B2 (en) 2001-03-05 2006-01-31 Intervideo, Inc. Systems and methods for reducing error propagation in a video data stream
US6766407B1 (en) * 2001-03-27 2004-07-20 Microsoft Corporation Intelligent streaming framework
US6807528B1 (en) * 2001-05-08 2004-10-19 Dolby Laboratories Licensing Corporation Adding data to a compressed data frame
US6940904B2 (en) 2001-05-29 2005-09-06 Broadcom Corporation Artifact-free displaying of MPEG-2 video in the progressive-refresh mode
US20030189980A1 (en) 2001-07-02 2003-10-09 Moonlight Cordless Ltd. Method and apparatus for motion estimation between video frames
CN1297134C (zh) 2001-07-09 2007-01-24 三星电子株式会社 用于扫描搜索区内参考宏块窗口的运动估计装置和方法
GB0118872D0 (en) 2001-08-02 2001-09-26 Vis Itv Ltd Multiplayer computer game for interactive television
US9544523B2 (en) 2001-08-06 2017-01-10 Ati Technologies Ulc Wireless display apparatus and method
US20030038893A1 (en) * 2001-08-24 2003-02-27 Nokia Corporation Digital video receiver that generates background pictures and sounds for games
DE60208426T2 (de) 2001-11-02 2006-08-24 Matsushita Electric Industrial Co., Ltd., Kadoma Vorrichtung zur signalkodierung, signaldekodierung und system zum verteilen von audiodaten
GB0219509D0 (en) 2001-12-05 2002-10-02 Delamont Dean Improvements to interactive TV games system
US6747658B2 (en) 2001-12-31 2004-06-08 Intel Corporation Automatic memory management for zone rendering
US7742609B2 (en) 2002-04-08 2010-06-22 Gibson Guitar Corp. Live performance audio mixing system with simplified user interface
BR0304542A (pt) * 2002-04-22 2004-07-20 Koninkl Philips Electronics Nv Método e codificador para codificar um sinal de áudio de multicanal, aparelho para fornecer um sinal de áudio, sinal de áudio codificado, meio de armazenamento, e, método e decodificador para decodificar um sinal de áudio
US7038676B2 (en) 2002-06-11 2006-05-02 Sony Computer Entertainmant Inc. System and method for data compression
AU2003259338A1 (en) 2002-08-21 2004-03-11 Lime Studios Limited Improvements to interactive tv games system
US7424434B2 (en) * 2002-09-04 2008-09-09 Microsoft Corporation Unified lossy and lossless audio compression
JP3795856B2 (ja) 2002-12-09 2006-07-12 株式会社スクウェア・エニックス ビデオゲーム装置、ビデオゲームの進行制御方法、プログラム及び記録媒体
US7426539B2 (en) 2003-01-09 2008-09-16 Sony Computer Entertainment America Inc. Dynamic bandwidth control
JP4536325B2 (ja) 2003-02-04 2010-09-01 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
US7757261B2 (en) 2003-06-20 2010-07-13 N2 Broadband, Inc. Systems and methods for providing flexible provisioning architectures for a host in a cable system
US7383180B2 (en) * 2003-07-18 2008-06-03 Microsoft Corporation Constant bitrate media encoding techniques
SE0400998D0 (sv) * 2004-04-16 2004-04-16 Cooding Technologies Sweden Ab Method for representing multi-channel audio signals
EP1779297A4 (en) * 2004-07-02 2010-07-28 Nielsen Media Res Inc METHODS AND APPARATUS FOR MIXING COMPRESSED DIGITAL BINARY STREAMS
RU2007107348A (ru) 2004-08-31 2008-09-10 Мацусита Электрик Индастриал Ко., Лтд. (Jp) Устройство и способ генерирования стереосигнала
US20060230428A1 (en) 2005-04-11 2006-10-12 Rob Craig Multi-player video game system
US7751572B2 (en) 2005-04-15 2010-07-06 Dolby International Ab Adaptive residual audio coding
GB2426168B (en) 2005-05-09 2008-08-27 Sony Comp Entertainment Europe Audio processing
FR2891098B1 (fr) 2005-09-16 2008-02-08 Thales Sa Procede et dispositif de mixage de flux audio numerique dans le domaine compresse.
ES2601811T3 (es) * 2006-03-27 2017-02-16 Vidyo, Inc. Sistema y método del manejo de información de escalabilidad en sistemas de codificación de video escalables utilizando mensajes de control
KR20090110244A (ko) 2008-04-17 2009-10-21 삼성전자주식회사 오디오 시맨틱 정보를 이용한 오디오 신호의 부호화/복호화 방법 및 그 장치

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US10409445B2 (en) 2012-01-09 2019-09-10 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US10275128B2 (en) 2013-03-15 2019-04-30 Activevideo Networks, Inc. Multiple-mode system and method for providing user selectable video content
US11073969B2 (en) 2013-03-15 2021-07-27 Activevideo Networks, Inc. Multiple-mode system and method for providing user selectable video content
US10200744B2 (en) 2013-06-06 2019-02-05 Activevideo Networks, Inc. Overlay rendering of user interface onto source video

Also Published As

Publication number Publication date
HK1134855A1 (en) 2010-05-14
US8270439B2 (en) 2012-09-18
ATE472152T1 (de) 2010-07-15
EP2100296B1 (en) 2010-06-23
EP2100296A1 (en) 2009-09-16
JP2010515938A (ja) 2010-05-13
US20070105631A1 (en) 2007-05-10
CN101627424B (zh) 2012-03-28
WO2008086170A1 (en) 2008-07-17
CN101627424A (zh) 2010-01-13
DE602008001596D1 (de) 2010-08-05

Similar Documents

Publication Publication Date Title
JP5331008B2 (ja) デジタル音声ミキシング
US8194862B2 (en) Video game system with mixing of independent pre-encoded digital audio bitstreams
TWI443647B (zh) 用以將以物件為主之音訊信號編碼與解碼之方法與裝置
RU2431940C2 (ru) Аппаратура и метод многоканального параметрического преобразования
KR101227932B1 (ko) 다채널 멀티트랙 오디오 시스템 및 오디오 처리 방법
CA2614384C (en) Concept for bridging the gap between parametric multi-channel audio coding and matrixed-surround multi-channel coding
RU2526746C1 (ru) Микширование аудиопотока с нормализацией диалогового уровня
US7937272B2 (en) Scalable encoding/decoding of audio signals
CN110890101B (zh) 用于基于语音增强元数据进行解码的方法和设备
US20170098452A1 (en) Method and system for audio processing of dialog, music, effect and height objects
TWI505262B (zh) 具多重子流之多通道音頻信號的有效編碼與解碼
MX2008012315A (es) Metodos y aparatos para codificar y descodificar señales de audio basados en objeto.
CN101479787A (zh) 用于编码和解码基于对象的音频信号的方法和装置
US20230370803A1 (en) Spatial Audio Augmentation
JP2023166543A (ja) 伝送に関知しない呈示ベースのプログラム・ラウドネス
US9373335B2 (en) Processing audio objects in principal and supplementary encoded audio signals
CN106463126B (zh) 基于对象的音频系统中的残差编码
Riedmiller et al. Delivering scalable audio experiences using AC-4
US20210084426A1 (en) Method and device for processing audio signal, using metadata
US11682406B2 (en) Level-of-detail audio codec
WO2023286698A1 (ja) 符号化装置および方法、復号装置および方法、並びにプログラム
CN117651995A (zh) 编码装置及方法、解码装置及方法、以及程序

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101228

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130527

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: 20130628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130726

R150 Certificate of patent or registration of utility model

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

LAPS Cancellation because of no payment of annual fees