CN101627424B - 数字音频混合 - Google Patents
数字音频混合 Download PDFInfo
- Publication number
- CN101627424B CN101627424B CN2008800013254A CN200880001325A CN101627424B CN 101627424 B CN101627424 B CN 101627424B CN 2008800013254 A CN2008800013254 A CN 2008800013254A CN 200880001325 A CN200880001325 A CN 200880001325A CN 101627424 B CN101627424 B CN 101627424B
- Authority
- CN
- China
- Prior art keywords
- frame
- sequence
- source
- voice data
- audio
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 71
- 230000005236 sound signal Effects 0.000 claims abstract description 40
- 230000008569 process Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 29
- 238000012937 correction Methods 0.000 description 21
- 238000004590 computer program Methods 0.000 description 16
- 230000006854 communication Effects 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 14
- 101710199430 TATA-box-binding protein 2 Proteins 0.000 description 12
- 238000003860 storage Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 11
- 230000004044 response Effects 0.000 description 10
- 101710199392 TATA-box-binding protein 1 Proteins 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000011002 quantification Methods 0.000 description 9
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 230000009471 action Effects 0.000 description 7
- 230000000873 masking effect Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000009826 distribution Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 101710199394 TATA-box-binding protein 3 Proteins 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 210000003205 muscle Anatomy 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- GUGNSJAORJLKGP-UHFFFAOYSA-K sodium 8-methoxypyrene-1,3,6-trisulfonate Chemical compound [Na+].[Na+].[Na+].C1=C2C(OC)=CC(S([O-])(=O)=O)=C(C=C3)C2=C2C3=C(S([O-])(=O)=O)C=C(S([O-])(=O)=O)C2=C1 GUGNSJAORJLKGP-UHFFFAOYSA-K 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 102100026346 Brain-specific angiogenesis inhibitor 1-associated protein 2 Human genes 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 102100037964 E3 ubiquitin-protein ligase RING2 Human genes 0.000 description 1
- 101000766212 Homo sapiens Brain-specific angiogenesis inhibitor 1-associated protein 2 Proteins 0.000 description 1
- 101001095815 Homo sapiens E3 ubiquitin-protein ligase RING2 Proteins 0.000 description 1
- 101001057193 Homo sapiens Membrane-associated guanylate kinase, WW and PDZ domain-containing protein 1 Proteins 0.000 description 1
- 101000740048 Homo sapiens Ubiquitin carboxyl-terminal hydrolase BAP1 Proteins 0.000 description 1
- 101000740049 Latilactobacillus curvatus Bioactive peptide 1 Proteins 0.000 description 1
- 101000874268 Latilactobacillus curvatus Bioactive peptide 2 Proteins 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001667 episodic effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000009958 sewing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/32—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S3/00—Systems employing more than two channels, e.g. quadraphonic
- H04S3/008—Systems 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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/032—Quantisation or dequantisation of spectral components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/03—Application 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)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (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)
- Table Equipment (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
公开了一种对音频进行编码的方法和相关***。在该方法中,访问代表多个独立音频信号的数据。代表每个相应音频信号的数据包括源帧的序列。源帧的序列中的每个帧包括多个音频数据副本。每个音频数据副本具有相关联的质量水平,该相关联的质量水平是从最高质量水平到最低质量水平之间变化的预定质量水平范围中的一个。多个源帧序列合并至目标帧的序列,目标帧包括多个目标声道。将对应的源帧合并至相应目标帧包括选择质量水平并将每个对应源帧的所述选择的质量水平处的所述音频数据副本指派至至少一个相应的目标声道。
Description
技术领域
本发明总体上涉及交互式视频游戏***,并且更具体地涉及这样的交互式视频游戏***:其使用在执行视频游戏之前编码的数字音频信号的混合。
背景技术
视频游戏是流行的娱乐形式。多玩家游戏(其中,两个或更多个人同时在公共仿真环境中同时玩游戏)变得越来越常见,尤其随着更多的用户能够使用诸如万维网(WWW)(也称为互联网)的网络彼此交互。单玩家游戏也可以在网络化的环境中实现。在网络化的环境中实现视频游戏给音频播放带来了挑战。
在实现于网络化环境中的某些视频游戏中,通过临时替换背景音,可以实现瞬时音效。诸如音乐之类的背景音可以在扩展时段内的多个视频帧期间存在。在比背景音短的时段内,可以在视频的一个或多个帧期间存在瞬时音效。通过称为音频缝合(audio stitching)的过程,当瞬时音效可用时,不播放背景音。通常,音频缝合是生成之前被进行了离线编码的音频帧序列的过程。音频缝合生成的音频帧序列并不必须形成相同内容的连续流。例如,包含背景音的帧后面可以紧跟包含音效的帧。为了对从瞬时音效回到背景音的过渡进行平滑,背景音可以被削弱,而在过渡期间的若干帧内缓慢增大音量。然而,用户仍会注意到背景音的中断。
因此,期望允许同时播放音效和背景音,使得在不中断背景音的情况下播放音效。音效和背景音可能对应于多个脉冲编码调制(PCM)比特流。在标准音频处理***中,可以将多个PCM比特流混合在一起,并随后以诸如AC-3格式的格式对其进行实时编码。然而,当在网络化环境中实现多个视频游戏时,在计算功率上的限制可能令此方法难以实现。
因此,需要这样的***和方法,其能够将来自于多个源的音频数据合并,而无须执行PCM比特流的实时混合以及无需将所得到的比特流实时编码成压缩音频。
发明内容
公开了一种对音频进行编码的方法。在该方法中,访问代表多个独立音频信号的数据。代表每个相应音频信号的数据包括源帧的序列。源帧的序列中的每个帧包括多个音频数据副本。每个音频数据副本具有相关联的质量水平,该相关联的质量水平是在最高质量水平与最低质量水平之间变化的预定质量水平范围中的一个。多个源帧序列合并至目标帧的序列,目标帧包括多个目标声道。将对应的源帧合并至相应目标帧包括:选择质量水平,并将每个对应源帧的所选择的质量水平处的音频数据副本指派至至少一个相应的目标声道。
公开了一种用于对音频进行编码的方法的另一方面。在该方法中,从多个相应独立源接收音频数据。来自于每个相应独立源的音频数据被编码成源帧的序列,以产生多个源帧序列。该多个源帧序列被合并至目标帧序列,该目标帧包括多个独立目标声道。每个源帧序列唯一地被指派至一个或多个目标声道。
公开了一种结合扬声器***对音频进行播放的方法。在该方法中,响应于命令,接收包括帧的序列的音频数据,所述帧包含多个声道,其中每个声道:或者(A)单独对应于独立的音频源,或者(B)单独对应于独立音频源中的唯一声道。如果扬声器的数量少于所述声道的数量,则对两个或更多声道进行下混频(down-mix),并在单个扬声器上播放与它们相关联的音频数据。如果扬声器的数量等于或大于所述声道的数量,则在对应的扬声器上播放与每个声道相关联的音频数据。
公开了一种用于对音频进行编码的***,包括:存储器;一个或多个处理器;和存储在存储器中并配置用于由一个或多个处理器执行的一个或多个程序。一个或多个程序包括用于访问代表多个独立音频信号的数据的指令。代表每个相应音频信号的数据包括源帧的序列。源帧的序列中的每个帧包括多个音频数据副本。每个音频数据副本具有相关联的质量水平,该相关联的质量水平是在最高质量水平与最低质量水平之间变化的预定质量水平范围中的一个。该一个或多个程序还包括用于将多个源帧序列合并至目标帧的序列的指令,其中所述目标帧包括多个目标声道。所述用于合并的指令包括:针对相应目标帧和对应的源帧,用于选择质量水平的指令,和用于将每个对应源帧的所选择的质量水平处的音频数据副本指派至至少一个相应的目标声道的指令。
公开了用于对音频进行编码的***的另一方面,包括存储器;一个或多个处理器;和存储在存储器中并被配置用于由一个或多个处理器执行的一个或多个程序。所述一个或多个程序包括:用于从多个相应独立源接收音频数据的指令,和用于将来自于每个相应独立源的音频数据编码成源帧的序列以便产生多个源帧序列的指令。所述一个或多个程序还包括用于将所述多个源帧序列合并至目标帧的序列的指令,其中所述目标帧包括多个独立目标声道,并且每个源帧序列被唯一地指派至一个或多个目标声道。
公开了一种用于结合扬声器***对音频进行播放的***,包括:存储器;一个或多个处理器;和存储在存储器中并被配置用于由一个或多个处理器执行的一个或多个程序。所述一个或多个程序包括:用于响应于命令接收包括帧的序列的音频数据的指令,所述帧包含多个声道,其中所述多个声道中的每个声道:或者(A)单独对应于独立的音频源,或者(B)单独对应于独立音频源中的唯一声道。一个或多个程序还包括用于如果扬声器的数量少于所述声道的数量,则对两个或更多声道进行下混频,并在单个扬声器上播放与两个或更多下混频声道相关联的所述音频数据的指令。所述一个或多个程序还包括:用于如果扬声器的数量等于或大于声道的数量,则在对应的扬声器上播放与每个声道相关联的所述音频数据的指令。
公开了一种用于结合音频编码使用的计算机程序产品。计算机程序产品包括计算机可读存储介质和嵌入其中的计算机程序机制。所述计算机程序机制包括用于访问代表多个独立音频信号的数据的指令。代表每个相应音频信号的数据包括源帧的序列。源帧的序列中的每个帧包括多个音频数据副本。每个音频数据副本具有相关联的质量水平,该相关联的质量水平是在最高质量水平与最低质量水平之间变化的预定质量水平范围中的一个。所述计算机程序机制还包括用于将多个源帧序列合并至目标帧的序列的指令,其中目标帧包括多个目标声道。所述用于合并的指令包括:针对相应目标帧和对应的源帧,用于选择质量水平的指令和用于将每个对应源帧的所选择的质量水平处的音频数据副本指派至至少一个相应的目标声道的指令。
公开了一种用于结合音频编码使用的计算机程序产品的另一方面。计算机程序产品包括计算机可读存储介质和嵌入其中的计算机程序机制。所述计算机程序机制包括用于从多个相应独立源接收音频数据的指令;和用于将来自于每个相应独立源的音频数据编码成源帧的序列以便产生多个源帧序列的指令。所述计算机程序机制还包括:用于将多个源帧序列合并至目标帧的序列的指令,其中所述目标帧包括多个独立目标声道,并且每个源帧序列被唯一地指派至一个或多个目标声道。
公开了一种用于结合在扬声器***上对音频进行播放使用的计算机程序产品。所述计算机程序产品包括计算机可读存储介质和嵌入其中的计算机程序机制。所述计算机程序机制包括用于响应于命令,接收包括帧的序列的音频数据的指令,所述帧的序列包含多个声道,其中多个声道中的每个声道:或者(A)单独对应于独立的音频源,或者(B)单独对应于独立音频源中的唯一声道。所述计算机程序机制还包括:用于如果扬声器的数量少于所述声道的数量,则对两个或更多声道进行下混频,并在单个扬声器上播放与两个或更多下混频声道相关联的音频数据的指令。所述计算机程序机制还包括用于如果扬声器的数量等于或大于所述声道的数量,则在对应的扬声器上播放与每个声道相关联的音频数据的指令。
公开了一种用于对音频进行编码的***。该***包括用于访问代表多个独立音频信号的数据的装置。代表每个相应音频信号的数据包括源帧的序列。源帧的序列中的每个帧包括多个音频数据副本。每个音频数据副本具有相关联的质量水平,该相关联的质量水平是在最高质量水平与最低质量水平之间变化的、预定质量水平范围中的一个。该***还包括用于将多个源帧序列合并至目标帧的序列的装置,其中目标帧包括多个目标声道。所述用于合并的装置包括针对相应目标帧和对应的源帧,用于选择质量水平的装置和用于将每个对应源帧的所选择的质量水平处的音频数据副本指派至至少一个相应的目标声道的装置。
公开了一种用于对音频进行编码的***的另一方面。该***包括用于从多个相应独立源接收音频数据的装置;和用于将来自每个相应独立源的音频数据编码成源帧的序列以便产生多个源帧序列的装置。该***还包括用于将多个源帧序列合并至目标帧的序列的装置,其中目标帧包括多个独立目标声道,并且每个源帧序列被唯一地指派至一个或多个目标声道。
公开了一种用于结合扬声器***对音频进行播放的***。该***包括用于响应于命令接收包括帧的序列的音频数据的装置,所述帧包含多个声道,其中每个声道:或者(A)单独对应于独立的音频源,或者(B)单独对应于独立音频源中的唯一声道。该***还包括用于如果扬声器的数量少于声道的数量,则对两个或更多声道进行下混频,并在单个扬声器上播放与两个或更多下混频声道相关联的音频数据的装置。该***还包括用于如果扬声器的数量等于或大于所述声道的数量,则在对应的扬声器上播放与每个声道相关联的音频数据的装置。
附图说明
为了更好地理解本发明,应当参考结合附图的下述具体描述,其中:
图1是示出了有线电视***的一个实施方式的框图。
图2是示出了视频游戏***的一个实施方式的框图。
图3是示出了机顶盒的一个实施方式的框图。
图4是示出了根据某些实施方式的用于对音频进行编码的过程的流程图。
图5是示出了根据某些实施方式的用于对音频进行编码的过程的流程图。
图6是示出了根据某些实施方式的用于对音频进行编码和传输的过程的流程图。
图7是示出了根据某些实施方式的用于对音频进行编码的过程的框图。
图8是根据某些实施方式的音频帧设置的框图。
图9是示出了根据某些实施方式的用于对音频进行编码、传输和播放的***的框图。
图10A-图10C是示出了根据某些实施方式的源帧的目标帧声道指派的框图。
图11A和图11B是示出了根据某些实施方式的AC-3帧的数据结构的框图。
图12是示出了根据某些实施方式的用于将多个源帧的SNR变体合并至目标帧的合并器的框图。
图13是示出了根据某些实施方式的用于对目标帧序列进行接收、解码和播放的过程的流程图。
图14A-图14C是示出了根据某些实施方式的声道指派和下混频的框图。
图15A-图15E示出了根据某些实施方式的比特分配指针表格。类似的附图标记在附图中表示相应的部分。
具体实施方式
现在详细参考实施方式,实施方式的示例在附图中示出。在以下详细描述中,为了提供对本发明的透彻理解,给出了许多特定细节。然而,对本领域技术人员来说明显的是,本发明可以在没有这些特定细节时实施。在其他实例中,并未详细描述公知的方法、过程、组件和电路,以免非必要地模糊实施方式的方面。
图1是示出了有线电视***100的一个实施方式的框图,该有线电视***100用于接收对诸如一个或多个视频游戏的内容的预订,以及将其提供给一个或多个用户(包括多用户视频游戏)。若干内容数据流可以被传输至相应订户,并且相应订户接着可以预订服务或者在视频游戏中传输用户动作。诸如模拟电视信号的卫星信号可以使用卫星天线144接收。模拟信号可以在模拟数据转发器146中进行处理、被耦合至射频(RF)组合器134以及通过网络136传输至机顶盒(STB)140。另外,信号可以在卫星接收机148中进行处理、被耦合至多路复用器(MUX)150、使用正交幅度调制器(QAM)132-2(诸如,256级QAM)转换成数字格式、耦合至射频(RF)组合器134以及通过网络136传输至STB 140。视频点播(VOD)服务器118可以将对应于预订的电影的信号提供至交换机126-2,该交换机126-2将信号耦合至QAM 132-1以便转换成数字格式。这些数字信号被耦合至射频(RF)组合器134以及通过网络136传输至STB140。
STB 140可以在电视或其他显示设备138上显示一个或多个视频信号,包括与下述视频游戏内容对应的那些视频信号;以及可以在扬声器139上播放一个或多个音频信号,包括与下述视频游戏内容对应的那些音频信号。扬声器139可以集成到电视138中,或者可以与电视138分离。尽管图1示出了一个订户STB 140、电视或其他显示设备138和扬声器139,但是在其他实施方式中可以存在附加的订户,每一个具有一个或多个STB、电视或其他显示设备和/或扬声器。
有线电视***100还可以包括应用服务器114和多个游戏服务器116。应用服务器114和多个游戏服务器116可以位于有线电视***数据转发器(headend)处。尽管在图1中示出了应用服务器114以及多个游戏服务器116的单个实例或组,但是其他实施方式可以在一个或多个数据转发器中包括附加的实例。一个或多个数据转发器处的服务器和/或其他计算机可以运行在诸如Windows、Linux、Unix或Solaris的操作***上。
应用服务器114和一个或多个游戏服务器116可以提供与一个或多个用户所预订的一个或多个视频游戏相对应的视频游戏内容。在有线电视***100中,在相应用户和视频游戏的一个的执行副本之间可以存在多对一的对应。应用服务器114可以访问数据库中有关游戏的信息和/或将该信息作为日志记录在数据库中。应用服务器114还可以用于报告和定价。游戏服务器116中一个或多个游戏引擎(也称为游戏引擎模块)被设计用于使用预编码的视频和/或音频数据来动态生成视频游戏内容。在示例性实施方式中,游戏服务器116使用与MPEG压缩标准兼容的视频编码,并使用与AC-3压缩标准兼容的音频编码。
视频游戏内容耦合至交换机126-2,并在QAM 132-1中被转换成数字格式。在具有256-级QAM的示例性实施方式中,可以使用窄播(narrowcast)子信道(具有的带宽约为6MHz,其对应于约38Mbps的数字数据)来传输10-30个视频游戏数据流,这些数据流用于利用1-4Mbps之间的视频游戏。
这些数字信号耦合至射频(RF)组合器134并通过网络136被传输至STB 140。应用服务器114还可以通过互联网110访问存储在多玩家服务器112中的数据库中的永久玩家数据或用户数据。应用服务器114和多个游戏服务器116将参照图2做出进一步描述。
STB 140可以可选地包括客户端应用,诸如游戏142,其接收与一个或多个用户动作对应的信息,并将该信息传输至一个或多个游戏服务器116。游戏应用142还可以在更新电视138上的视频帧以及在扬声器139上播放伴随的音频帧之前,存储视频游戏内容。电视138可以符合NTSC格式或者不同格式,诸如PAL或SECAM。以下参考图3来进一步描述STB 140。
有线电视***100还可以包括STB控制120、操作支持***122和计费***124。STB控制120可以处理一个或多个用户动作(诸如与相应视频游戏相关联的那些),它们是使用返回脉冲幅度(PAM)解调器130和交换机126-1、利用带外(OOB)子信道接收的。可以存在多于一个的OOB子信道。尽管OOB子信道的带宽可以因实施方式而变化,但是在一个实施方式中,每个OOB子信道的带宽对应于约为1Mbps的比特速率或数据速率。操作支持***122可以处理针对相应服务(诸如相应视频游戏)的订户预订,并其更新计费***124。STB控制120、操作支持***122和/或计费***124还可以使用OOB子信道、通过交换机126-1和OOB模块128来与订户通信,其中OOB模块128将信号转换成适合于OOB子信道的格式。备选地,操作支持***122和/或计费***124可以通过诸如互联网连接的另一通信链路或电话***提供的通信链路与订户通信。
在有线电视***100中传输和接收的各种信号可以使用基于分组的数据流来传送。在示例性实施方式中,某些分组可以利用诸如用户数据报协议(UDP)的互联网协议。在某些实施方式中,诸如网络136的网络和有线电视***100中的组件之间的耦合可以包括无线局域网、局域网、传输线(诸如同轴电缆)、陆线和/或光纤之类的一个或多个实例。某些信号可以使用普通老式电话服务(POTS)和/或诸如综合业务数字网络(ISDN)的数字电话网来传送。无线通信可以包括蜂窝电话网络,其使用高级移动电话***(AMPS)、全球移动通信***(GSM)、码分多址(CDMA)和/或时分多址(TDMA),和使用IEEE 802.11通信协议(也称为WiFi)和/或蓝牙通信协议的网络。
尽管图1示出了有线电视***,但是所描述的***和方法可以实现在基于卫星的***、互联网、电话***和/或陆地电视广播***。有线电视***100可以包括附加的元件和/或移除一个或多个元件。另外,两个或更多元件可以合并成单个元件和/或一个或多个元件在有线电视***100中的位置可以改变。在某些实施方式中,例如应用服务器114及其功能可以与游戏服务器116合并,或者并入游戏服务器116。
图2是示出了视频游戏***200的一个实施方式的框图。视频游戏***200可以包括至少一个数据处理器、视频处理器和/或中央处理单元(CPU)210、一个或多个可选的用户接口214、用于与其他计算机、服务器和/或一个或多个STB(诸如图1中的STB 140)通信的通信接口或网络接口220、存储器222和一个或多个用于将这些组件彼此耦合的信号线212。至少一个数据处理器、视频处理器和/或中央处理单元(CPU)210可以被配置或者可配置,以用于多线程或并行处理。用户接口214可以具有一个或多个键盘216和/或显示器218。一个或多个信号线212可以构成一个或多个通信总线。
存储器222可以包括高速随机存取存储器和/或非易失性存储器,包括ROM、RAM、EPROM、EEPROM、一个或多个闪磁盘驱动器、一个或多个光盘驱动器和/或一个或多个磁盘存储设备。存储器222可以存储操作***224,诸如LINUX、UNIX、Windows,或者Solaris,其包括用于处理基本***服务和用于执行与硬件有关的任务的过程(或指令集)。存储器222还可以将通信过程(或者指令集)存储在网络通信模块226中。通信过程用于与一个或多个STB(诸如图1的STB 140)、视频游戏***200中的其他服务器和计算机通信。
存储器222还可以包括以下元素,或者这些元素的子集或超集,包括,应用服务器模块228(或者指令集)、游戏资产管理***模块230(或者指令集)、会话资源管理模块234(或者指令集)、玩家管理***模块236(或者指令集)、会话网关模块242(或者指令集)、多玩家服务器模块244(或者指令集)、一个或多个游戏服务器模块246(或者指令集)、音频信号预编码器264(或者指令集),和用于存储宏块和预编码音频信号的储存库256。游戏资产管理***模块230可以包括游戏数据库232,其包括预编码宏块、预编码音频信号,和对应于一个或多个视频游戏的可执行代码。玩家管理***模块236可以包括玩家信息数据库240,其包括这样的信息,诸如用户姓名、账户信息、事务信息、用于在用户的STB 140(图1)上定制视频游戏显示的偏好、玩过的视频游戏的高分、用于玩过的视频游戏的等级和其他技术级别信息,和/或为已经暂停并且稍后可能继续的视频游戏永久保存的游戏状态。游戏服务器模块246的每个实例可以包括一个或多个游戏引擎模块248。游戏引擎模块248可以包括对应于玩一个或多个视频游戏的一个或多个用户集合的游戏状态250、合成器模块252、一个或多个压缩引擎模块254,和音频帧合并器255。储存库256可以包括对应于一个或多个视频游戏的预编码音频信号257、对应于一个或多个视频游戏的预编码宏块258,和/或对应于一个或多个视频游戏的动态生成的或编码的宏块260。
游戏服务器模块246可以运行浏览器应用,诸如WindowsExplorer、Netscape Navigator或者来自Mozilla的FireFox,以执行对应于相应视频游戏的指令。然而,浏览器应用可以被配置为不在游戏服务器模块246中渲染视频游戏内容。由于游戏服务器不显示视频游戏内容,所以视频游戏内容的渲染可能不是必须的,并且避免这种渲染使得每个游戏服务器能够维护比其他方式可能维护的游戏状态更多的游戏状态。游戏服务器模块246可以由一个或多个处理器来执行。视频游戏可以由多个处理器并行执行。还可以在多线程操作***的并行线程中实现游戏。
尽管图2将视频游戏***200示出为许多离散项目,但是图2更多地意在描述可以出现在视频游戏***中各种特征的功能,而不是作为此处所描述实施方式的结构示意图。事实上,如本领域普通技术人员所理解的,视频游戏***200的功能可以分布在很多服务器或计算机上,服务器的各种组执行这些功能的特定子集。在图2中单独示出的项目可以组合,而某些项目可以分离。例如,图2中单独示出的某些项目可以实现在单个服务器上,而单个项目可以由一个或多个服务器实现。视频游戏***中实际的服务器数量和诸如游戏服务器模块246和游戏引擎模块248的特征如何在它们之间分配可以随实现而变化,并且可以部分地取决于***存储的信息量和/或在高峰使用期间和平均使用期间***必须处理的数据业务量。在某些实施方式中,音频信号预编码器264实现在与视频游戏***200分离的单独计算机***上,可以称为预编码***。
而且,存储器222中以上标识的每个元素可以存储在前述存储器设备的一个或多个中。以上标识的每个模块对应于指令集,该指令集用于执行上述功能。以上标识的模块或程序(即,指令集)不需要实现为单独的软件程序、过程或模块,并且由此在各种实施方式中,这些模块的各种子集可以被合并或重新布置。在某些实施方式中,存储器222可以存储以上标识的模块和数据结构的子集。存储器222还可以存储上述未提及的附加模块和数据结构。
图3是示出了诸如STB 140(图1)的机顶盒(STB)300的一个实施方式的框图。STB 300可以包括至少一个数据处理器、视频处理器和/或中央处理单元(CPU)310;用于与诸如视频游戏***200(图2)的其他计算机和/或服务器通信的通信接口或网络接口314;调谐器316;音频解码器318;耦合至扬声器322的音频驱动器320;视频解码器324;和耦合至显示器328的视频驱动器326。STB 300还可以包括一个或多个设备接口330、一个或多个IR接口334、存储器340和用于将组件彼此耦合的一个或多个信号线312。至少一个数据处理器、视频处理器和/或中央处理单元(CPU)310可以被配置或可配置用于多线程或并行处理。一个或多个设备接口330可以耦合至一个或多个游戏控制器332。一个或多个IR接口334可以使用IR信号来无线地与一个或多个远程控制336通信。
存储器340可以包括高速随机存取存储器和/或非易失性存储器,包括ROM、RAM、EPROM、EEPROM、一个或多个闪磁盘驱动器、一个或多个光盘驱动器和/或一个或多个磁盘存储设备。存储器340可以存储操作***342,其包括用于处理基本***服务和用于执行与硬件有关的任务的过程(或指令集)。操作***342可以是嵌入式操作***,诸如Linux、OS9或Windows,或适用于在工业或商业设备(诸如Wind River***公司的VxWorks)上使用的实时操作***。存储器340可以将通信过程(或指令集)存储在网络通信模块344中。通信过程用于与计算机和/或服务器(诸如图2的视频游戏***200)通信。存储器340还可以包括控制程序346(指令集),其可以包括音频驱动器程序348(或指令集)和视频驱动器程序350(或指令集)。
STB 300通过网络136传输预订信息和与用户动作对应的信息,并接收视频游戏内容。所接收的信号使用网络接口314来处理以便移除包含视频游戏内容的数据流中的报头和其他信息。调谐器316选择对应于一个或多个子信道的频率。得到的音频信号在音频解码器318中处理。在某些实施方式中,音频解码器318是AC-3解码器。得到的视频信号在视频解码器324中处理。在某些实施方式中,视频解码器314是MPEG-1、MPEG-2、MPEG-4、H.262、H.263、H.264或VC-1解码器;在其他实施方式中,视频解码器314可以是兼容MPEG的解码器或用于另一视频压缩标准的解码器。来自于视频解码器314的视频内容输出被使用视频驱动器326转换成用于驱动显示器328的适当格式。类似地,来自于音频解码器318的音频内容输出被使用音频驱动器320转换成用于驱动扬声器322的适当格式。去往游戏控制器332和/或远程控制336的用户命令或动作输入由设备接口330和/或IR接口334接收,并转发至网络接口314以供传输。
游戏控制器332可以是专用视频游戏控制台,诸如Sony 和Microsoft或个人计算机所提供的那些。游戏控制器332可以从游戏垫、键盘、游戏柄、麦克风、鼠标、一个或多个远程控制、一个或多个附加游戏控制器或诸如包括语音识别技术的用户接口的其他用户接口接收对应于一个或多个用户动作的信息。显示器328可以是阴极射线管、液晶显示器,或者电视、计算机或便携式设备中的任何其他适当显示设备,诸如视频游戏控制台332或蜂窝电话。在某些实施方式中,扬声器322嵌入在显示器328中。在某些实施方式中,扬声器322包括分别位于显示器328左侧和右侧的左扬声器和右扬声器。在某些实施方式中,除了左扬声器和右扬声器,扬声器322包括中央扬声器。在某些实施方式中,扬声器322包括位于用户背后的环绕立体声扬声器。
在某些实施方式中,STB 300可以在显示视频内容之前对所接收的视频游戏内容进行平滑操作。在某些实施方式中,在接收视频游戏内容时,实时地对所接收的视频游戏内容进行解码、显示在显示器328上,并在扬声器322播放。在其他实施方式中,STB 300存储所接收的视频游戏内容,直到接收到完整的视频帧为止。完整的视频帧随后被解码并显示在显示器328上,同时伴随的音频被解码并在扬声器322上播放。
尽管图3将STB 300示出为许多离散项目,但是图3更多地意在描述可以出现在机顶盒中各种特征的功能,而不是作为此处所描述实施方式的结构示意图。事实上,如本领域普通技术人员所理解的,在图3中单独示出的项目可以组合,而某些项目可以分离。另外,存储器340中以上标识的每个元素可以存储在前述存储器设备的一个或多个中。上述每个模块对应于用于执行上述功能的指令集。上述标识的模块或程序(即,指令集)不需要实现为单独的软件程序、过程或模块,并且由此在各种实施方式中,这些模块的各种子集可以组合或以重新布置。在某些实施方式中,存储器340可以存储以上标识的模块和数据结构的子集。存储器340还可以存储以上未描述的附加模块和数据结构。
图4是示出了根据某些实施方式用于对音频进行编码的过程400的流程图。在某些实施方式中,过程400由诸如视频游戏***200(图2)的视频游戏***执行。备选地,过程400在不同的计算机***中执行,并且得到的编码音频数据传输至或副本至一个或多个视频游戏***200。音频数据是从多个独立源接收的(402)。在某些实施方式中,从每个独立源接收脉冲编码调制比特流形式的音频数据,诸如.wav文件(404)。在某些实施方式中,从独立源接收的音频数据包括对应于视频游戏背景音的音频数据和对应于视频游戏各种音效的音频数据。
来自每个独立源的音频数据被编码成源帧的序列,这样产生了多个源帧序列(406)。在某些实施方式中,诸如视频游戏***200(图2)的、或单独计算机***的、诸如音频信号预编码器264的音频信号预编码器对来自每个独立源的音频数据进行编码。在某些实施方式中,对于源帧序列中的帧,生成该帧的多个副本(408)。每个副本具有不同的相关联的质量水平,该相关联的质量水平是预定质量水平范围的一个,其中该预定质量水平范围在最高质量水平和最低质量水平之间变化。在某些实施方式中,相关联的质量水平对应于指定的信噪比(410)。在某些实施方式中,每个副本消耗的比特数量随着相关联的质量水平减小而递减小。得到的多个源帧序列存储在存储器中以供稍后使用,例如在进行交互式视频游戏期间使用。
在进行视频游戏或其他交互式节目期间,将该多个源帧序列的两个或更多合并至目标帧序列中(412)。目标帧包括多个独立的目标声道。在某些实施方式中,诸如游戏服务器模块246(图2)的音频帧合并器255的音频帧合并器将两个或更多源帧序列合并。在某些实施方式中,选择用于源帧的信噪比(414)。例如,信噪比被选择,以便为目标帧序列维持恒定比特速率。在某些实施方式中,所选择的信噪比是在其处可以维持恒定比特速率的最高信噪比。然而,在某些实施方式中,用于目标帧序列的比特速率可以在帧之间动态变化。在某些实施方式中,具有所选择的信噪比的源帧的副本被合并至目标帧序列中的目标帧中(416)。在某些实施方式中,目标帧是AC-3格式。
目标帧序列可以从诸如视频游戏***200(图2)的服务器***传输至诸如机顶盒300(图3)的客户端***。根据扬声器配置,STB300可以将每个目标声道指派给单独的扬声器,或者可以将两个或更多目标声道下混频至指派给扬声器的音频流。由此,将多个源帧序列合并至包括多个独立目标声道的目标帧序列支持多个独立音频信号的同时播放。
图5是根据某些实施方式的用于对音频进行编码的过程500的流程图。在某些实施方式中,诸如视频游戏***200(图2)中的音频帧合并器255的音频帧合并器执行过程500。访问代表多个独立音频信号的数据(502)。代表每个音频信号的数据包括源帧的序列。在某些实施方式中,代表多个独立音频信号的数据作为预编码音频信号257存储在视频游戏***200的储存库256中,音频帧合并器255可以从储存库256对其进行访问。以上参考图4讨论了预编码音频信号的生成。
在某些实施方式中,每个源帧包括多个音频数据副本(504)。每个音频数据副本具有不同的相关联的质量水平,该相关联的质量水平是预定质量水平范围的一个,其中该预定质量水平范围在最高质量水平和最低质量水平之间变化。在某些实施方式中,相关联的质量水平对应于指定的信噪比。
在某些实施方式中,访问两个源帧序列。例如,第一源帧序列包括非静音音频数据的连续源,第二源帧序列包括非静音音频数据间断性(episodic)源,其包括代表静音的音频数据序列(506)。在某些实施方式中,第一序列可以对应于视频游戏的背景音乐,而第二序列可以对应于将响应于用户命令而播放的音效。在另一示例中,第一源帧序列包括非静音音频数据的第一间断性源,第二源帧序列包括非静音音频数据的第二间断性源;两个序列都包括代表静音的音频数据序列(505)。在某些实施方式中,第一序列可以对应于响应于第一用户命令而播放的第一音效;第二序列可以对应于响应于第二用户命令而播放的第二音效,其与第一音效交叠。在又一实施方式中,第一源帧序列包括非静音音频数据的第一连续源,第二源帧序列包括非静音音频数据的第二连续源。在某些实施方式中,第一序列可以对应于第一音乐片段,第二序列对应于将与第一音乐片段并行播放的第二音乐片段。在某些实施方式中,访问多于两个源帧序列。
将多个源帧序列合并至包括多个独立目标声道的目标帧的序列(508)。在某些实施方式中,选择用于目标帧和相应源帧的质量水平(510)。例如,选择质量水平以为目标帧序列维持恒定比特速率。在某些实施方式中,所选择的质量水平是在其处可以维持恒定比特速率的最高质量水平。然而,在某些实施方式中,用于目标帧序列的比特速率可以在帧之间动态改变。在某些实施方式中,将每个对应源帧的选择质量水平处的音频数据副本指派至至少一个相应的目标声道(512)。
在处理400(图4)中,从过程500得到的目标帧序列可以从诸如视频游戏***200(图2)的服务器***传输至诸如机顶盒300(图3)的客户端***。根据扬声器配置,STB 300可以将每个目标声道指派给单独的扬声器,或者可以将两个或更多目标声道下混频至指派给扬声器的音频流中。由此,将多个源帧序列合并至包括多个独立目标声道的目标帧序列支持多个独立音频信号的同时播放。
图6是示出了根据某些实施方式的、用于对音频进行编码和传输的过程600的流程图。从多个独立源接收音频数据(402)。将来自每个独立源的音频数据编码至源帧的序列中,以产生多个源帧序列(406)。在以上针对过程400(图4)详细描述的操作402和406可以事先作为创作(authoring)过程的一部分来执行。接收命令(602)。在某些实施方式中,视频游戏***200从机顶盒300接收作为玩视频游戏的用户的动作结果的命令。响应于该命令,将多个源帧序列合并至包括多个独立目标声道的目标帧序列中(412,参见图4)。目标帧序列被传输(604)。在某些实施方式中,经由网络136将目标帧序列从视频游戏***200传输至STB 300。根据扬声器配置,STB 300可以将每个目标声道指派给单独的扬声器,或者可以将两个或更多目标声道下混频至指派给扬声器的音频流。在执行或进行视频游戏或其他应用期间,可以实时地执行操作602、412和604。
图7是示出了根据某些实施方式的用于对音频进行编码的“预编码”或创作过程700的框图。音频编码器704接收作为输入的脉冲编码调制(PCM)文件702(诸如,.wav文件),并产生受约束的AC-3帧706的文件作为输出。在某些实施方式中,音频编码器704是经过修改的AC-3编码器。输出的AC-3帧被限制,以确保随后可以被指派给目标帧的单个声道。具体地,所有的小数尾数组都进行补余(complete),从而确保不会有来自单独源声道的尾数连续存储在同一目标声道中。在某些实施方式中,音频编码器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存储音频帧序列800的公共属性,诸如版本信息、比特速率、序列的唯一标识、帧数量、每个帧的SNR变量数量、到帧数据起始的指针和校验和。帧指针表804包括到每个帧的每个SNR变量的指针。例如,帧指针表804可以包含从帧数据的起始到用于每个帧的每个SNR变量的数据的偏移,和到用于帧的指数数据的偏移。这样,在某些实施方式中,帧指针表804包括每帧17个指针。
帧1数据806包括指数数据812和从1到N的SNR变量(814、816、818),其中N是指示每个帧的SNR变量总数量的整数。在某些实施方式中,N等于16。用于帧的数据包括指数数据和尾数数据。在某些实施方式中,由于指数数据对于帧的所有SNR变量而言是相同的,所以可以与尾数数据相分离地只存储指数数据812一次。然而,尾数数据在SNR变量之间变化,并且因此为每个变量单独存储。例如,SNR变量N 818包括对应于SNR变量N的尾数数据。如果试图创建变量的编码器(诸如图7的音频编码器704)不能通过填充所有小数尾数组而解决小数尾数问题的话,则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被指派给目标帧中的一个或多个单独声道。传输流(TS)格式化器910对得到的用于传输的目标帧序列进行格式化,并将目标帧序列传输至STB 912。在某些实施方式中,TS格式化器910通过网络136(图1)将目标帧序列传输至STB 912。
机顶盒912包括解多路复用器(demux)914、音频解码器916和下混频器918。解多路复用器914对进入的传输流(其包括多个节目)解多路复用,并提取与STB 912相关的节目。解多路复用器914随后将该节目分成音频流(例如,AC-3)和视频流(例如,MPEG-2视频)。在某些实施方式中是标准AC-3解码器的音频解码器916对传输的音频进行解码,该音频包括BG数据904和FG数据906。下混频器918随后对音频数据进行下混频,并将音频信号传输至扬声器920,使得FG音频和BG音频同时播放。
在某些实施方式中,下混频器918执行的功能根据扬声器920数量与所传输目标帧中声道数量的相关性。如果扬声器920包括对应于每个声道的扬声器,则不需要执行下混频;相反,每个声道上的音频信号在相应的扬声器上播放。然而,如果扬声器920的数量少于声道的数量,则下混频器918基于扬声器920的配置、用于所传输目标帧的编码模式以及音频帧合并器908做出的声道指派来对声道进行下混频。
AC-3音频编码标准包括多个不同模式,它们具有嵌入在每个AC-3帧中的音频编码模式(“acmod”)性质所规定的变化的声道配置,如表1中所总结的:
acmod | 音频编码模式 | 声道号 | 声道定购 |
‘000’ | 1+1 | 2 | Ch1,Ch2 |
‘001’ | 1/0 | 1 | C |
‘010’ | 2/0 | 2 | L,R |
‘011’ | 3/0 | 3 | L,C,R |
‘100’ | 2/1 | 3 | L,R,S |
‘101’ | 3/1 | 4 | L,C,R,S |
‘110’ | 2/2 | 4 | L,R,SL,SR |
‘111’ | 3/2 | 5 | L,C,R,SL,SR |
表1(Ch1、Ch2:备用单声道轨道,C:中央,L:左,R:右,S:环绕,SL:左环绕,SR:右环绕)。
除了表1中所示五个声道外,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。在某些实施方式中,预编码的背景(BG)音乐904(图9)是立体声并因而包括两个声道,其被指派至左声道1000和右声道1004。预编码的音效(FX)数据906被指派给中央声道1002。
对于图10B,选择了2/2模式(acmod=‘110’)。2/2模式具有四个声道:左声道1000、右声道1004、左环绕声道1006和右环绕声道1008。预编码BG 904被指派至左声道1000和右声道1004。预编码FX 906被指派给左环绕声道1006和右环绕声道1008。
对于图10C,选择了3/0模式。预编码音效数据(FX1)1010的第一个源被指派给左声道1000,预编码音效数据(FX2)1014的第二个源被指派给右声道1004。在某些实施方式中,预编码BG 1012(在此示例中不是立体声)被指派至中央声道1002。在某些实施方式中,不存在预编码BG 1012,并且将代表静音的音频数据序列指派给中央声道1002。在某些实施方式中,当仅存在两个音效且没有背景音时,可以使用2/0模式。将两个独立的音效指派给独立的声道允许在单独的扬声器上同时播放两个音效,如以下参照图14C所讨论的。
在某些实施方式中,执行声道指派的音频帧合并器还执行音频缝合,从而提供了与视频游戏和其他未使用混合源帧的应用的向后兼容性。在某些实施方式中,音频帧合并器能够随时在混合和缝合之间交替。
基于AC-3标准执行声道映射(诸如,图10A和图10B中所示声道映射)的音频帧合并器在某些实施方式中生成作为其输出的AC-3帧序列。图11A和图11B是示出了根据某些实施方式的AC-3帧1100的数据结构的框图。图11A中的帧1100包括同步信息(SI)报头1102、比特流信息(BSI)1104、六个已编码音频块(AB0-AB5)1106-1116、辅助数据比特(AuX)1118和循环冗余校验(CRC)1120。SI报头1102包括用于获得并维持同步的同步字、采样速率、帧大小和其评估对于解码器而言是可选的CRC值。BSI 1104包括对已编码音频数据进行描述的参数,诸如关于声道配置、后处理配置(压缩、对话归一化等)、版权和时间编码的信息。每个已编码音频块1106-1116包括对应于每个声道的256个音频采样指数数据和尾数数据。辅助数据比特1118包括不需要解码的附加数据。在某些实施方式中,不存在辅助数据。在某些实施方式中,辅助数据用于保留音频块数据不使用的所有比特。CRC 1120包括整个帧上的CRC。在某些实施方式中,基于之前为源帧计算的CRC值来计算CRC值。关于AC-3帧的附加细节在AC-3规范(高级电视***协会(ATSC)文档A/52B,“Digital Audio Compression Standard(AC-3,E-AC-3)Revision B”(数字音频压缩标准(AC-3,E-AC-3)修订版B)(2005年6月14日))中描述。在此通过参考将AC-3规范并入。
标准AC-3编码器的比特分配算法使用帧中所有可用比特,作为存储与相应声道相关联的比特的可用资源。因此,在标准AC-3编码器生成的AC-3帧中不存在针对每个声道和音频块的尾数比特或指数比特的准确指派。取而代之的是,比特分配算法在作为整体的声道上全局操作,并且灵活地在声道、频率和块中分配比特。由此,在每个帧中,6个块的大小是可变的。此外,可以将某些尾数量化为小数大小,并且若干尾数随后可以集中至整数比特的组,该组存储在该组的第一小数尾数的位置处(参见下面的表3)。其结果是,来自不同声道和块的尾数可以一起存储在单个位置处。另外,标准AC-3编码器可以应用称为耦合的技术,该技术发掘源PCM音频内声道之间的依赖性,以减少编码互相依赖的声道所需的比特数量。对于2/0模式(即立体声),标准AC-3编码器可以应用称为矩阵化的技术来编码环绕信息。小数尾数量化、耦合和矩阵化避免了每个声道是独立的。
然而,当编码器通过填满所有小数尾数组而解决了小数尾数问题时,并且编码器不使用耦合和矩阵化,音频帧合并器随后可以将对应于特定源帧的尾数数据和指数数据指派给目标帧的音频块中的特定目标声道。图11B示出了根据某些实施方式的针对3/0模式的AC-3音频块中的声道指派。每个音频块被分成左声道、中央声道和右声道,诸如AB0 1106的左声道1130、中央声道1132和右声道1134。来自于与第一独立音频信号(源1)对应的第一源帧的数据被指派到左声道1130和右声道1134。在某些实施方式中,来自第一源帧的数据对应于立体声格式的音频数据,其具有两个相应的源声道(源1,声道0;和源1,声道1)。对应于第一源帧中每个源声道的数据被指派给AC-3帧中单独的声道:源1,声道0被指派给左声道1130,而源1,声道1被指派给右声道1134。在某些实施方式中,源1对应于预编码BG 904(图9)。来自于与第二独立音频信号(源2)对应的第二源帧的数据被指派给中央声道1132。在某些实施方式中,源2对应于预编码FX 906(图9)。
在某些实施方式中,指派给AC-3音频块中目标声道的尾数数据对应于相应源帧的被选择的SNR变量。在某些实施方式中,为目标帧的每个块选择相同的SNR变量。在某些实施方式中,可以逐块选择不同的SNR变量。
图12是示出了根据某些实施方式的、将多个源帧的被选择的SNR变量合并到目标帧的合并器的框图。图12包括对应于两个独立源(源1(1204)和源2(1208))的两个源帧序列1204、1208。每个序列中的帧按照时间先后顺序进行编号,并且合并至目标帧1206,使得源1帧111和源2帧3合并至同一目标帧(帧t,1240),并因此当目标帧随后被解码时,能同时播放。
与源1帧1204相比,源2帧1208的相对较低编号指示源2对应于远短于源1的音效。在某些实施方式中,源1对应于预编码的BG904,而源2对应于预编码的FX 906(图9)。预编码的FX 906可以仅间断性地播放,例如响应于用户命令。在某些实施方式中,当并未播放预编码的FX 906时,将对应于静音的一系列比特写入预编码FX 906被指派到的目标帧声道。在某些实施方式中,诸如STB 300的机顶盒可以重新配置自己,如果其发现了所接收目标帧中声道数量的变化的话,导致了中断的音频播放。将对应于静音的数据写入适当的目标帧声道将阻止STB观察声道数量的变化并从而不会重新配置自己。
源1帧序列1204的帧111包括16个SNR变量,其在SNR 0(1238)和SNR 15(1234)之间变化,其中SNR 0是最低的质量变量,并且只消耗532个比特,而SNR 15是最高的质量变量,并且消耗3094个比特。源2帧序列1208的帧3只包括13个SNR变量,其在SNR0(1249)和SNR 12(1247)之间变化,其中SNR 0是最低的质量变量,并且只消耗532个比特,而SNR 12是可用的最高质量变量,并且消耗2998个比特。对于帧3的3个最高质量,潜在的SNR变量(1242、1244和1246)不可用,因为它们的每一个将消耗比目标帧1206比特速率和采样速率能够允许的比特多的比特。在某些实施方式中,如果SNR变量的比特大小将大于目标帧比特速率和采样速率所允许的比特大小,则音频信号预编码器264不会创建该SNR变量,从而节约了存储器。在某些实施方式中,目标帧比特速率是128kB/s,并且采样速率是48khz,对应于4096个比特/帧。这些比特中约300个比特用于报头和其它边信息(side information),致使约3800个比特可用于每帧的指数数据和尾数数据。约3800个比特还用于增量(delta)比特分配(DBA),以下讨论。
在图12中,音频帧合并器255从源1(1236)和源2(1248)选择了对应于SNR 10的SNR变量。这些SNR变量是当组合后不会超过可用于指数、尾数和DBA数据的所允许目标比特数量(1264+2140=3404)的、它们相应源帧的最高质量可用变量。由于这些SNR变量所需的比特数量少于最大可允许的比特数量,所以来自于辅助数据比特字段的比特用于填满该帧。源1SNR变量1236在受约束的帧1200中进行预编码,该帧1200包括公共数据1220和音频数据块AB0-AB5(1222-1232)。在此示例中,源1是立体声格式,并因此被预编码至针对每个音频块具有两个声道(即,帧1200中的声道0和声道1)的受约束的AC-3帧。公共数据1220对应于AC-3帧1100(图11A)的字段SI 1102、BSI 1104、Aux 1118和CRC 1120。在某些实施方式中,指数数据与尾数数据分开存储。例如,受约束的AC-3帧1200可以包括位于公共数据1220和AB0数据1222之间的公共指数数据字段(未示出)。类似地,源2SNR变量1248在受约束的AC-3帧1212中进行预编码,该帧1212包括公共数据1250和音频数据块AB0-AB5(1252-1262),并且可以包括公共指数数据(未示出)。在此示例中,源2不是立体声,并且预编码至针对每个块具有一个声道(即,帧1212的声道0)的受约束的AC-3帧中。
一旦根据某些实施方式的图12所示的那样将源帧序列合并至目标帧序列中,则目标帧序列可以被传输至诸如机顶盒300(图3)的客户端***,在该客户端***中,对目标帧进行解码和播放。图13示出了根据某些实施方式的对目标帧序列进行接收、解码和播放的过程1300的流程图。响应于命令,接收包括帧序列的音频数据,其中该帧包含对应于独立音频源的多个声道(1302)。在某些实施方式中,接收AC-3格式的音频数据(1304)。对所接收的音频数据进行解码(1306)。在某些实施方式中,标准AC-3解码器对所接收的音频数据进行解码。
与客户端***相关联的扬声器数量与所接收帧序列中的声道数量进行比较(1308)。在某些实施方式中,与客户端***相关联的扬声器数量等于与机顶盒300(图3)耦合的扬声器数量。如果扬声器数量大于或等于声道数量(1308-否),则与每个声道相关联的音频数据在对应的扬声器上播放(1310)。例如,如果所接收的音频数据在AC-3 2/2模式中编码,则存在四个声道:左声道、右声道、左环绕声道和右环绕声道。如果客户端***具有至少四个扬声器,使得每个扬声器对应于声道,则来自于每个声道的数据可以在相应的扬声器上播放,并且不需要执行下混频。在另一示例中,如果所接收的音频数据在AC-3 3/0模式中编码,则存在三个声道:左声道、右声道和中央声道。如果客户端***具有相应的左扬声器、右扬声器和中央扬声器,则来自于每个声道的数据可以在相应的扬声器上播放,并且不需要执行下混频。然而,如果扬声器的数量少于声道的数量(1308-是),则对两个或更多声道进行下混频(1312),并且在同一扬声器上播放与两个或更多下混频声道相关联的音频数据(1314)。
在图14A-图14C中示出了下混频的示例。图14A是示出了根据某些实施方式的、用于给定两个源声道904、906和两个扬声器1402、1404的AC-3 3/0模式的声道指派和下混频的框图。如图10A所描述的,预编码FX 906被指派至中央声道1002,而预编码BG 904被指派至左声道1000和右声道1004。在左扬声器1402上播放左声道1000上的音频数据,在右扬声器1404上播放右声道1004上的音频数据。然而,没有对应于中央声道1002的扬声器。因此,对音频数据进行下混频,使得预编码FX 906在两个扬声器上与预编码BG 904同时一起播放。
图14B是示出了根据某些实施方式的、用于给定两个源声道904、906和两个扬声器1402、1404的AC-3 2/2模式的声道指派和下混频的框图。如图10B所描述的,预编码BG 904被指派给左声道1000和右声道1004。类似地,预编码FX 906被指派至左环绕声道1006和右环绕声道1008。由于存在四个声道而仅有两个扬声器,所以执行下混频。左声道1000和左环绕声道1006上的音频数据被下混频,并在左扬声器1402上播放,而右声道1004和右环绕声道1008上的音频数据被下混频,并在扬声器1404上播放。其结果是,在两个扬声器上同时播放预编码的BG 904和预编码的FX 906。
图14C是示出了根据某些实施方式的、用于给定三个源声道1010、1012和1014和两个扬声器1402和1404的AC-3 3/0模式的声道指派和下混频。如图10C所描述的,预编码FX1 1010被指派给左声道1000,预编码FX2 1014被指派给右声道1004,而预编码BG1012被指派给中央声道1002。由于存在三个声道而仅有两个扬声器,所以执行下混频。左声道1000和中央声道1002上的音频数据被下混频并在左扬声器1402上播放,而右声道1004和中央声道1002上的音频数据被下混频,并在右扬声器1404上播放。其结果是,预编码的FX1 1010和预编码的FX2 1014同时播放,每一个在单独的扬声器上。
现在注意小数尾数问题的解决方案。针对某些组的尾数,标准AC-3编码器每个尾数分配小数数量的比特。如果来自特定源的尾数并未完全填满这样的组,则来自于其他源的尾数可以添加至该组。其结果是,来自一个源的尾数的后面将紧跟来自另一源的尾数。此布置会使得AC-3解码器失去对尾数声道指派的跟踪,从而避免了将不同源信号指派到目标帧中的不同声道。
AC-3标准包括公知为增量比特分配(DBA)的过程,用于通过修改编码器使用的标准掩蔽曲线来调整某些频带内尾数的量化。增量比特分配信息作为边带信息被发送至解码器,并且所有的AC-3解码器都支持。使用以下描述的算法,增量比特分配可以修改比特分配,以确保完整的小数尾数组。
在AC-3编码机制中,根据掩蔽曲线对尾数进行量化,该曲线利用指数形成的功率频谱密度包络(PSD)进行折叠,该指数是由每个块的每个声道的输入采样的256-二进制(256-bin)修改的离散余弦变换(MDCT)得到的,导致了约1/6倍频带的频谱。掩蔽曲线是基于人耳的心里声学模型,并且其形状是由作为已编码AC-3比特流中的边信息被发送的参数确定的。用于尾数的比特分配过程的细节可以在AC-3规范(高级电视***协会(ATSC)文档A/52B,“DigitalAudio Compression Standard(AC-3,E-AC-3)Revision B”(2005年6月14日))中找到。
为了确定尾数的量化等级,根据某些实施方式,编码器首先为每个频带确定比特分配指针(BAP)。BAP是基于比特分配指针表(图2)中的地址确定的。比特分配指针表为每个地址值将索引(即,BAP)存储至确定要分配给尾数的比特数量的第二表中。通过将相应的掩蔽值从每个频带的PSD中减去,以及将结果向右移动5位(相当于将结果除以32),可以计算出地址值。此值的阈值在从0到63的间隔内。
地址 | BAP | 地址 | BAP |
0 | 0 | 32 | 10 |
1 | 1 | 33 | 10 |
2 | 1 | 34 | 10 |
3 | 1 | 35 | 11 |
4 | 1 | 36 | 11 |
5 | 1 | 37 | 11 |
6 | 2 | 38 | 11 |
7 | 2 | 39 | 12 |
8 | 3 | 40 | 12 |
9 | 3 | 41 | 12 |
10 | 3 | 42 | 12 |
11 | 4 | 43 | 13 |
12 | 4 | 44 | 13 |
13 | 5 | 45 | 13 |
14 | 5 | 46 | 13 |
15 | 6 | 47 | 14 |
16 | 6 | 48 | 14 |
17 | 6 | 49 | 14 |
18 | 6 | 50 | 14 |
19 | 7 | 51 | 14 |
20 | 7 | 52 | 14 |
21 | 7 | 53 | 14 |
22 | 7 | 54 | 14 |
23 | 8 | 55 | 15 |
24 | 8 | 56 | 15 |
25 | 8 | 57 | 15 |
26 | 8 | 58 | 15 |
27 | 9 | 59 | 15 |
28 | 9 | 60 | 15 |
29 | 9 | 61 | 15 |
30 | 9 | 62 | 15 |
31 | 10 | 63 | 15 |
表格2:比特分配指针表
确定要分配给频带中尾数的比特数量的第二表格称为比特分配表。在某些实施方式中,比特分配表包括16个量化等级。
BAP | 每个尾数的量化器水平 | 尾数比特(组比特的数量/尾数比特的数量) |
0 | 0 | 0 |
1 | 3 | 1.67(5/3) |
2 | 5 | 2.33(7/3) |
3 | 7 | 3 |
4 | 11 | 3.5(7/2) |
5 | 15 | 4 |
6 | 32 | 5 |
7 | 64 | 6 |
8 | 128 | 7 |
9 | 256 | 8 |
10 | 512 | 9 |
11 | 1024 | 10 |
12 | 2048 | 11 |
13 | 4096 | 12 |
14 | 16,384 | 14 |
15 | 65,536 | 16 |
表格3:比特分配表:量化器等级和尾数比特对BAP
从以上比特分配表(表3)可见,BAP 1、2和4表示导致量化的尾数的小数大小(对于BAP 1是1.67(5/3)个比特;对于BAP 2是2.33(7/3)个比特,对于BAP 4是3.5(7/2)个比特)的量化等级。这种小数尾数被集中至三个单独的组,每一个组用于BAP 1、2和4的每一个。对于三个组中的每一个,无论何时第一次遇到小数尾数,或者当遇到小数尾数而同一类型的之前组被完全填满时,则编码器在输出比特流的当前位置为该组保留完整的比特数量。编码器随后收集该组的类型的小数尾数,将它们写入该位置直到该组被填满为止,而不论用于特定尾数的源信号。对于BAP 1,该组具有5个比特并且收集3个尾数,直到该组被填满为止。对于BAP 2,该组具有用于3个尾数的7个比特。对于BAP 4,该组具有用于2个尾数的7个比特。
增量比特分配允许编码器通过修改针对选择的频带的掩蔽曲线来调节尾数的量化。AC-3标准允许利用每个频带的+6或-6dB的倍数来修改掩蔽曲线。针对频带将掩蔽曲线修改-6dB对应于对该频带内所有尾数的解析度严格增大1个比特,其接着对应于将用作比特分配指针表(例如,表2)的索引的地址增大了+4。类似地,针对频带将掩蔽曲线修改+6dB对应于对该频带内所有尾数的解析度严格减小1个比特,其接着对应于将用作比特分配指针表(表2)的索引的地址增大了-4。
增量比特分配具有其他限制。最多允许用于每个声道和块的八个增量比特修正值条目。另外,DBA数据中的第一频带作为绝对5比特值而存储,而将要修正的后续频带被编码为来自于第一频带号的偏移。因此,在某些实施方式中,将要修正的第一频带限于从0到31的范围。在某些实施方式中,用于范围在从0到31的频带的伪修正被存储,如果第一实际修正用于大于31的频带编号的话。而且,由于大于频带编号27的频带具有大于一的宽度(即,针对每个频带存在多于一个的尾数),则对这种频带的修正立刻实现了若干尾数的量化。
根据某些实施方式,针对这些规则,增量比特分配可以用于填充小数尾数组。在某些实施方式中,标准AC-3编码器被修改,使得其最初不使用增量比特分配:该比特分配过程无需应用任何增量比特分配而运行。对于每个声道和块,针对小数尾数组的存在,分析从比特分配过程所得到的数据。经过修改的编码器随后尝试通过使用增量比特分配值修正所选择尾数的量化,来填满任何未完成的小数尾数组或将其清空。在某些实施方式中,对应于BAP 1、2和4的组中的尾数被***地轮流修正。在某些实施方式中,回溯(backtracking)算法尝试可能修正的所有明智的(sensible)组合,直到找到至少一个方案为止。
在下述示例中(表4),编码器已经完成了针对一个目标帧声道的数据的一个块的比特分配,该目标帧声道对应于给定SNR处的特定源信号。还未应用增量比特分配,并且并未完全填满小数尾数组。表4示出了所得到的量化。对于量化后不等于0的所有频率尾数,表格列出了频带编号、频带中的频率数量、比特分配指针(BAP;参见表3)和用于从BAP表特(表格2)取回BAP的地址。
频带 | 频率 | BAP | 地址 |
0 | 0 | 1 | 4 |
1 | 1 | 1 | 4 |
2 | 2 | 1 | 4 |
3 | 3 | 1 | 4 |
8 | 8 | 1 | 1 |
9 | 9 | 1 | 4 |
10 | 10 | 1 | 4 |
11 | 11 | 1 | 4 |
12 | 12 | 1 | 4 |
13 | 13 | 1 | 4 |
14 | 14 | 1 | 2 |
15 | 15 | 1 | 3 |
17 | 17 | 3 | 10 |
18 | 18 | 2 | 6 |
19 | 19 | 4 | 11 |
20 | 20 | 2 | 7 |
22 | 22 | 1 | 3 |
23 | 23 | 1 | 1 |
24 | 24 | 1 | 2 |
25 | 25 | 1 | 2 |
27 | 27 | 1 | 2 |
28 | 29 | 1 | 1 |
28 | 30 | 1 | 1 |
30 | 36 | 1 | 2 |
32 | 40 | 1 | 2 |
33 | 45 | 1 | 3 |
34 | 48 | 1 | 3 |
35 | 49 | 1 | 3 |
42 | 105 | 1 | 1 |
表4:在增量比特分配之前的尾数量化
编码后,无需任何增量比特分配修正,存在下面数量的小数尾数(在表4中,对应于BAP 2和BAP 4的尾数已经突出显示以易于参考)。
BAP组 | 尾数的数量 | 当前组填充 |
BAP1(5/3比特) | 25 | 1(=25模3) |
BAP2(7/3比特) | 2 | 2(=2模3) |
BAP4(7/2比特) | 1 | 1(=1模2) |
表5:在增量比特分配之前的小数尾数
如表5所示,对于此块,25个尾数具有BAP=1,两个尾数具有BAP=2,而一个尾数具有BAP=4。对于BAP 1,完整的组具有三个尾数。因此,25个尾数对应于8个完整的组,而第9个组只有一个尾数(25模3=1)。第9个组需要填充两个更多的尾数。对于BAP 2,完整的组具有三个尾数。因此,两个尾数对应于需要填充一个或更多尾数(3-(2模3)=1)的一个组。对于BAP 4,完整的组具有两个尾数。因此,单个尾数对应于需要填充一个更多尾数(2-(1模2)=1)的一个组。
现在可以应用若干策略,或者填满部分填充的尾数组或将其清空。在某些实施方式中,仅允许导致更高量化等级(即,导致增大的质量)的增量比特修正。对于具有此限制的某些实施方式,存在用于填满或清空小数尾数组的下述备选方式。
一个备选是通过以下操作来以BAP=1填满第9个组,即通过找到具有BAP=0的两个尾数(图4中未示出),并试图通过做出DBA修正增大掩蔽值,直到每个尾数具有对应于BAP值=1的BAP表地址为止。这两个尾数随后可以填满BAP 1组。示出了根据某些实施方式的比特分配指针表(BAP表)1500的图15A示出了用于填满第9个组的此方法。箭头1502和1504对应于用于最初具有BAP=0的两个尾数的增大的掩蔽值。如上所述,对于DBA仅用于增大质量的实施方式而言,一个DBA修正步骤对应于地址改变+4。因此,用于填满第9个组的此方法仅在以下情况是可用的:如果在频带中存在这样的尾数,对于其,从用于这种频带的PSD值减去最高可能的掩蔽值(其等于预测的掩蔽值加上可能的DBA修正的最大次数)会导致指向BAP值=1的BAP表地址。已经发现了很多这样的情况,其中在块中不能找到这样的尾数。
另一个备选是通过以下操作来以BAP=1清空第9个组,即通过找到BAP=1的一个尾数,并增大该地址以产生BAP>1。如果最初的地址为1,则在一次修正后得到的地址是5,其仍然对应于BAP=1(箭头1510;图15B)。第二次修正将导致地址为9,其对应于BAP=3(箭头1516;图15B)在表4中,这两次修正可以针对频带8执行,其地址为1。
如果最初的地址是2或者3,则一次修正后的地址可以分别是6或7,其对应于BAP 2(箭头1512和1514;图15B)。在表4中,频带14的地址为2,频带15的地址为3。对这些频带的任何一个执行修正都将清空第9个BAP 1组,而填满BAP 2组。在其他情况中,这样的修正可以创建用于BAP 2的小数尾数组,其接着要求修正。
如果原始地址是4或5,则一次修正后的地址分别是8或9,其对应于BAP 3(箭头1518和1520;图15B)。在表4中,地址为4的频带0或任何其他频带可以被修正,从而清空第9个BAP 1组,并产生附加的BAP 3尾数。
在某些实施方式中,一旦填满所有的BAP 1组,则考虑用于填满所有BAP 2组的修正。如上所述,一个备选是在地址为2或3的频带中找到尾数,并将地址增大为6或7,对应于BAP 2。在表4中,频带14可以从地址2修正为地址6(箭头1512;图15B),以及频带15可以从地址3修正为地址7(箭头1514;图15B)。然而,通常,一旦填满了所有的BAP 1组,则不应该执行从BAP 1到BAP 2的修正;否则,将创建部分填满的BAP 1组。
另一备选是通过增大不完整的组中的尾数地址而清空不完整的BAP 2组。具体地,可以将地址6和7分别修正为地址10和11(箭头1530和1532;图15C)。在表4中,频带18可以从地址6修正到地址10,对应于BAP 3。频带20可以从地址7修正到地址11,对应于BAP 4。对频带20的修正由此可以同时清空BAP 2组并填满BAP 4组。在其他情况中,从地址7到地址11的修正可以创建BAP4组,其接着需要修正。
在某些实施方式中,一旦填满了所有的BAP 1和BAP 2,则考虑用于填满所有BAP 4组的修正。一个备选是找到具有这样地址的尾数,对该地址应用DBA修正可以导致对应于BAP 4的地址。具体地,地址7或8可以分别修正至地址11或12(箭头1550和1552;图15D)。在表4中,如上所述,频带20可以从地址7修正到地址11,对应于BAP 4。备选地,可以执行两次修正以从地址3得到地址11(箭头1546和1550)或者从地址4得到地址12(箭头1548和1552)。然而,通常,一旦填满了所有的BAP 1和BAP 2组,则不需要执行可能创建部分填满的BAP 1或BAP 2的组的修正。在某些情况下,通过应用足够的修正性步骤(箭头1540、1544、1548和1552或箭头1542、1546和1550),可以将具有BAP=0的尾数移动到地址11或12。然而,如上所述,此最终方法仅在以下情况中是可能的:如果可以找到具有足够高的掩蔽值以至于它们不会被用于频带的最高可能掩蔽值掩蔽的最初未量化尾数值。
另一备选是找到地址为11或12(对应于BAP 4)的尾数,并执行DBA修正以将地址增大至15或16,对应于BAP 6(箭头1560和1562;图15E)。在表4中,频带19可以从地址11修正到地址19,从而清空部分填满的BAP 4组。
上述用于填满部分填满的小数尾数组或将其清空的策略由以下事实进一步复杂化:对于频带28及更高的频带,单个DBA修正会改变多于一个的尾数的BAP。例如,如果这样的频带包含导致BAP=1的地址的一个尾数,而另一个具有导致BAP=2的地址,则利用一个修正值可以修改两个小数尾数组。
在某些实施方式中,算法顺序应用上述用于填满部分填满的尾数组或将其清空的策略,首先处理BAP 1组,然后是BAP 2组,最后是BAP 4组。其他BAP组处理的次序也是可能的。这种算法可以找到针对很多比特分配和部分小数尾数组的情况的、对小数尾数问题的解决方案。然而,处理执行的次序确定了可能方案的数量。换言之,算法的线性执行限制了解决方案的空间。
为了扩大解决方案的空间,根据某些实施方式使用回溯算法。在某些实施方式中,回溯算法尝试上述策略的所有明智组合。增量比特分配修正的可能组合由向量(v1,...vm)表示。回溯算法以深度优先的方式递归地遍历向量的域,直到找到至少一个解决方案为止。在某些实施方式中,当被调用时,回溯算法从空向量开始。在每个执行阶段,其向向量添加新的值,由此创建部分向量。在达到不能代表部分方案的部分向量(v1,...vi)后,通过移除来自于向量的尾部(trailing)值来回溯,并随后通过尝试利用备用值扩展向量来继续前进。在某些实施方式中,备选值对应于以上针对表4描述的DBA策略。
解决方案空间的回溯算法的遍历可以由树的深度优先遍历代表。在某些实施方式中,树本身并不是由所公开的算法完全存储的;相反,仅仅存储去往根的路径,来支持回溯。
在某些实施方式中,回溯算法频繁地找到需要最少修正量的解决方案,尽管回溯算法不能保证会产生最少修正量。对于表4的示例,在某些实施方式中,回溯算法首先利用单个+4地址步长来修正频带14,这样减少了一个BAP 1成员,而增多了一个BAP 2成员。回溯算法随后利用单个+4地址步长来修正频带19,这样减少了一个BAP4成员。最终的结果在表6中示出,所有的小数尾数组都是完整的。BAP 1利用24个频带填满(24模3=0),BAP 2用三个频带完全填满(3模3=0),而BAP 4为空。
频带 | 频率 | BAP | 地址 |
0 | 0 | 1 | 4 |
1 | 1 | 1 | 4 |
2 | 2 | 1 | 4 |
3 | 3 | 1 | 4 |
8 | 8 | 1 | 1 |
9 | 9 | 1 | 4 |
10 | 10 | 1 | 4 |
11 | 11 | 1 | 4 |
12 | 12 | 1 | 4 |
13 | 13 | 1 | 4 |
14 | 14 | 2 | 6 |
15 | 15 | 1 | 3 |
17 | 17 | 3 | 10 |
18 | 18 | 2 | 6 |
19 | 19 | 7 | 19 |
20 | 20 | 2 | 7 |
22 | 22 | 1 | 3 |
23 | 23 | 1 | 1 |
24 | 24 | 1 | 2 |
25 | 25 | 1 | 2 |
27 | 27 | 1 | 2 |
28 | 29 | 1 | 1 |
28 | 30 | 1 | 1 |
30 | 36 | 1 | 2 |
32 | 40 | 1 | 2 |
33 | 45 | 1 | 3 |
34 | 48 | 1 | 3 |
35 | 49 | 1 | 3 |
42 | 105 | 1 | 1 |
表6:在增量比特分配后的尾数量化
在某些实施方式中,回溯算法偶尔不能找到对于源帧的特定SNR变量的解决方案。特定SNR变量由此不能供音频帧合并器使用在目标帧中。在某些实施方式中,如果音频帧合并器选择不可用的SNR变量,则音频帧合并器选择下一较低的SNR变量来代替,导致了质量上的些许下降但是确保了连续的声音播放。
为了示出和说明的目的,给出了本发明特定实施方式的前述描述。它们不是穷尽的,并且也不用于将本发明限制于所公开的精确形式。而是,应当理解,鉴于上述教导,很多修正和变体是可行的。选择实施方式并对其进行描述是为了最好地解释本发明的原理及其实际应用,以便使本领域技术人员能够更好地利用本发明和具有各种修改的适用于所设想的特定使用的各种实施方式。
Claims (19)
1.一种对音频进行编码的方法,包括:
访问代表多个独立音频信号的数据,所述代表每个独立音频信号的相应数据包括相应的源帧的序列;其中所述相应的源帧的序列中的每个源帧包括多个音频数据副本,每个音频数据副本具有相关联的质量水平,每个音频数据副本的质量水平是在最高质量水平与最低质量水平之间变化的预定质量水平范围中的一个;以及
将所述源帧的序列合并至目标帧的序列,其中所述目标帧包括多个目标声道,所述合并包括:针对相应目标帧和对应的源帧,选择质量水平,并将所述选择的质量水平处的对应源帧的相应音频数据副本指派至所述相应目标帧中的相应的单独目标声道。
2.根据权利要求1所述的方法,其中相应音频数据副本包括一个或多个小数尾数组,其中每个小数尾数组是填满的。
3.根据权利要求1所述的方法,其中所述访问的源帧的序列的第一个包括非静音音频数据的连续源,所述访问的源帧的序列的第二个包括非静音音频数据的间断性源,其包括代表静音的音频数据的序列。
4.根据权利要求1所述的方法,其中所述访问的源帧的序列的第一个包括非静音音频数据的第一间断性源,其包括代表静音的音频数据的序列,所述访问的源帧的序列的第二个包括非静音音频数据的第二间断性源,其包括代表静音的音频数据的序列。
5.根据权利要求1所述的方法,其中所述访问的源帧的序列的第一个包括非静音音频数据的第一连续源,所述访问的源帧的序列的第二个包括非静音音频数据的第二连续源。
6.一种对音频进行编码的方法,包括:
接收来自多个相应独立源的音频数据;
将来自每个相应独立源的音频数据编码至相应的源帧的序列中,以便产生多个源帧的序列,其中每个相应的源帧的序列中的每个源帧包括多个音频数据副本,每个音频数据副本具有不同的相关联的质量水平,每个音频数据副本的质量水平是在最高质量水平与最低质量水平之间变化的预定质量水平范围中的一个;以及
将所述多个源帧的序列合并至目标帧的序列,其中所述目标帧包括多个独立的目标声道,并将每个源帧的序列唯一地指派至所述多个独立的目标声道中的一个或多个目标声道。
7.根据权利要求6所述的方法,进一步包括:
接收命令,以及
传输所述目标帧的序列。
8.根据权利要求6所述的方法,其中来自相应的独立源的音频数据是脉冲编码调制比特流。
9.根据权利要求8所述的方法,其中所述脉冲编码调制比特流是WAV、W64、AU或者AIFF文件。
10.根据权利要求6所述的方法,其中对所述音频数据进行编码进一步包括:
对于每个音频数据副本,执行比特分配过程;以及
如果所述比特分配过程创建一个或多个不完整的小数尾数组,则修改所述比特分配过程的结果,以便将每个不完整的小数尾数组填满或将其清空。
11.根据权利要求10所述的方法,其中通过执行增量比特分配来对所述比特分配过程的结果进行修改。
12.根据权利要求11所述的方法,其中执行的所述增量比特分配是由回溯算法确定。
13.根据权利要求10所述的方法,其中对于相应音频数据副本,如果每个不完整的小数尾数组不能被填满或者清空,则不将所述相应音频数据副本包括在所述源帧内。
14.根据权利要求6所述的方法,其中所述相关联的质量水平对应于指定的信噪比。
15.根据权利要求10所述的方法,其中将所述多个源帧的序列合并至所述目标帧的序列包括:
为源帧选择信噪比;以及
将具有所述选择的信噪比的音频数据副本合并至所述目标帧的序列中的目标帧内。
16.根据权利要求15所述的方法,其中选择所述信噪比以便维持针对所述目标帧的序列的恒定比特速率。
17.根据权利要求15所述的方法,其中所述目标帧是AC-3格式。
18.一种对音频进行编码的装置,包括:
用于访问代表多个独立音频信号的数据的装置,所述代表每个独立音频信号的相应数据包括相应的源帧的序列;其中所述相应的源帧的序列中的每个源帧包括多个音频数据副本,每个音频数据副本具有相关联的质量水平,每个音频数据副本的质量水平是在最高质量水平与最低质量水平之间变化的预定质量水平范围中的一个;以及
用于将所述源帧的序列合并至目标帧的序列的装置,其中所述目标帧包括多个目标声道,所述用于合并的装置包括:针对相应目标帧和对应的源帧,用于选择质量水平的装置,以及用于将所述选择的质量水平处的对应源帧的相应音频数据副本指派至相应的目标声道中相应的单独目标声道的装置。
19.一种对音频进行编码的装置,包括:
用于接收来自多个相应独立源的音频数据的装置;
用于将来自每个相应独立源的音频数据编码至相应的源帧的序列中以便产生多个源帧的序列的装置,其中每个相应的源帧的序列中的每个源帧包括多个音频数据副本,每个音频数据副本具有不同的相关联的质量水平,每个音频数据副本的质量水平是在最高质量水平与最低质量水平之间变化的预定质量水平范围中的一个;以及
用于将所述多个源帧的序列合并至目标帧的序列的装置,其中所述目标帧包括多个独立的目标声道,并且每个源帧的序列唯一地被指派至所述多个独立的目标声道中的一个或多个目标声道。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/620,593 | 2007-01-05 | ||
US11/620,593 US8270439B2 (en) | 2005-07-08 | 2007-01-05 | Video game system using pre-encoded digital audio mixing |
PCT/US2008/050221 WO2008086170A1 (en) | 2007-01-05 | 2008-01-04 | Digital audio mixing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101627424A CN101627424A (zh) | 2010-01-13 |
CN101627424B true CN101627424B (zh) | 2012-03-28 |
Family
ID=39430693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800013254A Expired - Fee Related CN101627424B (zh) | 2007-01-05 | 2008-01-04 | 数字音频混合 |
Country Status (8)
Country | Link |
---|---|
US (1) | US8270439B2 (zh) |
EP (1) | EP2100296B1 (zh) |
JP (1) | JP5331008B2 (zh) |
CN (1) | CN101627424B (zh) |
AT (1) | ATE472152T1 (zh) |
DE (1) | DE602008001596D1 (zh) |
HK (1) | HK1134855A1 (zh) |
WO (1) | WO2008086170A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106104684A (zh) * | 2014-01-13 | 2016-11-09 | 诺基亚技术有限公司 | 多通道音频信号分类器 |
Families Citing this family (28)
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 |
WO2008088741A2 (en) | 2007-01-12 | 2008-07-24 | Ictv, Inc. | Interactive encoded content system including object models for viewing on a remote device |
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 |
JP4840666B2 (ja) * | 2007-06-18 | 2011-12-21 | ソニー株式会社 | 音声再生装置および音声再生方法 |
JP4990377B2 (ja) * | 2008-01-21 | 2012-08-01 | パナソニック株式会社 | 音響再生装置 |
EP2293294B1 (en) * | 2008-03-10 | 2019-07-24 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | Device and method for manipulating an audio signal having a transient event |
EP2289249A1 (en) * | 2008-06-13 | 2011-03-02 | Telefonaktiebolaget L M 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 | アンテナ装置、通信システム、基地局装置及び通信方法 |
CA2814070A1 (en) | 2010-10-14 | 2012-04-19 | Activevideo Networks, Inc. | Streaming digital video between video devices using a cable television system |
WO2012138660A2 (en) | 2011-04-07 | 2012-10-11 | Activevideo Networks, Inc. | Reduction of latency in video distribution networks using adaptive bit rates |
CN102572588A (zh) * | 2011-12-14 | 2012-07-11 | 中兴通讯股份有限公司 | 一种实现机顶盒混音的方法及装置 |
EP2815582B1 (en) | 2012-01-09 | 2019-09-04 | ActiveVideo Networks, Inc. | Rendering of an interactive lean-backward user interface on a television |
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 |
US20150269952A1 (en) * | 2012-09-26 | 2015-09-24 | Nokia Corporation | Method, an apparatus and a computer program for creating an audio composition signal |
US10275128B2 (en) | 2013-03-15 | 2019-04-30 | Activevideo Networks, Inc. | Multiple-mode system and method for providing user selectable video content |
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 |
WO2014197879A1 (en) | 2013-06-06 | 2014-12-11 | Activevideo Networks, Inc. | Overlay rendering of user interface onto source video |
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 |
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 |
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 | 中兴通讯股份有限公司 | 混音播放方法及装置 |
EP3201923B1 (en) | 2014-10-03 | 2020-09-30 | Dolby International AB | Smart access to personalized audio |
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 | 联想(北京)有限公司 | 一种音频数据的处理方法和音频处理器 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5570363A (en) * | 1994-09-30 | 1996-10-29 | Intel Corporation | Transform based scalable audio compression algorithms and low cost audio multi-point conferencing systems |
Family Cites Families (83)
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 |
DE69210689T2 (de) * | 1991-01-08 | 1996-11-21 | Dolby Lab Licensing Corp | Kodierer/dekodierer für mehrdimensionale schallfelder |
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 | 日本電信電話株式会社 | 信号の符号化方法と復号方法及びそれを使った符号器及び復号器 |
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 |
WO1997017797A2 (en) | 1995-10-25 | 1997-05-15 | 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 |
CN1106762C (zh) | 1996-06-17 | 2003-04-23 | 三星电子株式会社 | 数据段同步信号检测电路 |
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 |
US6931291B1 (en) * | 1997-05-08 | 2005-08-16 | 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 |
US6651252B1 (en) | 1999-10-27 | 2003-11-18 | Diva Systems Corporation | Method and apparatus for transmitting video and graphics in a compressed form |
US6754271B1 (en) | 1999-04-15 | 2004-06-22 | Diva Systems Corporation | Temporal slice persistence method and apparatus for delivery of interactive program guide |
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 |
US6876705B2 (en) | 2001-03-05 | 2005-04-05 | Intervideo, Inc. | Systems and methods for decoding of partially corrupted reversible variable length code (RVLC) intra-coded macroblocks and partial block decoding of corrupted macroblocks in a video decoder |
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 |
GB2378345B (en) | 2001-07-09 | 2004-03-03 | Samsung Electronics Co Ltd | Motion estimation apparatus and method for scanning a reference macroblock window in a search area |
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 |
CN1209744C (zh) | 2001-11-02 | 2005-07-06 | 松下电器产业株式会社 | 编码装置和解码装置 |
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 |
KR101021079B1 (ko) * | 2002-04-22 | 2011-03-14 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 파라메트릭 다채널 오디오 표현 |
US7038676B2 (en) | 2002-06-11 | 2006-05-02 | Sony Computer Entertainmant Inc. | System and method for data compression |
WO2004018060A2 (en) | 2002-08-21 | 2004-03-04 | 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 |
US8019087B2 (en) | 2004-08-31 | 2011-09-13 | Panasonic Corporation | Stereo signal generating apparatus and stereo signal generating method |
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. |
JP5697332B2 (ja) * | 2006-03-27 | 2015-04-08 | ヴィドヨ,インコーポレーテッド | スケーラブルビデオ及びオーディオ符号化システムにおける、制御メッセージを用いた、スケーラビリティ情報の管理のためのシステム及び方法 |
KR20090110244A (ko) | 2008-04-17 | 2009-10-21 | 삼성전자주식회사 | 오디오 시맨틱 정보를 이용한 오디오 신호의 부호화/복호화 방법 및 그 장치 |
-
2007
- 2007-01-05 US US11/620,593 patent/US8270439B2/en not_active Expired - Fee Related
-
2008
- 2008-01-04 EP EP08713533A patent/EP2100296B1/en not_active Not-in-force
- 2008-01-04 DE DE602008001596T patent/DE602008001596D1/de active Active
- 2008-01-04 JP JP2009544985A patent/JP5331008B2/ja not_active Expired - Fee Related
- 2008-01-04 WO PCT/US2008/050221 patent/WO2008086170A1/en active Application Filing
- 2008-01-04 CN CN2008800013254A patent/CN101627424B/zh not_active Expired - Fee Related
- 2008-01-04 AT AT08713533T patent/ATE472152T1/de not_active IP Right Cessation
-
2010
- 2010-01-29 HK HK10101028.2A patent/HK1134855A1/xx not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5570363A (en) * | 1994-09-30 | 1996-10-29 | Intel Corporation | Transform based scalable audio compression algorithms and low cost audio multi-point conferencing systems |
Non-Patent Citations (1)
Title |
---|
Advanced Television Systems Committee.Digital Audio Compression Standard (AC-3, E-AC-3) Revision B, Document A/52B.《Digital Audio Compression Standard (AC-3, E-AC-3) Revision B, Document A/52B》.2005, * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106104684A (zh) * | 2014-01-13 | 2016-11-09 | 诺基亚技术有限公司 | 多通道音频信号分类器 |
Also Published As
Publication number | Publication date |
---|---|
HK1134855A1 (en) | 2010-05-14 |
DE602008001596D1 (de) | 2010-08-05 |
WO2008086170A1 (en) | 2008-07-17 |
CN101627424A (zh) | 2010-01-13 |
EP2100296B1 (en) | 2010-06-23 |
US8270439B2 (en) | 2012-09-18 |
JP2010515938A (ja) | 2010-05-13 |
US20070105631A1 (en) | 2007-05-10 |
ATE472152T1 (de) | 2010-07-15 |
EP2100296A1 (en) | 2009-09-16 |
JP5331008B2 (ja) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101627424B (zh) | 数字音频混合 | |
JP5609160B2 (ja) | 情報処理システム、コンテンツ合成装置および方法、並びに記録媒体 | |
CN100571450C (zh) | 在多声道音频环境中提供互动式音频的***和方法 | |
CN101529504B (zh) | 多通道参数转换的装置和方法 | |
US8571956B2 (en) | System architecture and methods for composing and directing participant experiences | |
CN102100088B (zh) | 用于使用基于对象的元数据产生音频输出信号的装置和方法 | |
CN103649706B (zh) | 三维音频音轨的编码及再现 | |
CN101103393B (zh) | 音频信号的可缩放编码/解码 | |
CN102800320B (zh) | 多对象音频信号的附加信息比特流产生方法和装置 | |
US20160219279A1 (en) | EXPERIENCE OR "SENTIO" CODECS, AND METHODS AND SYSTEMS FOR IMPROVING QoE AND ENCODING BASED ON QoE EXPERIENCES | |
CN102460571B (zh) | 多音频对象信号的编解码方法和装置及转码方法和转码器 | |
CN101542596B (zh) | 用于编码和解码基于对象的音频信号的方法和装置 | |
CN1240045C (zh) | 用于卡拉ok、游戏机之类的声音重放装置和方法 | |
CN106463121A (zh) | 较高阶立体混响信号压缩 | |
CN1158683A (zh) | 购物点电视信号发送*** | |
CN101770772A (zh) | 嵌入式网络卡拉ok娱乐装置及其声像控制方法 | |
CN105323702A (zh) | 混音方法及*** | |
CN101371298A (zh) | 用于解码信号的方法和装置 | |
CN104509131A (zh) | 一种用于处理音频信号的方法和设备 | |
CN114915874A (zh) | 音频处理方法、装置、设备、介质及程序产品 | |
Stenzel et al. | Producing interactive immersive sound for MPEG-H: A field test for sports broadcasting | |
de Carvalho et al. | The brazilian digital television system access device architecture | |
US20230007423A1 (en) | Signal processing device, method, and program | |
US20210367987A1 (en) | Live Broadcast Network Using Musical Encoding to Deliver Solo, Group or Collaborative Performances | |
CN1205569C (zh) | 交互式数据发送*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120328 Termination date: 20170104 |
|
CF01 | Termination of patent right due to non-payment of annual fee |