CN112771892B - 音频数据的灵活渲染 - Google Patents
音频数据的灵活渲染 Download PDFInfo
- Publication number
- CN112771892B CN112771892B CN201980063638.0A CN201980063638A CN112771892B CN 112771892 B CN112771892 B CN 112771892B CN 201980063638 A CN201980063638 A CN 201980063638A CN 112771892 B CN112771892 B CN 112771892B
- Authority
- CN
- China
- Prior art keywords
- renderer
- audio data
- encoded audio
- processors
- renderflag
- 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.)
- Active
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 188
- 238000000034 method Methods 0.000 claims abstract description 145
- 239000011159 matrix material Substances 0.000 claims description 127
- 238000012545 processing Methods 0.000 claims description 31
- 238000003860 storage Methods 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 22
- 238000004519 manufacturing process Methods 0.000 claims description 11
- 239000013598 vector Substances 0.000 description 95
- 230000006870 function Effects 0.000 description 34
- 238000013139 quantization Methods 0.000 description 33
- 238000004458 analytical method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 16
- 238000000354 decomposition reaction Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 11
- 230000011664 signaling Effects 0.000 description 9
- 230000005236 sound signal Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000009467 reduction Effects 0.000 description 7
- 230000000670 limiting effect Effects 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 238000003491 array Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 230000001788 irregular Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000003032 molecular docking Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000004091 panning Methods 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- 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/0204—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 using subband decomposition
- G10L19/0208—Subband vocoders
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R5/00—Stereophonic arrangements
- H04R5/04—Circuit arrangements, e.g. for selective connection of amplifier inputs/outputs to loudspeakers, for loudspeaker detection, or for adaptation of settings to personal preferences or hearing impairments
-
- 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
-
- 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
- G10L2019/0001—Codebooks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/11—Positioning of individual sound objects, e.g. moving airplane, within a sound field
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Stereophonic System (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
总体地,描述了用于从比特流获得音频渲染信息的技术。一种渲染音频数据的方法,包含:在设备的接口处接收编码的音频比特流;将编码的音频比特流的编码的音频数据存储到设备的存储器中;由该设备的一个或多个处理器解析存储到存储器的编码的音频数据的一部分,以选择用于编码的音频数据的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;由该设备的一个或多个处理器使用所选择的渲染器来渲染编码的音频数据,以生成一个或多个渲染的扬声器馈送;以及由该设备的一个或多个扩音器输出一个或多个渲染的扬声器馈送。
Description
相关申请的交叉引用
本申请要求于2019年9月25日提交的美国申请第16/582,910号的优先权,该申请要求于2018年10月2日提交的美国临时申请序列号为62/740,260的题为“FLEXIBLERENDERING OF AUDIO DATA”的权益,通过引用将其全部内容并入本文,如同在此完整阐述一样。
技术领域
本公开涉及渲染信息,并且更具体地,涉及渲染音频数据的信息。
背景技术
在音频内容的制作期间,音响师可以使用特定的渲染器对音频内容进行渲染,以尝试针对用于再现该音频内容的扬声器的目标配置来定制音频内容。换句话说,音响师可以对音频内容进行渲染并使用以目标配置布置的扬声器回放渲染的音频内容。然后,音响师可以对音频内容的各个方面进行混音操作,渲染混音的音频内容,并再次使用以目标配置布置的扬声器来回放渲染的混音的音频内容。音响师可以这种方式进行迭代,直到音频内容提供某种艺术意图为止。用这种方法,音响师可以制作在回放期间提供某种艺术意图或以其他方式提供某种声场的音频内容(例如,与音频内容一起播放的视频内容)。
发明内容
通常,描述了用于在表示音频数据的比特流中指定音频渲染信息的技术。在各种示例中,本公开的技术提供了将音频内容制作期间使用的音频渲染器选择信息信令通知给回放设备的方式。反过来,回放设备可以使用信令通知的音频渲染器选择信息来选择一个或多个渲染器,并使用所选择的(多个)渲染器来渲染该音频内容。以这种方式提供渲染信息使得回放设备能够以音响师想要的方式渲染音频内容,从而可能确保音频内容的适当回放,使得听众能够保存并理解该艺术意图。
换句话说,根据本公开中描述的技术提供了由音响师在渲染期间使用的渲染信息,使得音频回放设备可以利用该渲染信息以音响师想要的方式来渲染音频内容,因此,与不提供此音频渲染信息的系统相比,确保在音频内容的制作和回放期间获得更一致的体验。而且,本公开的技术使得在保存声场的艺术意图时,回放能够利用声场的基于对象和立体混响声(ambisonic)表示两者。即,内容创建者设备或内容制作者设备可以实施本公开的技术以将渲染器标识信息信令通知给回放设备,从而使得回放的设备能够为声场表示的音频数据的相关部分选择适当的渲染器。
在一方面,本公开涉及一种配置为编码音频数据的设备。该设备包含存储器以及与该存储器进行通信的一个或多个处理器。存储器被配置为存储音频数据。该一个或多个处理器被配置为对音频数据进行编码以形成编码的音频数据,选择与编码的音频数据相关联的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个,以及生成编码的音频比特流,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。在一些实施方式中,该设备包含与存储器进行通信的一个或多个麦克风。在这些实施方式中,该一个或多个麦克风被配置为接收该音频数据。在一些实施方式中,该设备包含与该一个或多个处理器进行通信的接口。在这些实施方式中,该接口被配置为信令通知该编码的音频比特流。
在另一方面,本公开涉及一种对音频数据进行编码的方法。该方法包含将音频数据存储到设备的存储器中,以及由该设备的一个或多个处理器对该音频数据进行编码以形成编码的音频数据。该方法还包含由该设备的一个或多个处理器选择与编码的音频数据相关联的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个。该方法还包含由设备的一个或多个处理器生成编码的音频比特流,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。在一些非限制性示例中,该方法还包含由该设备的接口信令通知该编码的音频比特流。在一些非限制性示例中,该方法还包含由该设备的一个或多个麦克风接收该音频数据。
在另一方面,本公开涉及一种对音频数据进行编码的装置。该装置包含用于存储音频数据的部件,以及用于对该音频数据进行编码以形成编码的音频数据的部件。该装置还包含用于选择与该编码的音频数据相关联的渲染器的部件,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个。该装置还包含用于生成编码的音频比特流的部件,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。
在另一方面,本公开涉及一种用指令编码的非暂时性计算机可读存储介质。该指令在被执行时,使用于对音频数据进行编码的设备的一个或多个处理器将音频数据存储到该设备的存储器中,对该音频数据进行编码以形成编码的音频数据,选择与该编码的音频数据相关联的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个,以及生成编码的音频比特流,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。
在另一方面,本公开涉及一种配置为对音频数据进行渲染的设备。该设备包含存储器以及与该存储器进行通信的一个或多个处理器。存储器被配置为存储编码的音频比特流的编码的音频数据。该一个或多个处理器被配置为对存储到存储器的编码的音频数据的一部分进行解析,以选择用于编码的音频数据的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个,以及使用所选择的渲染器对编码的音频数据进行渲染,以生成一个或多个渲染的扬声器馈送。在一些实施方式中,该设备包含与该存储器进行通信的接口。在这些实施方式中,该接口被配置为接收该编码的音频比特流。在一些实施方式中,该设备包含与该一个或多个处理器进行通信的一个或多个扩音器。在这些实施方式中,该一个或多个扩音器被配置为输出该一个或多个渲染的扬声器馈送。
在另一方面,本公开涉及一种对音频数据进行渲染的方法。该方法包含将编码的音频比特流的编码的音频数据存储到设备的存储器中。该方法还包含由该设备的一个或多个处理器解析存储到存储器的编码的音频数据的一部分,以选择用于编码的音频数据的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个。该方法还包含由设备的一个或多个处理器使用所选择的渲染器来渲染编码的音频数据,以生成一个或多个渲染的扬声器馈送。在一些非限制性示例中,该方法还包含在该设备的接口处接收编码的音频比特流。在一些非限制性示例中,该方法还包含由该设备的一个或多个扩音器输出一个或多个渲染的扬声器馈送。
在另一方面,本公开涉及一种配置为对音频数据进行渲染的装置。该装置包含用于存储编码的音频比特流的编码的音频数据的部件;以及用于解析存储的编码的音频数据的一部分以选择用于编码的音频数据的渲染器的部件,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个。该装置还包含使用所选择的渲染器来渲染存储的编码的音频数据,以生成一个或多个渲染的扬声器馈送的部件。在一些非限制性示例中,该装置还包含接收编码的音频比特流的部件。在一些非限制性示例中,该装置还包含输出一个或多个渲染的扬声器馈送的部件。
在另一方面,本公开涉及一种用指令编码的非暂时性计算机可读存储介质。该指令在被执行时使得用于渲染音频数据的设备的一个或多个处理器将编码的音频比特流的编码的音频数据存储到设备的存储器中,解析存储到存储器的编码的音频数据的一部分以选择用于编码的音频数据的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个,并且使用所选择的渲染器来渲染编码的音频数据以生成一个或多个渲染的扬声器馈送。
在附图和以下说明书中将详细阐述该技术的一个或多个方面。根据说明书、附图和权利要求书,该技术的其他特征、目的和优点将是显而易见的。
附图说明
图1是示出可以执行本公开中描述的技术的各个方面的系统的图。
图2是更详细地示出图1的示例中所示的可以执行本公开中描述的技术的各个方面的音频编码设备的一个示例的框图。
图3是更详细地示出图1的音频解码设备的框图。
图4是示出针对对象域音频数据的常规工作流程的示例的图。
图5是示出常规工作流程的示例的图,其中将对象域音频数据转换到立体混响声域并使用(多个)立体混响声渲染器进行渲染。
图6是示出本公开的工作流程的图,根据该工作流程,从音频编码设备向音频解码设备信令通知渲染器类型。
图7是示出本公开的工作流程的图,根据该工作流程,从音频编码设备向音频解码设备信令通知渲染器类型和渲染器标识信息。
图8是示出根据本公开的技术的渲染器传输实施方式的本公开的工作流程的图。
图9是示出在执行本公开中描述的渲染技术的示例操作中,图1的音频编码设备的示例操作的流程图。
图10是示出在执行本公开中描述的渲染技术的示例操作中,图1的音频解码设备的示例操作的流程图。
具体实施方式
有许多不同的表示声场的方法。示例格式包含基于声道的音频格式、基于对象的音频格式和基于场景的音频格式。基于声道的音频格式指5.1环绕声格式、7.1环绕声格式、22.2环绕声格式或将音频声道本地化(localize)到听众周围特定位置以重建声场的任何其他基于声道的格式。
基于对象的音频格式可以指其中通常使用脉冲编解码调制(PCM)编码并称为PCM音频对象的音频对象被指定以表示声场的格式。这样的音频对象可以包含标识音频对象相对于声场中的听众或其他参考点的位置的元数据,使得可以将音频对象渲染成一个或多个扬声器声道进行回放,以试图重建声场。本公开中描述的技术可以应用于任何前述格式,包含基于场景的音频格式、基于声道的音频格式、基于对象的音频格式或其任意组合。
基于场景的音频格式可以包含元素的分层集合,这些元素在三个维度上定义了声场。元素的分层集合的一个示例是球谐系数(Spherical Harmonic Coefficient,SHC)集合。以下表达式演示了使用SHC对声场进行描述或表示:
该表达式显示,在时间t处,声场任何点处的压力pi都可以由SHC唯一地表示。在此,c是声速(343m/s),是参考点(或观察点),jn(·)是n阶的球贝塞尔函数,并且是n阶和m亚阶的球谐基函数(也可以称为球基函数)。公认的,方括号中的项是信号(即,)的频域表示,可以通过各种时频变换(诸如离散傅里叶变换(DFT)、离散余弦变换(DCT)或小波变换对信号进行近似。分层集合的其他示例包含小波变换系数集合和多分辨率基函数的其他系数集合。
可以通过各种麦克风阵列配置来物理地获取(例如,记录)SHC或者,可替代地,它们可以从声场的基于声道或基于对象的描述中导出。SHC(也可以称为立体混响声系数)表示基于场景的音频,其中,SHC可以被输入到音频编码器中,以获得可以促进更有效的传输或存储的编码的SHC。例如,可以使用涉及(1+4)2(25,因此是四阶)系数的四阶表示。
如上所述,SHC可以从使用麦克风阵列的麦克风录音导出。Poletti,M.在2005年11月的J.Audio Eng.Soc.,第53卷,第11号,第1004-1025页的“Three-Dimensional SurroundSound Systems Based on Spherical Harmonics”中描述了如何从麦克风阵列物理地获取SHC的各种示例。
其中i是 是n阶的球汉克尔函数(第二类),并且是对象的位置。已知对象源能量g(ω)是频率的函数(例如,使用时频分析技术,诸如对脉冲编解码PCM流执行快速傅里叶变换),可以将每个PCM对象及其对应位置转换为SHC此外,(由于上面的是线性和正交分解)可以看出每个对象的系数是可加的。以这种方式,多个PCM对象可以由系数表示(例如,作为单个对象的系数向量之和)。系数可以含有关于声场的信息(压力是3D坐标的函数),并且上述表示在观察点附近从单个对象到整个声场的表示的转换。
图1是示出可以执行本公开中描述的技术的各个方面的系统10的图。如图1的示例中所示,系统10包括内容创建者设备12和内容消费者设备14。尽管在内容创建者设备12和内容消费者设备14的上下文中进行了描述,但是可以在对声场的SHC(也可以称为立体混响声系数)或任何其他层表示进行编码的任何上下文中实施这些技术,以形成表示音频数据的比特流。此外,内容创建者设备12可以表示能够实施本公开中描述的技术的任何形式的计算设备,提供一些示例,包含手持机(或蜂窝电话)、平板计算机、智能电话或台式计算机。同样,内容消费者设备14可以表示能够实施本公开中描述的技术的任何形式的计算设备,提供一些示例,包含手持机(或蜂窝电话)、平板计算机、智能电话、机顶盒或台式计算机。
内容创建者设备12可以由电影制片厂或其他实体来操作,电影制片厂或其他实体可以生成多声道音频内容以供诸如内容消费者设备14的内容消费者设备的操作者消费。在一些示例中,内容创建者设备12可以由想要压缩立体混响声系数11B(“AMB COEFFS 11B”)的单个用户来操作。
立体混响声系数11B可以采取多种不同的形式。例如,麦克风5B可以使用用于声场的立体混响声表示的编解码方案,该编解码方案被称为混合阶立体混响声(MOA),如在2017年8月8日提交,标题为“MIXED-ORDER AMBISONICS(MOA)AUDIO DATA FO COMPUTER-MEDIATED REALITY SYSTEMS”的美国申请序列号为15/672,058并作为美国专利公开号20190007781在2019年1月3日出版的专利中更详细地讨论的。
为了生成声场的特定的MOA表示,麦克风5B可以生成立体混响声系数的完整集合的部分子集。例如,由麦克风5B生成的每个MOA表示可以提供针对声场的一些区域的精度,但是在其他区域中的精度较低。在一个示例中,声场的MOA表示可以包含八(8)个未压缩的立体混响声系数,而同一声场的三阶立体混响声表示可以包含十六(16)个未压缩的立体混响声系数。这样,作为立体混响声系数的部分子集生成的声场的每个MOA表示,可能比相同声场的从立体混响声系数生成的相应的三阶立体混响声表示的存储强度和带宽强度低(如果并当作为通过所示出的传输信道的比特流21的一部分传输时)。
立体混响声系数的另一示例形式包含一阶立体混响声(FOA)表示,其中与一阶球基函数和零阶球基函数相关联的所有立体混响声系数均用于表示声场。换句话说,麦克风5B可以使用给定阶数N的所有立体混响声系数来表示声场,而不是使用立体混响声系数的部分非零子集来表示声场,从而引起总立体混响声系数等于(N+1)2。
在这方面,立体混响声音频数据(这是在MOA表示或全阶表示中引用立体混响声系数的另一种方式,诸如上面提到的一阶表示)可以包含与具有一或更少(可以称为“一阶立体混响声音频数据”)阶数的球基函数相关联的立体混响声系数、与具有混阶和子阶(可以称为上述的“MOA表示”)的球基函数相关联的立体混响声系数、或与具有大于一阶(在上面被称为“全阶表示”)的球基函数相关联的立体混响声系数。
无论如何,内容创建者都可以结合视频内容生成音频内容(包含上述一种或多种形式的立体混响声系数)。内容消费者设备14可以由个人操作。内容消费者设备14可以包含音频回放系统16,音频回放系统16可以指能够渲染SHC(诸如立体混响声系数11B)以作为多声道音频内容回放的任何形式的音频回放系统。
内容创建者设备12包含音频编辑系统18。内容创建者设备12可以获得各种格式的现场录音7(包含直接作为立体混响声系数,作为基于对象的音频等)和音频对象9,内容创建者设备12可以使用音频编辑系统18对录音7和音频对象9进行编辑。麦克风5A和/或麦克风5B(“麦克风5”)可以捕获现场录音7。在图1的示例中,麦克风5A表示麦克风或麦克风集合,麦克风或麦克风集合被配置为或以其他方式可操作来捕获音频数据并生成表示所捕获的音频数据的基于对象和/或基于声道的信号。这样,现场录音7可以在各种用例场景中表示立体混响声系数、基于对象的音频数据、或其组合。
内容创建者可以在编辑过程中,渲染来自音频对象9的立体混响声系数11B,聆听渲染的扬声器馈送,以尝试标识需要进一步编辑的声场的各个方面。然后,内容创建者设备12可以编辑立体混响声系数11B(潜在地间接地通过操纵音频对象9中的不同的音频对象9,可以以上述方式从音频对象9导出源立体混响声系数)。内容创建者设备12可以使用音频编辑系统18来生成立体混响声系数11B。音频编辑系统18表示能够编辑音频数据并输出音频数据作为一个或多个源球谐系数的任何系统。
当编辑过程完成时,内容创建者设备12可以基于立体混响声系数11B生成比特流21。即,内容创建者设备12包含音频编码设备20,该音频编码设备20表示被配置为根据本公开中描述的技术的各个方面编码或以其他方式压缩立体混响声系数11B以生成比特流21的设备。作为一个示例,音频编码设备20可以生成比特流21以用于跨传输信道传输,该传输信道可以是有线或无线信道、数据存储设备等。在现场录音7用于制作立体混响声系数11B的情况下,比特流21的一部分可以表示立体混响声系数11B的编码版本。在现场录音7包含基于对象的音频信号的情况下,比特流21可以包含基于对象的音频数据11A的编码版本。无论如何,音频编码设备20可以生成包含主要比特流和其他侧(side)信息(诸如元数据)的比特流21,其在本文中也可以称为侧声道信息。
根据本公开的各方面,音频编码设备20可以生成包含与图1所示的音频渲染器1有关的渲染器选择信息的比特流21的侧声道信息。在一些示例中,音频编码设备20可以生成比特流21的侧声道信息,其指示是将音频渲染器1的基于对象的渲染器用于比特流21的音频数据的内容创建者侧渲染,还是将音频渲染器1的立体混响声渲染器用于比特流21的音频数据的内容创建者侧渲染。在一些示例中,如果音频渲染器1包含一个以上的立体混响声渲染器和/或一个以上的基于对象的渲染器,则音频编码设备20可以在比特流21的侧声道中包含附加的渲染器选择信息。例如,如果音频渲染器1包含适用于相同类型(对象或立体混响声)的音频数据的多个渲染器,则除了渲染器类型之外,音频编码设备20还可以在侧声道信息中包含渲染器标识符(或“渲染器ID”)。
根据本公开的技术的一些示例性实施方式,音频编码设备20可以在比特流21中信令通知标志一个或多个音频渲染器1的信息。例如,如果音频编码设备20确定音频渲染器1中特定的一个或多个用于比特流21的音频数据的内容创建者侧渲染,则音频编码设备20可以在比特流21中信令通知一个或多个矩阵,该矩阵标志所标识的(多个)音频渲染器1。用这种方法,根据本公开的这些示例实施方式,音频编码设备20可以经由比特流21的侧声道信息来直接提供应用一个或多个音频渲染器1所必需的数据,以供解码设备渲染经由比特流21信令通知的音频数据。在整个本公开中,其中音频编码设备20传输表示任何音频渲染器1的矩阵信息的实施方式被称为“渲染器传输”实施方式。
虽然在图1中被视为直接传输到内容消费者设备14,但是内容创建者设备12可以将比特流21输出到位于内容创建者设备12和内容消费者设备14之间的中间设备。中间设备可以存储比特流21,以便稍后传递到请求比特流的内容消费者设备14。中间设备可以包括文件服务器、web服务器、台式计算机、膝上型计算机、平板计算机、移动电话、智能电话或能够存储比特流21以供以后由音频解码器检索的任何其他设备。中间设备可以驻留在内容传递网络中,该内容传递网络能够向请求比特流21的诸如内容消费者设备14的订户流传输比特流21(并且可能与传输相应的视频数据比特流相结合)。
可替代地,内容创建者设备12可以将比特流21存储到诸如光盘、数字视频光盘、高清晰度视频光盘或其他存储介质的存储介质中,其中大多数存储介质能够被计算机读取,并且因此可以将存储介质称为计算机可读存储介质或非暂时性计算机可读存储介质。在此上下文中,传输信道可以指用来传输存储在介质上的内容的信道(并且可以包含零售商店和其他基于商店的传递机制)。因此,无论如何,本公开的技术不应该在这方面限于图1的示例。
如在图1的示例中进一步所示,内容消费者设备14包含音频回放系统16。音频回放系统16可以表示能够回放多声道音频数据的任何音频回放系统。音频回放系统16可以包含多个不同的渲染器22。每个渲染器22可以提供不同形式的渲染,其中不同形式的渲染可以包含执行基向量幅度相移(Vector-Base Amplitude Panning,VBAP)的各种方式中的一种或多种,和/或执行声场合成的各种方式中的一种或多种。如本文所用,“A和/或B”意味着“A或B”或“A和B”两者。
音频回放系统16还可以包含音频解码设备24。音频解码设备24可以表示被配置为从比特流21解码立体混响声系数11B'的设备,其中立体混响声系数11B'可以类似于立体混响声系数11B,但是由于有损操作(例如,量化)和/或经由传输信道的传输而不同。音频回放系统16可以在对比特流21进行解码之后获得立体混响声系数11B’,并且渲染立体混响声系数11B’以输出扩音器馈送25。扩音器馈送25可以驱动一个或多个扬声器3。
为了选择适当的渲染器,或者在某些情况下,生成适当的渲染器,音频回放系统16可以获得指示扩音器的数量和/或扩音器的空间几何形状的扩音器信息13。在一些情况下,音频回放系统16可以使用参考麦克风并以动态确定扩音器信息13的方式来驱动扩音器来获得扩音器信息13。在其他情况下或结合扩音器信息13的动态确定,音频回放系统16可以提示用户与音频回放系统16接口连接并输入扩音器信息13。
然后,音频回放系统16可以基于扩音器信息13选择音频渲染器22中的一个。在一些情况下,当音频渲染器22中的任何一个都不在扩音器信息13中指定的扩音器几何形状的某些阈值相似性度量(就扩音器几何形状而言)内时,音频回放系统16可以基于扩音器信息13生成音频渲染器22中的一个。在一些情况下,音频回放系统16可以基于扩音器信息13生成音频渲染器22中的一个,而无需首先尝试选择现有的音频渲染器22中的一个。然后,一个或多个扬声器3可以回放渲染的扩音器馈送25。
当扬声器3表示耳机的扬声器时,音频回放系统16可以利用渲染器22中的一个,该渲染器使用头部相关传递函数(HRTF)或能够为耳机扬声器回放渲染左右扬声器馈送25的其他功能来提供双耳渲染。术语“扬声器”或“换能器”通常可以指任何扬声器,包含扩音器、耳机扬声器等。然后,一个或多个扬声器3可以回放渲染的扬声器馈送25。
在一些情况下,音频回放系统16可以选择音频渲染器22中的任何一个,并且可以被配置为根据从其接收比特流21的源(诸如DVD播放器、蓝光播放器、智能手机、平板计算机、游戏系统和电视,以提供一些示例)选择音频渲染器22中的一个或多个。尽管可以选择音频渲染器22中的任何一个,但是由于内容是由内容创建者12使用音频渲染器中的一个,即,图1的示例中的音频渲染器5创建,因此在创建内容时经常使用的音频渲染器提供更好的(可能是最好的)渲染形式。选择音频渲染器22中的相同或至少接近(就渲染形式而言)的一个音频渲染器可以提供声场的更好表示,并且可以为内容消费者14带来更好的环绕声体验。
根据本公开中描述的技术,音频编码设备20可以生成包含音频渲染信息2(“渲染信息2”)的比特流21(例如,其侧声道信息)。音频渲染信息2可以包含信号值,该该信号值标识在生成多声道音频内容时使用的音频渲染器,即,在图1的示例中的一个或多个音频渲染器1。在一些情况下,信号值包含用于向多个扬声器馈送渲染球谐系数的矩阵。
如上所述,根据本公开的各个方面,音频编码设备20可以在比特流21的侧声道信息中包含音频渲染信息2。在这些示例中,作为音频渲染信息2的一部分,音频解码设备24可以解析比特流21的侧声道信息,以获得是将音频渲染器22的基于对象的渲染器用于渲染比特流21的音频数据,还是将音频渲染器22的立体混响声渲染器用于渲染比特流21的音频数据的指示。在一些示例中,如果音频渲染器22包含一个以上的立体混响声渲染器和/或一个以上的基于对象的渲染器,则作为音频渲染信息2的一部分,音频解码设备24可以从比特流21的侧声道信息获得附加的渲染器选择信息。例如,如果音频渲染器22包含适用于相同类型(对象或立体混响声)的音频数据的多个渲染器,则除了获得渲染器类型之外,作为音频渲染信息2的一部分,音频解码设备24还可以从比特流21的侧声道信息获得渲染器ID。
根据本公开的技术的渲染器传输实施方式,音频解码设备24可以在比特流21中信令通知标志一个或多个音频渲染器1的信息。在这些示例中,音频解码设备24可以从音频渲染信息2获得标志所标识的(多个)音频渲染器22的一个或多个矩阵,并使用矩阵/多个矩阵应用矩阵乘法来渲染基于对象的音频数据11A’和/或立体混响声系数11B'。以这种方法,根据本公开的这些示例实施方式,音频编码设备24可以经由比特流21直接接收应用一个或多个音频渲染器22所需的数据以渲染基于对象的音频数据11A’和/或立体混响声系数11B'。
换句话说并且如上所述,立体混响声系数(包含所谓的高阶立体混响声 HOA系数)可以表示一种基于空间傅立叶变换描述声场方向信息的方式。通常,立体混响声阶数N越高,空间分辨率越高,球谐(SH)系数的数量(N+1)^2越大,并且传输和存储数据所需的带宽也越大。HOA系数通常指具有与阶数大于1的球基函数相关联的立体混响声系数的立体混响声表示。
本描述的潜在优势是可以在大多数任何扩音器设置(例如5.1、7.1、22.2等)上重现此声场。从声场描述到M个扩音器信号的转换可以经由具有(N+1)2个输入和M个输出的静态渲染矩阵完成。因此,每个扩音器设置都可以需要专用的渲染矩阵。可能存在几种算法,用于计算期望的扩音器设置的渲染矩阵,可以针对某些客观或主观度量,诸如Gerzon标准,进行优化。对于不规则的扩音器设置,由于迭代的数值优化程序,例如凸优化,算法可能会变得复杂。
为了在不等待时间的情况下为不规则的扩音器布局计算渲染矩阵,拥有足够的可用计算资源可能是有益的。由于建筑限制和审美偏好,不规则的扩音器设置在家庭起居室环境中可能是常见的。因此,为了获得最佳的声场再现,可以优选针对这种场景优化的渲染矩阵,因为它可以更准确地再现声场。
因为音频解码器通常不需要太多的计算资源,所以该设备可能无法在消费者友好的时间内计算出不规则的渲染矩阵。本公开中描述的技术的各个方面可以提供如下使用基于云的计算方法:
1.音频解码器可以经由互联网连接将扩音器坐标(在某些情况下,和用校准麦克风获得的SPL测量)发送到服务器;
2.基于云的服务器可以计算渲染矩阵(并且可能还有几个不同的版本,使得客户以后可以从这些不同的版本中进行挑选);和
3.然后,服务器可以经由互联网连接将渲染矩阵(或不同版本的渲染矩阵)发送回音频解码器。
这种方法可以允许制造商保持较低的音频解码器制造成本(因为可能不需要强大的处理器来计算这些不规则的渲染矩阵),而且与通常为规则扬声器配置或几何形状设计的渲染矩阵相比,还可以促进更好的音频再现。在音频解码器上市后,还可以对用于计算渲染矩阵的算法进行优化,从而潜在地降低硬件翻修甚至召回的成本。在某些情况下,该技术还可以收集有关消费者产品的不同扩音器设置的多个信息,这可能对将来的产品开发有利。
再次,在某些情况下,图1中所示的系统可以如上所述,不将音频渲染信息2的信令结合在比特流21中,而是可以将该音频渲染信息2的信令用作与比特流21分离的元数据。可替代地或结合上述描述,图1中所示的系统可以如上所述,在比特流21中信令通知音频渲染信息2的一部分,并且将该音频渲染信息2的一部分作为与比特流21分离的元数据进行信令通知。在一些示例中,音频编码设备20可以输出该元数据,然后可以将该元数据上传到服务器或其他设备。然后,音频解码设备24可以下载或以其他方式检索该元数据,然后使用该元数据来增强音频解码设备24从比特流21中提取的音频渲染信息。下面描述根据该技术的渲染信息方面形成的比特流21。
图2是更详细地示出图1的示例中所示的音频编码设备20的一个示例的框图,音频编码设备20可以执行本公开中描述的技术的各个方面。音频编码设备20包含内容分析单元26,基于向量的分解单元27和基于方向的分解单元28。尽管下面简要描述,但是有关音频编码设备20以及压缩或以其他方式编码立体混响声系数的各个方面的更多信息可在2014年5月29日提交的标题为“INTERPOLATION FOR DECOMPOSED REPRESENTATIONS OF A SOUNDFIELD”并且公开号为WO 2014/194099的国际专利申请中获得。
音频编码设备20在图2中示出,其包含各种单元,下面将针对作为一个整体的音频编码设备20的特定功能来进一步描述每个单元。可以使用诸如一个或多个处理器的处理器硬件来实施音频编码设备20的各个单元。即,音频编码设备20的给定处理器可以实施以下针对所示出的单元之一或所示出的单元的多个单元所描述的功能。音频编码设备20的(多个)处理器可以包含处理电路(例如,固定功能电路、可编程处理电路或其任意组合)、专用集成电路(ASIC),诸如一个或多个硬件ASIC、数字信号处理器(DSP)、通用微处理器、现场可编程逻辑阵列(FPGA)或其他等效集成电路或离散逻辑电路。音频编码设备20的(多个)处理器可以被配置为使用其处理硬件来执行软件以执行以下针对所示出的单元描述的功能。
内容分析单元26表示被配置为分析基于对象的音频数据11A和/或立体混响声系数11B(统称为“音频数据11”)的内容的单元,以标识音频数据11是表示从现场录音、还是音频对象、还是两者产生的内容。内容分析单元26可以确定音频数据11是从实际声场的录音还是从人造音频对象生成的。在一些情况下,当音频数据11是从录音生成的(例如,成帧的立体混响声系数11B)时,内容分析单元26将成帧的立体混响声系数11B传递给基于向量的分解单元27。
在一些情况下,当音频数据11是从合成的音频对象生成的(例如,成帧的立体混响声系数11B)时,内容分析单元26将立体混响声系数11B传递给基于方向的合成单元28。基于方向的合成单元28可以表示被配置为执行立体混响声系数11B的基于方向的合成以生成基于方向的比特流21的单元。在音频数据11包含基于对象的音频数据11A的示例中,内容分析单元26将基于对象的音频数据11A传递给比特流生成单元42。
如图2的示例中所示,基于向量的分解单元27可以包含线性可逆变换(LIT)单元30、参数计算单元32、重排序单元34、前景选择单元36、能量补偿单元38、心理声学音频编解码器单元40、比特流生成单元42、声场分析单元44、系数减少单元46、背景(BG)选择单元48、空时内插单元50和量化单元52。
线性可逆变换(LIT)单元30以立体混响声声道的形式接收立体混响声系数11B,每个声道表示与给定阶数,子阶数的球基函数相关联的系数的块或帧(表示为HOA[k],其中k表示当前帧或样本块)。立体混响声系数11B的矩阵可以具有尺寸D:M×(N+1)2。
LIT单元30可以表示被配置为执行称为奇异值分解的形式的分析的单元。尽管针对SVD进行了描述,但是本公开中所描述的技术可以针对提供线性不相关、能量压缩的输出的集合的任何类似的变换或分解执行。而且,除非特别相反地指出,否则在本公开中对“集合”的引用通常旨在指非零集合,并且不旨在指包含所谓的“空集合”的集合的经典数学定义。可替代变换可以包括主要分量(component)分析,通常称为“PCA”。根据上下文,PCA可以用多个不同的名称来引用,列出几个示例,诸如离散Karhunen-Loeve变换、Hotelling变换、本征正交分解(POD)和特征值分解(EVD)。有助于压缩音频数据的潜在目标的此类操作的属性是多声道音频数据的“能量压缩”和“解相关”。
无论如何,为了示例的目的,假设LIT单元30执行奇异值分解(再次,可以称为“SVD”),则LIT单元30可以将立体混响声系数11B变换成两个或更多集合的变换的立体混响声系数。变换后的立体混响声系数的“集合”可以包含变换后的立体混响声系数的向量。在图3的示例中,LIT单元30可以针对立体混响声系数11B执行SVD以生成所谓的V矩阵、S矩阵和U矩阵。线性代数中的SVD可以按以下形式表示y-by-z实数矩阵或复数矩阵X的因式分解(其中X可以表示多声道音频数据,诸如立体混响声系数11B):
X=USV*
U可以表示y-by-y实数矩阵或复数矩阵,其中U的y列称为多声道音频数据的左奇异向量。S可以表示在对角线上具有非负实数的y-by-z矩形对角矩阵,其中S的对角线值被称为多声道音频数据的奇异值。V*(可以表示V的共轭转置)可以表示z-by-z实数单式矩阵或复数单式矩阵,其中V*的z列称为多声道音频数据的右奇异向量。
在一些示例中,以上所引用的SVD数学表达式中的V*矩阵被表示为V矩阵的共轭转置,以反映SVD可以被应用于包括复数的矩阵。当应用于仅包含实数的矩阵时,可以将V矩阵的复数共轭(或换句话说,V*矩阵)视为V矩阵的转置。在下文中,为了便于说明,假设立体混响声系数11B包括实数,结果是通过SVD输出V矩阵而不是V*矩阵。此外,尽管在本公开中被表示为V矩阵,但是在适当的情况下,应当将对V矩阵的引用理解为是指对V矩阵的转置。虽然假定是V矩阵,但是可以以类似的方式将技术应用于具有复数系数的立体混响声系数11B,其中SVD的输出是V*矩阵。因此,该技术不应仅限于提供生成V矩阵的SVD的应用,而是可以包含将SVD应用于具有复数分量的立体混响声系数11B以生成V*矩阵。
用这种方法,LIT单元30可以针对立体混响声系数11B执行SVD以输出具有尺寸D:M×(N+1)2的US[k]向量33(其可以表示S向量和U向量的组合版本),和具有尺寸D:(N+1)2×(N+1)2的V[k]向量35。US[k]矩阵中的单个向量元素也可以称为XPS(k),而V[k]矩阵中的单个向量也可以被称为v(k)。
对U、S和V矩阵的分析可以表明,这些矩阵承载或表示以上由X表示的潜在声场的空间和时间特性。U中的N个向量中的每个向量(长度为M个样本)都可以表示作为(由M个样本表示的时间段的)时间的函数的标准化的分离音频信号,它们彼此正交并且已经与任何空间特征(也可以称为方向信息)解耦。表示空间形状和位置(r、theta、phi)的空间特性替代地可以由V矩阵中的单个的第i个向量v(i)(k)(每个长度为(N+1)2)表示。每个v(i)(k)向量的各个元素都可以表示描述用于相关联的音频对象的声场的形状(包含宽度)和位置的立体混响声系数。
将U矩阵和V矩阵中的向量均进行标准化,使得其均方根能量等于1。U中的音频信号的能量因此由S中的对角线元素表示。将U和S相乘以形成US[k](具有单独的向量元素XPS(k)),因此用能量表示音频信号。SVD分解解耦音频时间信号(以U表示)、它们的能量(以S表示)和它们的空间特性(以V表示)的能力可以支持本公开中描述的技术的各个方面。此外,通过US[k]和V[k]的向量乘法合成潜在HOA[k]系数X的模型产生了在本文档中通篇使用的术语“基于向量的分解”。
尽管被描述为直接针对立体混响声系数11B执行,但是LIT单元30可以将线性可逆变换应用于立体混响声系数11B的导数。例如,LIT单元30可以针对从立体混响声系数11B导出的功率谱密度矩阵应用SVD。通过针对立体混响声系数的功率谱密度(PSD)而不是系数本身执行SVD,LIT单元30可以潜在地降低就处理器周期和存储空间中的一个或多个而言执行SVD的计算复杂度,同时获得与仿佛将SVD直接应用于立体混响声系数相同的源音频编码效率。
参数计算单元32表示被配置为计算各种参数的单元,诸如相关参数(R)、方向特性参数(θ,φ,r)和能量特性(e)。当前帧的每个参数可以表示为R[k]、θ[k]、r[k]和e[k]。参数计算单元32可以针对US[k]向量33执行能量分析和/或相关(或所谓的互相关)以标识参数。参数计算单元32还可以确定前一帧的参数,其中前一帧参数基于US[k-1]向量和V[k-1]向量的前一帧可表示为R[k-1]、θ[k-1]、r[k-1]和e[k-1]。参数计算单元32可以将当前参数37和以前的参数39输出到重排序单元34。
由参数计算单元32计算的参数可以由重排序单元34用来对音频对象进行重排序以表示其自然的评估或随时间的连续性。重排序单元34可以将来自第一US[k]向量33的每个参数37与用于第二US[k-1]向量33的每个参数39逐个(turn-wise)进行比较。重排序单元34可以基于当前参数37和以前的参数39对US[k]矩阵33和V[k]矩阵35内的各个向量进行重排序(作为示例,使用匈牙利算法)以将重排序的US[k]矩阵33'(可以数学地表示为)和重排序的V[k]矩阵35'(可以数学地表示为)输出到前景声音(或占优(predominant)声音-PS)选择单元36(“前景选择单元36”)和能量补偿单元38。
声场分析单元44可以表示被配置为针对立体混响声系数11B执行声场分析以便潜在地实现目标比特率41的单元。声场分析单元44可以基于分析和/或基于接收到的目标比特率41,确定心理声学编解码器实例化的总数(其可以是环境或背景声道的总数(BGTOT)和前景声道或,换句话说,占优声道的数目的函数。心理声学编解码器实例化的总数可以表示为numHOATransportChannels。
声场分析单元44还可以确定前景声道(nFG)45的总数、背景(或者换句话说,环境)声场的最小阶数(NBG,或者可替代地MinAmbHOAorder)、表示背景声场的最小阶数的相应实际声道数(nBGa=(MinAmbHOAorder+1)2)以及要发送的附加的BG立体混响声声道的索引(i)(其在图2的示例中可以统称为背景声道信息43),以再次潜在地实现目标比特率41。背景声道信息42也可以被称为环境声道信息43。numHOATransportChannels nBGa中剩余的每个声道都可以是“附加的背景/环境声道”、“基于活动向量的占优声道”、“基于活动方向的占优信号”或“完全不活动”。在一方面,可以通过两比特的语法元素来指示声道类型(作为“ChannelType”)(例如,00:基于方向的信号;01:基于向量的占优信号;10:附加环境信号;11:不活动信号)。背景或环境信号的总数nBGa可以由(MinAmbHOAorder+1)2+(在上述示例中)索引10作为用于该帧的比特流中的声道类型出现的次数给出。
声场分析单元44可以基于目标比特率41选择背景(或者换句话说,环境)声道的数量和前景(或者换句话说,占优)声道的数量,当目标比特率41相对较高时(例如,当目标比特率41等于或大于512Kbps时),选择更多的背景和/或前景声道。一方面,在比特流的头部分中,可以将numHOATransportChannels设置为8,同时可以将MinAmbHOAorder设置为1时。在这种场景下,在每个帧处,四个声道专用于表示声场的背景或环境部分,而其他四个声道则可以逐帧地根据声道类型而变化,例如,作为附加背景/环境声道或前景/占优声道。如上所述,前景/占优信号可以是基于向量或基于方向的信号中的一个。
在某些情况下,用于一帧的基于向量的占优信号的总数可以由该帧的比特流中ChannelType索引为01的次数给出。在以上方面中,对于每个附加的背景/环境声道(例如,对应于ChannelType为10),可以在该声道中表示可能的立体混响声系数(超出前四个)中的哪个的对应信息。用于四阶HOA内容的信息可以是指示HOA系数5-25的索引。当将minAmbHOAorder设置为1时,可以一直发送前四个环境HOA系数1-4,因此音频编码设备可以只需要指示索引为5-25的附加环境HOA系数中的一个。因此(对于4阶内容)可以使用5比特的语法元素来发送该信息,该语法元素可以表示为“CodedAmbCoeffIdx”。无论如何,声场分析单元44将背景声道信息43和立体混响声系数11B输出到背景(BG)选择单元36,将背景声道信息43输出到系数减少单元46和比特流生成单元42,并且将nFG45输出到前景选择单元36。
背景选择单元48可以表示被配置为基于背景声道信息(例如,背景声场(NBG)和要发送的附加BG立体混响声声道的数量(nBGa)和索引(i))来确定背景或环境立体混响声系数47的单元。例如,当NBG等于1时,背景选择单元48可以为具有等于或小于1的阶数的音频帧的每个样本选择立体混响声系数11B。在该示例中,然后,背景选择单元48可以选择具有由索引(i)中的一个标识的索引的立体混响声系数11B作为附加的BG立体混响声系数,其中将nBGa提供给比特流生成单元42以在比特流21中指定以便启用音频解码设备,诸如图2和图4的示例中所示的音频解码设备24,来从比特流21解析背景立体混响声系数47。然后,背景选择单元48可以将环境立体混响声系数47输出到能量补偿单元38。环境立体混响声系数47可以具有尺寸D:M×[(NBG+1)2 +nBGa]。环境立体混响声系数47也可以被称为“环境立体混响声系数47”,其中,环境立体混响声系数47中的每个对应于将由心理声学音频编解码器单元40编码的单独的环境立体混响声声道47。
前景选择单元36可以表示被配置为基于nFG 45(其可以表示标识前景向量的一个或多个索引)选择表示声场的前景或不同分量的重新排序的US[k]矩阵33′和重新排序的V[k]矩阵35′的单元。前景选择单元36可以将nFG信号49(其可以表示为重新排序的US[k]1,...,nFG 49,FG...,nfG[k]49,或49)输出到心理声学音频编解码器单元40,其中nFG信号49可以具有尺寸D:M×nFG,每个表示单音频对象。前景选择单元36还可以将与声场的前景分量相对应的重新排序的V[k]矩阵35′(或v(1...nFG)(k)35′)输出到空时内插单元50,其中,与前景分量相对应的重新排序的V[k]矩阵35’的子集可以被表示为具有尺寸D:(N+1)2×nFG的前景V[k]矩阵51k(其可以数学地表示为)。
能量补偿单元38可以表示被配置为针对环境立体混响声系数47执行能量补偿,以补偿由于背景选择单元48去除了各种立体混响声声道而导致的能量损失的单元。能量补偿单元38可以针对重新排序的US[k]矩阵33′、重新排序的V[k]矩阵35′、nFG信号49、前景V[k]向量51k以及环境立体混响声系数47中的一个或多个执行能量分析,然后,根据基于能量分析执行能量补偿,以生成能量补偿的环境立体混响声系数47′。能量补偿单元38可以将能量补偿的环境系数47’输出到心理声学音频编解码器单元40。
空时内插单元50可以表示被配置为接收第k帧的前景V[k]向量51k和前一帧(因此,记为k-1)的前景V[k-1]向量51k-1,并执行时空内插以生成内插的前景V[k]向量的单元。空时内插单元50可以将nFG信号49与前景V[k]向量51k重组,以恢复重新排序的前景立体混响声系数。空时内插单元50然后可以将重新排序的前景立体混响声系数除以内插的V[k]向量,以生成内插的nFG信号49′。
空时内插单元50还可以输出用于生成内插的前景V[k]向量的前景V[k]向量51k,使得诸如音频解码设备24的音频解码设备可以生成内插的前景V[k]向量,从而恢复前景V[k]向量51k。用于生成内插的前景V[k]向量的前景V[k]向量51k被表示为剩余前景V[k]向量53。为了确保在编码器和解码器处使用相同的V[k]和V[k-1](以创建内插的向量V[k]),可以在编码器和解码器处使用向量的量化(quantized)/等化(dequantized)版本。空时内插单元50可以将内插的nFG信号49’输出到心理声学音频编解码器单元46,并且将内插的前景V[k]向量51k输出到系数减少单元46。
系数减少单元46可以表示被配置为基于背景声道信息43针对剩余前景V[k]向量53执行系数减少以将减少的前景V[k]向量55输出到量化单元52的单元。减少的前景V[k]向量55可以具有尺寸D:[(N+1)2(NBG+1)2-BGTOT]×nFG。在这方面,系数减少单元46可以表示被配置为减少剩余前景V[k]向量53中的系数的数量的单元。换句话说,系数减少单元46可以表示被配置为消除几乎没有方向信息的前景V[k]向量(形成剩余前景V[k]向量53的前景向量)中的系数的单元。
在一些示例中,不同系数或换句话说,对应于一阶和零阶基函数(其可以表示为NBG)的前景V[k]向量提供少量的方向信息,因此可以从前景V向量中(通过可以称为“系数减少”的过程)移除。在该示例中,可以提供更大的灵活性,不仅可以标识对应于NBG的系数,还可以标识来自[(NBG+1)2+1,(N+1)2]的集合的附加立体混响声道[其可以表示为变量TotalOfAddAmbHOAChan)。
量化单元52可以表示被配置为执行任何形式的量化以压缩减少的前景V[k]向量55以生成编解码的前景V[k]向量57,并将编解码的前景V[k]向量57输出到比特流生成单元42的单元。在操作中,量化单元52可以表示被配置为压缩声场的空间分量的单元,即,在示例中减少的前景V[k]向量55中的一个或多个。量化单元52可以执行以下12种量化模式中的任何一种,如由表示为“NbitsQ”的量化模式语法元素所指示的:
NbitsQ值 量化模式的类型
0-3: 保留
4: 向量量化
5: 没有霍夫曼编解码的标量量化
6: 具有霍夫曼编解码的6-比特标量量化
7: 具有霍夫曼编解码的7-比特标量量化
8: 具有霍夫曼编解码的8-比特标量量化
… …
16: 具有霍夫曼编解码的16-比特标量量化
量化单元52还可执行任何前述类型的量化模式的预测版本,其中确定前一帧的V向量的元素(或执行向量量化时的权重)与当前帧的V向量的元素(或执行向量量化时的权重)之间的差。然后,量化单元52可以量化当前帧和前一帧的元素或权重之间的差,而不是当前帧本身的V向量的元素的值。
量化单元52可以针对每个减少的前景V[k]向量55执行多种形式的量化,以获得减少的前景V[k]向量55的多个编解码版本。量化单元52可以选择减少的前景V[k]向量55的编解码版本之一作为编码的前景V[k]向量57。换句话说,量化单元52可以选择未预测的向量量化的V向量、预测的向量量化的V向量、非霍夫曼编解码的标量量化的V向量和霍夫曼编解码的标量量化的V向量中的一个,用作基于本公开中讨论的标准的任意组合的输出的切换量化的V向量。
在一些示例中,量化单元52可以从包含向量量化模式和一个或多个标量量化模式的量化模式集合中选择量化模式,并且基于(或根据)所选择的模式来量化输入的V向量。然后,量化单元52可以将未预测的向量量化的V向量(例如,权重值或表示其的比特方面)、预测的向量量化的V向量(例如,误差值或表示其的比特方面)、非霍夫曼编解码的标量量化的V向量和霍夫曼编解码的标量量化的V向量中的选择的一个作为编解码的前景V[k]向量57提供给比特流生成单元52。量化单元52还可提供指示量化模式的语法元素(例如,NbitsQ语法元素)以及用于反量化或以其他方式重构V向量的任何其他语法元素。
包含在音频编码设备20中的心理声学音频编解码器单元40可以表示心理声学音频编解码器的多个实例,每个实例都被用来对内插的nFG信号49’和能量补偿的环境立体混响声系数47'中的每一个的不同音频对象或立体混响声声道进行编码以生成编码的编码的nFG信号61和编码的环境立体混响声系数59。心理声学音频编解码器单元40可以将编码的环境立体混响声系数59和编码的nFG信号61输出到比特流生成单元42。
包含在音频编码设备20中的比特流生成单元42表示对数据进行格式化以使其符合已知格式(其可以指解码设备已知的格式)的单元,从而生成基于向量的比特流21。换句话说,比特流21可以表示已经以上述方式编码的编码音频数据。
在一些示例中,比特流生成单元42可以表示多路复用器,该多路复用器可以接收编解码的前景V[k]向量57、编码的环境立体混响声系数59、编码的nFG信号61和背景声道信息43。比特流生成单元42可以基于编解码的前景V[k]向量57、编码的环境立体混响声系数59、编码的nFG信号61和背景声道信息43生成比特流21。这样,比特流生成单元42可以由此在比特流21中指定向量57以获得比特流21。比特流21可以包含重要或主要比特流以及一个或多个侧声道比特流。
如上所述,技术的各个方面还可以使比特流生成单元42能够在比特流21中或与比特流21并行地指定音频渲染信息2。尽管即将到来的3D音频压缩工作草案的当前版本在比特流21内提供信令通知特定的下混矩阵(downmix matrice),但是工作草案并不在比特流21中提供指定用于渲染基于对象的音频数据11A或立体混响声系数11B的渲染器。对于AMBISONIC内容,此类下混矩阵的等同物是将立体混响声表示转换为期望的扩音器馈送的渲染矩阵。对于对象域中的音频数据,该等同物是一个渲染矩阵,使用矩阵乘法来应用该渲染矩阵以将基于对象的音频数据渲染为扩音器馈送。
本公开中描述的技术的各个方面提出通过允许比特流生成单元46在比特流21或其侧声道/元数据(例如,作为音频渲染信息2)中信令通知渲染器选择信息(例如,与基于对象的渲染器选择相对的立体混响声)、渲染器标识信息(例如,音频编码设备20和音频解码设备24两者都可访问的码本中的条目)、和/或渲染矩阵本身来进一步协调声道内容和立体混响声系数的特征集。
音频编码设备20可以包含组合的或离散的处理硬件,该处理硬件被配置为执行上述的基于立体混响声或基于对象的编码功能之一或两者(视情况而定),以及执行本公开的渲染器选择和基于信令通知的技术。音频编码设备20包含的用于执行立体混响声编码、基于对象的编码和基于渲染器的技术中的一种或多种的处理硬件可以包含作为一个或多个处理器。音频编码设备20的这些(多个)处理器可以包含处理用于一个或多个立体混响声编码、基于对象的音频编码、和/或渲染器选择和/或基于信令通知的技术的电路(例如,固定功能电路、可编程处理电路或其任意组合)、专用集成电路(ASIC),诸如一个或多个硬件ASIC、数字信号处理器(DSP)、通用微处理器、现场可编程逻辑阵列(FPGA)或其他等效集成电路或离散逻辑电路。音频编码设备20的这些处理器可以被配置为使用其处理硬件来执行软件以发挥以上描述的功能。
下表1是语法表,其提供了音频编码设备20可以信令通知音频解码设备24以提供渲染器信息2的示例数据的详细内容。表1中用“/*”和“*/”标记书写的注释语句提供了与之相邻放置的相应语法的描述性信息。
表1-OBJrendering()的语法
表1的语义描述如下:
a.RendererFlag_OBJ_HOA:为了保证内容制作者的艺术意图,比特流语法包含一个比特的字段,该比特字段说明应使用OBJ渲染器(1)还是立体混响声渲染器(0)。
b.RendererFlag_ENTIRE_SEPARATE:如果为1,则所有对象应基于RendererFlag_OBJ_HOA被渲染。如果为0,则每个对象应基于RendererFlag_OBJ_HOA被渲染。
c.RendererFlag_External_Internal:如果为1,则可以使用外部渲染器(如果外部渲染器不可用,则应使用ID为0的参考渲染器)。如果为0,则应使用内部渲染器。
d.RendererFlag_Transmitted_Reference:如果为1,则应使用传输的(多个)渲染器中的一个。如果为0,则应使用(多个)参考渲染器中的一个。
e.rendererID:它指示渲染器ID。
下表2是语法表,其提供了根据本公开的“软”渲染方面的音频编码设备20可以信令通知给音频解码设备24以提供渲染器信息2的数据的另一个示例的详细信息。与上表1的情况一样,在表2中用“/*”和“*/”标记书写的注释语句提供了与之相邻放置的相应语法的描述性信息。
表2-SoftOBJrendering()的语法
表2的语义描述如下:
a.SoftRendererParameter_OBJ_HOA:为了保证内容制作者的艺术意图,比特流语法包含一个针对OBJ和立体混响声渲染器之间的软渲染参数的比特字段。
b.RendererFlag_ENTIRE_SEPARATE:如果为1,则所有的对象应基于RendererFlag_OBJ_HOA渲染。如果为0,则每个对象应基于RendererFlag_OBJ_HOA渲染。
c.RendererFlag_External_Internal:如果为1,则可以使用外部渲染器(如果外部渲染器不可用,则应使用ID为0的参考渲染器)。如果为0,则应使用内部渲染器。
d.RendererFlag_Transmitted_Reference:如果为1,则应使用传输的(多个)渲染器中的一个。如果为0,则应使用(多个)参考渲染器中的一个。
e.rendererID:它指示渲染器ID。
f.alpha:软渲染参数(0.0和1.0之间)
渲染器输出=alpha*对象渲染器输出+(1-alpha)*立体混响声渲染器输出。
音频编码设备20的比特流生成单元42可以将以比特流21表示的数据提供给接口73,该接口73转而可以以比特流21的形式将数据信令通知给外部设备。接口73可以包含各种类型的通信硬件,或者可以是各种类型的通信硬件,或者可以是各种类型的通信硬件的一部分,诸如网络接口卡(例如,以太网卡)、光收发器、射频收发器或可以接收(并潜在地发送)信息的任何其他类型的设备。可以由接口73表示的此类网络接口的其他示例包含3G、4G、5G和无线电。接口73还可以根据通用串行总线(USB)标准的任何版本来实现。这样,接口73使音频编码设备20能够与诸如网络设备的外部设备无线地或者使用有线连接或其组合来进行通信。这样,音频编码设备20可以实施本公开的各种技术以在比特流21中或与比特流21一起向音频解码设备24提供渲染器相关信息。下面针对图3描述关于音频解码设备24如何使用在比特流21中或与比特流21一起接收的渲染器相关信息的更多细节。
图3是更详细地示出图1的音频解码设备24的框图。如图4的示例所示,音频解码设备24可以包含提取单元72、渲染器重构单元81、基于方向性的重构单元90和基于向量的重构单元92。尽管下面描述,但是有关音频解码设备24以及解压缩或以其他方式解码立体混响声系数的各个方面的更多信息可在2014年5月29日提交的标题为“INTERPOLATION FORDECOMPOSED REPRESENTATIONS OF A SOUND FIELD”并且公布号为WO 2014/194099的国际专利申请中获得。
音频解码设备24在图3中示出,其包含各种单元,下面将针对作为一个整体的音频解码设备24的特定功能来进一步描述每个单元。可以使用诸如一个或多个处理器的处理器硬件来实施音频解码设备24的各个单元。即,音频解码设备24的给定处理器可以实施以下针对所示出的单元之一或所示出的单元的多个单元所描述的功能。音频解码设备24的(多个)处理器可以包含处理电路(例如,固定功能电路、可编程处理电路或其任意组合)、专用集成电路(ASIC),诸如一个或多个硬件ASIC、数字信号处理器(DSP)、通用微处理器、现场可编程逻辑阵列(FPGA)或其他等效集成电路或离散逻辑电路。音频解码设备24的(多个)处理器可以被配置为使用其处理硬件来运行软件以发挥以下针对所示出的单元描述的功能。
音频解码设备24包含接口91,该接口91被配置为接收比特流21并将其数据中继到提取单元72。接口91可以包含各种类型的通信硬件,或者可以是各种类型的通信硬件,或者可以是各种类型的通信硬件的一部分,诸如网络接口卡(例如,以太网卡)、光收发器、射频收发器或可以接收(并潜在地发送)信息的任何其他类型的设备。可以由接口91表示的此类网络接口的其他示例包含3G、4G、5G和无线电。接口91还可以根据通用串行总线(USB)标准的任何版本来实现。这样,接口91使音频解码设备24能够与诸如网络设备的外部设备无线地或者使用有线连接或其组合来进行通信。
提取单元72可以表示被配置为接收比特流21,并提取音频渲染信息2和基于对象的音频数据11A和/或立体混响声系数11B的各种编码版本(例如,基于方向的编码版本或基于向量的编码版本)的单元。根据本公开的技术的各种示例,提取单元72可以从音频渲染信息2获得关于是否使用音频渲染器22的立体混响声渲染器或对象域渲染器的指示、要使用的特定渲染器的渲染器ID(在音频渲染器22包含多个立体混响声渲染器或多个基于对象的渲染器的情况下)、或要添加到音频渲染器22的渲染矩阵/多个渲染矩阵中的一个或多个,用于渲染比特流21的音频数据11。例如,在本公开的基于渲染器传输的实施方式中,立体混响声和/或对象域渲染矩阵可以由音频编码设备20传输以实现对音频回放系统16处的渲染过程的控制。
在立体混响声渲染矩阵的情况下,可以借助上面所示的类型ID_CONFIG_EXT_HOA_MATRIX的mpegh3daConfigExtension来促进传输。mpegh3daConfigExtension可以含有用于不同扩音器再现配置的几个立体混响声渲染矩阵。当传输立体混响声渲染矩阵时,音频编码设备20针对每个立体混响声渲染矩阵信号信令通知相关联的目标扩音器布局,该目标扩音器布局与HoaOrder一起确定渲染矩阵的尺寸。当传输基于对象的渲染矩阵时,音频编码设备20针对每个基于对象的渲染矩阵信号信令通知相关联的目标扩音器布局,该目标扩音器布局确定渲染矩阵的尺寸。
唯一的HoaRenderingMatrixId的传输允许参考在音频回放系统16处可用的默认立体混响声渲染矩阵,或者参考从音频比特流21的外部传输的立体混响声渲染矩阵。在一些情况下,假定每个立体混响声渲染矩阵都在N3D中进行了标准化,并且遵循在比特流21中定义的立体混响声系数的顺序。在音频解码设备24在比特流21中接收渲染器ID的情况下,音频解码设备24可以将接收到的渲染器ID与码本的条目进行比较。在码本中检测到匹配之后,音频解码设备24可以选择匹配的音频渲染器22以渲染音频数据11(是在对象域中还是在立体混响声域中视情况而定)。
此外,如上所述,技术的各个方面还可以使提取单元72能够从比特流21的数据或与比特流21并行地信令通知的侧声道信息的数据中解析音频渲染信息2。尽管即将到来的3D音频压缩工作草案的当前版本提供在比特流21中信令通知特定的下混矩阵,但是工作草案并不是提供在比特流21中指定用于渲染基于对象的音频数据11A或立体混响声系数11B的渲染器。对于立体混响声内容,此类下混矩阵的等同物是将立体混响声表示转换为期望的扩音器馈送的渲染矩阵。对于对象域中的音频数据,该等同物是一个渲染矩阵,使用矩阵乘法应用该渲染矩阵以将基于对象的音频数据渲染成扩音器馈送。
音频解码设备24可以包含组合的或离散的处理硬件,该处理硬件被配置为执行上述的基于立体混响声或基于对象的解码功能之一或两者(视情况而定),以及执行本公开的基于渲染器选择的技术。音频解码设备24包含的用于执行立体混响声解码、基于对象的解码和基于渲染器的技术中的一种或多种的处理硬件可以包含作为一个或多个处理器。音频解码设备24的这些处理器可以包含用于一个或多个立体混响声解码、基于对象的音频解码、和/或渲染器选择技术的处理电路(例如,固定功能电路、可编程处理电路或其任意组合)、专用集成电路(ASIC),诸如一个或多个硬件ASIC、数字信号处理器(DSP)、通用微处理器、现场可编程逻辑阵列(FPGA)或其他等效集成电路或离散逻辑电路。音频解码设备24的这些处理器可以被配置为使用其处理硬件来执行软件以发挥以上描述的功能。
在本公开中描述的技术的各个方面提出通过允许音频解码设备24以音频渲染信息2的形式获得渲染器选择信息(例如,与基于对象的渲染器选择相对的立体混响声)、渲染器标识信息(例如,音频编码设备20和音频解码设备24两者都可访问的码本中的条目)、和/或来自比特流21本身或来自其侧声道/元数据的渲染矩阵本身来进一步协调声道内容和立体混响声的特征集。
如上面针对表1的语义所讨论的,在一个示例中,音频解码设备24可以在比特流21中接收以下语法元素中的一个或多个:RendererFlag_OBJ_HOA标记、RendererFlag_Transmitted_Reference标记或RendererFlag_ENTIRE_SEPARATE标记、RendererFlag_External_Internal、或rendererID语法元素。音频解码设备24可以利用RendererFlag_OBJ_HOA标记的值来保持内容制作者的艺术意图。也就是说,如果RendererFlag_OBJ_HOA标记的值是1,则音频解码设备24可以从音频渲染器22中选择基于对象的渲染器(OBJ渲染器),以渲染从比特流21获得的音频数据11'的对应部分。相反地,如果音频解码设备24确定RendererFlag_OBJ_HOA标记的值是0,则音频解码设备24可以从音频渲染器22中选择立体混响声渲染器以渲染从比特流21获得的音频数据11'的对应部分。
音频解码设备24可以使用RendererFlag_ENTIRE_SEPARATE标记的值来确定RendererFlag_OBJ_HOA的值适用的级别。例如,如果音频解码设备24确定RendererFlag_ENTIRE_SEPARATE标记的值为1,则音频解码设备24可以基于RendererFlag_OBJ_HOA标记的单个实例的值来渲染比特流21的所有音频对象。相反地,如果音频解码设备24确定RendererFlag_ENTIRE_SEPARATE标记的值为0,则音频解码设备24可以基于RendererFlag_OBJ_HOA标记的各自相应的实例的值来单独渲染比特流21的每个音频对象。
另外,音频解码设备24可以使用RendererFlag_External_Internal标记的值来确定是将音频渲染器22的外部渲染器还是内部渲染器用于渲染比特流21的相应部分。如果RendererFlag_External_Internal标记被设置为值1,则只要外部渲染器可用,音频解码设备24就可以使用外部渲染器来渲染比特流21的相应音频数据。如果将RendererFlag_External_Internal标记设置为值1,并且音频解码设备24确定外部渲染器不可用,则音频解码设备可以使用ID为0的参考渲染器(作为默认选项)来渲染比特流21的相应音频数据。如果RendererFlag_External_Internal标记被设置为值0,则音频解码设备24可以使用音频渲染器22的内部渲染器来渲染比特流21的相应音频数据。
根据本公开的技术的渲染器传输实施方式,音频解码设备24可以使用RendererFlag_Transmitted_Reference标记的值来确定是否使用在比特流21中显式地信令通知的渲染器(例如,渲染矩阵)来渲染相应的音频数据,或者绕过任何显式渲染的渲染器,而使用参考渲染器来渲染比特流21的相应音频数据。如果音频解码设备24确定RendererFlag_Transmitted_Reference标记的值为1,则音频解码设备24可以确定传输的(多个)渲染器中的一个将用于渲染比特流21的相应音频数据。相反地,如果音频解码设备24确定RendererFlag_Transmitted_Reference标记的值是0,则音频解码设备24可以确定音频渲染器22的(多个)参考渲染器中的一个将用于渲染比特流21的相应音频数据。
在一些示例中,如果音频编码设备20确定可访问音频解码设备24的音频渲染器22可能包含相同类型的多个渲染器(例如,多个立体混响声渲染器或多个基于对象的渲染器),则音频编码设备可以在比特流21中信令通知rendererID语法元素。音频解码设备24转而可以将接收到的rendererID语法元素的值与码本中的条目进行比较。在检测到接收到的rendererID语法元素的值与码本中的特定条目之间匹配时,音频解码设备24:它指示渲染器ID。
本公开还包含各种“软”渲染技术。在上面的表2中给出了本公开的各种软渲染技术的语法。根据本公开的软渲染技术,音频解码设备可以从比特流21中解析SoftRendererParameter_OBJ_HOA比特字段。音频解码设备24可以基于针对SoftRendererParameter_OBJ_HOA比特字段从比特流21解析的(多个)值来保留内容制作者的艺术意图。例如,根据本公开的软渲染技术,音频解码设备24可以输出渲染的对象域音频数据和渲染的立体混响声域音频数据的加权组合。
根据本公开的软渲染技术,音频解码设备24可以以与上文描述的关于本公开的渲染器选择技术的其他实施方式类似的方式来使用RendererFlag_ENTIRE_SEPARATE标记、RendererFlag_OBJ_HOA标记、RendererFlag_External_Internal标记、RendererFlag_Transmitted_Reference标记和rendererID语法元素。根据本公开的软渲染技术,音频解码设备24可以额外解析alpha语法元素以获得软渲染参数值。可以将alpha语法元素的值设置在0.0的下界(底限)和1.0的上界(上限)之间。为了实施本公开的软渲染技术,音频解码设备可以执行以下操作以获得渲染输出:
alpha*对象渲染器输出+(1-alpha)*立体混响声渲染器输出
图4是示出针对对象域音频数据的工作流程的示例的图。有关常规基于对象的音频数据处理的附加的详细信息,请参见ISO/IEC FDIS 23008-3:2018(E),Informationtechnology—High efficiency coding and media delivery in heterogeneousenvironments—第3部分:3D音频。
如在图4的示例中所示,可以表示图1的示例中所示的音频编码设备20的另一示例的对象编码器202,可以针对输入的对象音频和对象元数据(这是引用对象域音频数据的另一种方式)执行对象编码(例如,根据上面直接引用的MPEG-H 3D音频编码标准)以获得比特流21。对象编码器202还可以输出用于对象渲染器的渲染器信息2。
然后,对象解码器204(其可以表示音频解码设备24的另一示例)可以针对比特流21执行音频解码(例如,根据上面引用的MPEG-H 3D音频编码标准),以获得基于对象的音频数据11A'。对象解码器204可以将基于对象的音频数据11A’输出到渲染矩阵206,渲染矩阵206可以表示图1的示例中所示的音频渲染器22的示例。音频回放系统16可以基于渲染信息2或从任何对象渲染器中选择渲染矩阵206。无论如何,渲染矩阵206都可以根据基于对象的音频数据11A'输出扬声器馈送25。
图5是示出工作流程的示例的图,其中将对象域音频数据转换到立体混响声域并使用(多个)立体混响声渲染器来渲染。也就是说,音频回放系统16调用立体混响声转换单元208,以将基于对象的音频数据11A’从空间域转换为球谐域,从而获得立体混响声系数209(以及可能的HOA系数209)。然后,音频回放系统16可以选择渲染矩阵210,该渲染矩阵被配置为渲染包含立体混响声系数209的立体混响声音频数据,以获得扬声器馈送25。
为了用(多个)立体混响声渲染器(诸如一阶立体混响声渲染器或更高阶立体混响声渲染器)渲染基于对象的输入,音频渲染设备可以应用以下步骤:
将OBJECT输入转换为第N阶立体混响声,H:
其中M,α(rm)、Am(t)和τm分别是对象的数量、给定对象距离rm的听众位置处的第m个增益因子、第m个音频信号向量以及听众位置处的第m个音频信号的延迟。当音频对象和听众位置之间的距离小时,增益α(rm)可能变得非常大,因此设置了该增益的阈值。该增益是使用波传播的格林函数计算的。是球谐的向量,其中是n阶和m子阶的球谐。在听众位置处计算第m个音频信号的方位角θm和仰角
将立体混响声信号H渲染(双声道)成双耳音频输出B:
B=R(H)
其中,R(·)是双耳渲染器。
图6是示出本公开的工作流程的图,根据该工作流程,从音频编码设备202向音频解码设备204信令通知渲染器类型。根据图6示出的工作流程,音频编码设备202可以将关于哪种类型的渲染器将用于渲染比特流21的音频数据的信息传输到音频解码设备204。根据图6示出的工作流程,音频解码设备24可以使用信令通知的信息(存储为音频渲染信息2)来选择在解码器端可用的任何对象渲染器或任何立体混响声渲染器,例如一阶立体混响声渲染器或更高阶立体混响声渲染器。例如,图6示出的工作流程可以使用上面针对表1和2描述的RendererFlag_OBJ_HOA标记。
图7是示出本公开的工作流程的图,根据该工作流程,从音频编码设备202向音频解码设备204信令通知渲染器类型和渲染器标识信息。根据图7示出的工作流程,音频编码设备202可以将关于渲染器类型的信息2以及将关于哪个特定的渲染器将用于渲染比特流21的音频数据的信息传输到音频解码设备204。根据图7示出的工作流程,音频解码设备204可以使用信令通知的信息(存储为音频渲染信息2)来选择在解码器端可用的特定对象渲染器或特定立体混响声渲染器。
例如,图6示出的工作流程可以使用上面针对表1和2描述的RendererFlag_OBJ_HOA标记和rendererID语法元素。图7示出的工作流程在音频渲染器22包含多个立体混响声渲染器和/或多个基于对象的渲染器以供选择的场景中可能特别有用。例如,音频解码设备204可以将rendererID语法元素的值与码本中的条目匹配,以确定使用哪个特定的音频渲染器22来渲染音频数据11'。
图8是示出根据本公开的技术的渲染器传输实施方式的本公开的工作流程的图。根据图8示出的工作流程,音频编码设备202可以将关于渲染器类型的信息以及用于渲染比特流21的音频数据的渲染矩阵本身(作为渲染信息2)传输到音频解码设备204。根据图8示出的工作流程,音频解码设备204可以使用信令通知的信息(存储为音频渲染信息2),在必要时将信令通知的渲染矩阵添加到音频渲染器22,并使用显式信令通知的渲染矩阵来渲染音频数据11'。
图9是示出在执行本公开中描述的渲染技术的示例操作中,图1的音频编码设备的示例操作的流程图。音频编码设备20可以将音频数据11存储到设备的存储器中(900)。接下来,音频编码设备20可以对音频数据11进行编码以形成编码的音频数据(在图1的示例中被示出为比特流21)(902)。该音频编码设备20可以选择与编码的音频数据21相关联的渲染器1(904),其中所选择的渲染器可以包含基于对象的渲染器或立体混响声渲染器中的一个。然后,音频编码设备20可以生成编码的音频比特流21,该编码的音频比特流21包括编码的音频数据和指示所选择的渲染器的数据(例如,渲染信息2)(906)。
图10是示出在执行本公开中描述的渲染技术的示例操作中,图1的音频解码设备的示例操作的流程图。音频解码设备24首先可以将编码的音频比特流21的编码的音频数据11’存储到存储器中(910)。然后,音频解码设备24可以解析存储到存储器的编码的音频数据的一部分,以选择用于编码的音频数据11'的渲染器(912),其中,所选择的渲染器可以包含基于对象的渲染器或立体混响声渲染器中的一个。在该示例中,假定渲染器22被并入音频解码设备24内。这样,音频编码设备24可以将一个或多个渲染器应用于编码的音频数据11',使用选择的渲染器22来渲染编码的音频数据11',以生成一个或多个渲染的扬声器馈送25(914)。
可以在其中执行技术的上下文的其他示例包含音频生态系统,该音频生态系统可以包含获取元件和回放元件。获取元件可以包含有线和/或无线获取设备(例如,Eigen麦克风或麦克风)、设备上环绕声捕获以及移动设备(例如,智能手机和平板电脑)。在一些示例中,有线和/或无线获取设备可以经由有线和/或无线通信信道耦合到移动设备。
这样,在一些示例中,本公开涉及一种对音频数据进行渲染的设备。该设备包含存储器以及与该存储器进行通信的一个或多个处理器。存储器被配置为存储编码的音频比特流的编码的音频数据。该一个或多个处理器被配置为解析存储到存储器的编码的音频数据的一部分,以选择用于编码的音频数据的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个,并使用所选择的渲染器渲染编码的音频数据,以生成一个或多个渲染的扬声器馈送。在一些实施方式中,该设备包含与存储器进行通信的接口。在这些实施方式中,该接口被配置为接收编码的音频比特流。在一些实施方式中,该设备包含与一个或多个处理器进行通信的一个或多个扩音器。在这些实施方式中,一个或多个扩音器被配置为输出一个或多个渲染的扬声器馈送。
在一些示例中,一个或多个处理器包括处理电路。在一些示例中,一个或多个处理器包括专用集成电路(ASIC)。在一些示例中,一个或多个处理器还被配置为解析编码的音频数据的元数据以选择渲染器。在一些示例中,一个或多个处理器还被配置为基于包含在编码的视频数据的解析部分中的RendererFlag_OBJ_HOA标记的值来选择渲染器。在一些示例中,一个或多个处理器被配置为解析RendererFlag_ENTIRE_SEPARATE标记,以基于RendererFlag_ENTIRE_SEPARATE标记的值等于1,确定RendererFlag_OBJ_HOA的值适用于由一个或多个处理器渲染的编码的音频数据的所有对象,以及基于RendererFlag_ENTIRE_SEPARATE标记的值等于0,确定RendererFlag_OBJ_HOA的值仅适用于由一个或多个处理器渲染的编码的音频数据的单个对象。
在一些示例中,一个或多个处理器还被配置为从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器。在一些示例中,一个或多个处理器还被配置为从编码的音频数据的解析部分获得rendererID语法元素。在一些示例中,一个或多个处理器还被配置为通过将rendererID语法元素的值与码本的多个条目中的条目进行匹配来选择渲染器。在一些示例中,一个或多个处理器还被配置为从编码的音频数据的解析部分获得SoftRendererParameter_OBJ_HOA标记,以基于SoftRendererParameter_OBJ_HOA标记的值,确定将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分,并使用从编码的音频数据的部分获得的渲染的对象域音频数据和渲染的立体混响声域音频数据的加权组合来生成一个或多个渲染的扬声器馈送。
在一些示例中,一个或多个处理器还被配置为基于从编码的视频数据的解析部分获得的alpha语法元素的值来确定与加权组合相关联的加权。在一些示例中,所选择的渲染器是立体混响声渲染器,并且一个或多个处理器还被配置为对存储到存储器的编码的音频数据的一部分进行解码,重构解码的基于对象的音频数据和与解码的基于对象的音频数据相关联的对象元数据,将解码的基于对象的音频和对象元数据转换到立体混响声域,以形成立体混响声域音频数据,以及使用立体混响声渲染器渲染立体混响声域音频数据,以生成一个或多个渲染的扬声器馈送。
在一些示例中,一个或多个处理器被配置为从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器,解析RendererFlag_Transmitted_Reference标记,基于RendererFlag_Transmitted_Reference标记的值等于1,使用所获得的渲染矩阵来渲染编码的音频数据,以及基于RendererFlag_Transmitted_Reference标记的值等于0使用参考渲染器来渲染编码的音频数据。
在一些示例中,一个或多个处理器被配置为从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器,解析RendererFlag_External_Internal标记,基于RendererFlag_External_Internal标记的值等于1,确定所选择的渲染器是外部渲染器,以及基于RendererFlag_External_Internal标记的值等于0确定所选择的渲染器是外部渲染器。在一些示例中,RendererFlag_External_Internal标记的值等于1,并且一个或多个处理器被配置为确定外部渲染器不可用于渲染编码的音频数据,并且基于外部渲染器不可用于渲染编码的音频数据,确定所选择的渲染器是参考渲染器。
这样,在一些示例中,本公开涉及一种对编码音频数据的设备。该设备包含存储器以及与该存储器进行通信的一个或多个处理器。存储器被配置为存储音频数据。一个或多个处理器被配置为对音频数据进行编码以形成编码的音频数据,选择与编码的音频数据相关联的渲染器,以及生成编码的音频比特流,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。在一些实施方式中,设备包含与存储器进行通信的一个或多个麦克风。在这些实施方式中,一个或多个麦克风被配置为接收音频数据。在一些实施方式中,设备包含与一个或多个处理器进行通信的接口。在这些实施方式中,该接口被配置为信令通知编码的音频比特流。
在一些示例中,一个或多个处理器包括处理电路。在一些示例中,一个或多个处理器包括专用集成电路(ASIC)。在一些示例中,一个或多个处理器还被配置为将指示所选择的渲染器的数据包含在编码的音频数据的元数据中。在一些示例中,一个或多个处理器还被配置为将RendererFlag_OBJ_HOA标记包含在编码的音频比特流中,并且其中RendererFlag_OBJ_HOA标记的值指示所选择的渲染器。
在一些示例中,一个或多个处理器被配置为基于RendererFlag_OBJ_HOA的值适用于编码的音频比特流的所有对象的确定,将RendererFlag_ENTIRE_SEPARATE标记的值设置为等于1,基于RendererFlag_OBJ_HOA的值仅适用于编码的音频比特流的单个对象的确定,将RendererFlag_ENTIRE_SEPARATE标记的值设置为等于0,并将RendererFlag_OBJ_HOA标记包含在编码的音频比特流中。在一些示例中,一个或多个处理器还被配置为将渲染矩阵包含在编码的音频比特流中,该渲染矩阵表示所选择的渲染器。
在一些示例中,一个或多个处理器还被配置为将rendererID语法元素包含在编码的视频比特流中。在一些示例中,rendererID语法元素的值与一个或多个处理器可访问的码本的多个条目中的条目匹配。在一些示例中,一个或多个处理器还被配置为确定将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分,并且基于将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分的确定,将SoftRendererParameter_OBJ_HOA标记包含在编码的音频比特流中。
在一些示例中,一个或多个处理器还被配置为确定与SoftRendererParameter_OBJ_HOA标记相关联的加权;并且将指示加权的alpha语法元素包含在编码的音频比特流中。在一些示例中,一个或多个处理器被配置为将RendererFlag_Transmitted_Reference标记包含在编码的音频比特流中,并且基于RendererFlag_Transmitted_Reference标记的值等于1,将渲染矩阵包含在编码的音频比特流中,该渲染矩阵表示所选择的渲染器。在一些示例中,一个或多个处理器被配置为基于所选择的渲染器是外部渲染器的确定,将RendererFlag_External_Internal标记的值设置为等于1,基于所选择的渲染器是外部渲染器的确定,将RendererFlag_External_Internal标记的值设置为等于0,并将RendererFlag_External_Internal标记包含在编码的音频比特流中。
根据本公开的一种或多种技术,移动设备可以用于获取声场。例如,移动设备可以经由有线和/或无线获取设备和/或设备上环绕声捕获(例如,集成到移动设备中的多个个麦克风)来获取声场。然后,移动设备可以将所获取的声场编解码为立体混响声系数,以由一个或多个回放元件进行回放。例如,移动设备的用户可以记录(获取现场活动(例如,会议、会谈、比赛、音乐会等)的声场),并将录音编解码为立体混响声系数。
移动设备还可以利用一个或多个回放元件来回放立体混响声编解码的声场。例如,移动设备可解码立体混响声编解码的声场并将信号输出到一个或多个回放元件,该回放元件使一个或多个回放元件重建声场。作为一个示例,移动设备可以利用无线和/或无线通信信道将信号输出到一个或多个扬声器(例如,扬声器阵列、条形音箱等)。作为另一示例,移动设备可以利用对接解决方案将信号输出到一个或多个对接站和/或一个或多个对接的扬声器(例如,智能汽车和/或家庭中的声音系统)。作为另一个示例,移动设备可以利用耳机渲染将信号输出到耳机的集合,例如以创建逼真的双耳声音。
在一些示例中,特定的移动设备既可以获取3D声场,又可以在稍后的时间回放相同的3D声场。在一些示例中,移动设备可以获取3D声场,将3D声场编码为立体混响声系数,并且将编码的3D声场传输到一个或多个其他设备(例如,其他移动设备和/或其他非移动设备)以进行回放。
可以在其中执行技术的另一个环境包含音频生态系统,该音频生态系统可以包含音频内容、游戏工作室、编解码的音频内容、渲染引擎和传递系统。在一些示例中,游戏工作室可以包含一个或多个DAW,DAW可以支持立体混响声信号的编辑。例如,一个或多个DAW可以包含立体混响声插件和/或可以被配置为与一个或多个游戏音频系统一起操作(例如,与其一起工作)的工具。在一些示例中,游戏工作室可以输出支持立体混响声的新技术(newstem)格式。在任何情况下,游戏工作室都可以将编解码的音频内容输出到渲染引擎,该渲染引擎可以渲染声场以供传送系统回放。
还可针对示例性音频获取设备来执行该技术。例如,可以针对麦克风执行技术,该麦克风可以包含共同配置为记录3D声场的多个个麦克风。在一些示例中,麦克风的多个个麦克风可以位于半径大约为4cm的基本为球形的球的表面上。在一些示例中,音频编码设备20可以被集成到Eigen麦克风中,以便直接从麦克风输出比特流21。
另一个示例性音频获取上下文可以包含生产车(production truck),其可以被配置为从一个或多个麦克风(诸如一个或多个麦克风)接收信号。生产车还可以包含音频编码器,诸如图2和图3的音频编码设备20。
在某些情况下,移动设备还可以包含被共同配置为记录3D声场的多个个麦克风。换句话说,多个个麦克风可以具有X、Y、Z分集。在一些示例中,移动设备可以包含麦克风,该麦克风可以旋转以针对移动设备的一个或多个其他麦克风提供X、Y、Z分集。移动设备还可以包含音频编码器,诸如图2和图3的音频编码设备20。
强化型视频捕获设备还可以配置为记录3D声场。在一些示例中,强化型视频捕获设备可以被附着于从事活动的用户的头盔上。例如,强化型视频捕获设备可以被附着于进行急速漂流的用户的头盔上。用这种方法,强化型视频捕获设备可以捕获3D声场,该声场表示用户周围的所有动作(例如,水溅到用户身后、在用户面前讲话的另一个筏夫等)。
还可以针对附件增强型移动设备来执行该技术,该附件增强型移动设备可以被配置为记录3D声场。在一些示例中,移动设备可以类似于以上讨论的移动设备,增加了一个或多个附件。例如,Eigen麦克风可以附着于上述移动设备以形成附件增强型移动设备。用这种方法,与仅使用附件增强型移动设备所不可或缺的声音捕获组件相比,附件增强型移动设备可以捕获3D声场的更高质量的版本。
下面还讨论可以执行本公开中描述的技术的各个方面的示例音频回放设备。根据本公开的一种或多种技术,可以在仍然回放3D声场的同时以任何任意配置来布置扬声器和/或条形音箱。而且,在一些示例中,耳机回放设备可以经由有线或无线连接耦合到解码器24。根据本公开的一种或多种技术,可以利用声场的单个通用表示来在扬声器、条形音箱和耳机回放设备的任何组合上渲染声场。
多个不同的示例音频回放环境也可能适合于执行本公开中描述的技术的各个方面。例如,5.1扬声器回放环境、2.0(例如,立体声)扬声器回放环境、具有全高度前置扬声器的9.1扬声器回放环境、22.2扬声器回放环境、16.0扬声器回放环境、汽车扬声器回放环境、以及具有耳塞回放环境的移动设备可以是用于执行本公开中描述的技术的各个方面的合适环境。
根据本公开的一种或多种技术,可以利用声场的单个通用表示在任何一个前述的回放环境上渲染声场。另外,本公开的技术使得渲染器能够从通用表示中渲染声场,以在除上述描述之外的回放环境上回放。例如,如果设计考虑禁止根据7.1扬声器回放环境正确放置扬声器(例如,如果不可能放置右环绕扬声器),则本公开的技术使得渲染器能够补偿其他6个扬声器,使得可以在6.1扬声器回放环境中实现回放。
而且,用户可以在戴着耳机的同时观看体育比赛。根据本公开的一种或多种技术,可以获取体育比赛的3D声场(例如,可以在棒球场内和/或周围放置一个或多个Eigen麦克风或麦克风),可以获得对应于3D声场的立体混响声系数并将其传输到解码器,该解码器可以基于立体混响声系数重建3D声场,并将重建的3D声场输出到渲染器,渲染器可以获得有关回放环境类型的指示(例如,耳机),并将重建的3D声场渲染为信号,该信号使耳机输出体育比赛的3D声场的表示。
在上文所述的每种情况下,应当理解,音频编码设备20可以执行一种方法,或者以其他方式包括用于执行音频编码设备20被配置为执行的方法的每个步骤的部件。在一些情况下,该部件可以包括处理电路(例如,固定功能电路和/或可编程处理电路)和/或一个或多个处理器。在一些情况下,一个或多个处理器可以表示通过存储到非暂时性计算机可读存储介质的指令来配置的专用处理器。换句话说,编码示例的每个集合中的技术的各个方面可提供一种非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质具有存储在其上的指令,这些指令在被执行时使一个或多个处理器对其执行该方法,音频编码设备20已经被配置为执行该方法。
在一个或多个示例中,可以以硬件、软件、固件或其任何组合来实现所描述的功能。如果以软件实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质传输,并由基于硬件的处理单元执行。计算机可读介质可以包含计算机可读存储介质,其对应于诸如数据存储介质的有形介质。数据存储介质可以是可由一台或多台计算机或一个或多个处理器存取以检索指令、代码和/或数据结构以实现本公开中描述的技术的任何可用介质。计算机程序产品可以包括计算机可读介质。
同样地,在上文所述的每种情况下,应当理解,音频解码设备24可以执行方法,或者以其他方式包括用于执行音频解码设备24被配置为执行的方法的每个步骤的部件。在一些情况下,该部件可以包括一个或多个处理器。在一些情况下,一个或多个处理器可以表示通过存储到非暂时性计算机可读存储介质的指令来配置的专用处理器。换句话说,编码示例的每个集合中的技术的各个方面可提供一种非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质具有存储在其上的指令,该指令在被执行时使一个或多个处理器对其执行该方法,音频解码设备24已经被配置为执行该方法。
作为示例而非限制,这种计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁性存储装置,闪存或任何其他可以用来以指令或数据结构的形式存储所需的程序代码,并且可以由计算机存取。然而,应当理解的是,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其他瞬时介质,而是针对非瞬时的有形存储介质。本文使用的磁盘和光盘包括压缩盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式复制数据,而光盘则通过激光光学方式复制数据。上述的组合也应包括在计算机可读介质的范围内。
指令可以由一个或多个处理器执行,诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)、处理电路(例如固定功能电路、可编程处理电路、或其任何组合)、或其他等效的集成或离散逻辑电路。因此,如本文所使用的术语“处理器”可以指任何前述结构或适合于实施本文描述的技术的任何其他结构。另外,在一些方面,本文描述的功能可以在被配置用于编码和解码的专用硬件和/或软件模块内提供,或结合在组合编解码器中。同样,该技术可以在一个或多个电路或逻辑元件中完全实现。
本公开的技术可以在包括无线手持机、集成电路(IC)或一组集成电路(例如,芯片组)的多种设备或装置中实施。在本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但不一定需要由不同硬件单元来实现。而是,如上所述,各种单元可以组合在编解码器硬件单元中,或者由包括合适的软件和/或固件的互操作硬件单元的集合来提供,所述互操作硬件单元包括如上所述的一个或多个处理器。
前述技术可以启用针对以下条款设置的示例:
第1条:一种用于渲染音频数据的设备,该设备包括:存储器,其被配置为存储编码的音频比特流的编码的音频数据;以及一个或多个与存储器进行通信的处理器,该一个或多个处理器被配置为:对存储到存储器的编码的音频数据的一部分进行解析,以选择用于编码的音频数据的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;以及使用所选择的渲染器对编码的音频数据进行渲染,以生成一个或多个渲染的扬声器馈送。
第1.1条:根据第1条所述的设备,还包括与存储器进行通信的接口,该接口被配置为接收编码的音频比特流。
第1.2条:根据第1条或1.1条所述的设备,还包括与一个或多个处理器进行通信的一个或多个扩音器,该一个或多个扩音器被配置为输出一个或多个渲染的扬声器馈送。
第2条:根据第1-1.2条中任一项所述的设备,其中一个或多个处理器包括处理电路。
第3条:根据第1-2条中任一项所述的设备,其中一个或多个处理器包括专用集成电路(ASIC)。
第4条:根据第1-3条中任一项所述的设备,其中一个或多个处理器还被配置为解析编码的音频数据的元数据以选择渲染器。
第5条:根据第1-4条中任一项所述的设备,其中一个或多个处理器还被配置为基于包含在编码的视频数据的解析部分中的RendererFlag_OBJ_HOA标记的值来选择渲染器。
第6条:根据第5条所述的设备,其中一个或多个处理器被配置为:解析RendererFlag_ENTIRE_SEPARATE标记;基于RendererFlag_ENTIRE_SEPARATE标记的值等于1,确定RendererFlag_OBJ_HOA的值适用于由一个或多个处理器渲染的编码的音频数据的所有对象;以及基于RendererFlag_ENTIRE_SEPARATE标记的值等于0,确定RendererFlag_OBJ_HOA的值仅适用于由一个或多个处理器渲染的编码的音频数据的单个对象。
第7条:根据第1-6条中任一项所述的设备,其中一个或多个处理器还被配置为从编码的音频数据的解析部分获得渲染矩阵,其中所获得的渲染矩阵表示所选择的渲染器。
第8条:根据第1-6条中任一项所述的设备,其中一个或多个处理器还被配置为从编码的音频数据的解析部分获得rendererID语法元素。
第9条:根据第8条所述的设备,其中一个或多个处理器还被配置为通过将rendererID语法元素的值与码本的多个条目中的条目进行匹配来选择渲染器。
第10条:根据第1-8条中任一项所述的设备,其中一个或多个处理器还被配置为:从编码的音频数据的解析部分获得SoftRendererParameter_OBJ_HOA标记;基于SoftRendererParameter_OBJ_HOA标记的值,确定将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分;并使用从编码的音频数据的部分获得的渲染的对象域音频数据和渲染的立体混响声域音频数据的加权组合来生成一个或多个渲染的扬声器馈送。
第11条:根据第10条所述的设备,其中一个或多个处理器还被配置为基于从编码的视频数据的解析部分获得的alpha语法元素的值来确定与加权组合相关联的加权。
第12条:根据第1-11条中任一项所述的设备,所选择的渲染器是立体混响声渲染器,并且其中该一个或多个处理器还被配置为:对存储到存储器的编码的音频数据的一部分进行解码,以重构解码的基于对象的音频数据和与解码的基于对象的音频数据相关联的对象元数据;将解码的基于对象的音频和对象元数据转换到立体混响声域,以形成立体混响声域音频数据;以及使用立体混响声渲染器来渲染立体混响声域音频数据,以生成一个或多个渲染的扬声器馈送。
第13条:根据第1-12条中任一项所述的设备,其中该一个或多个处理器被配置为:从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器;解析RendererFlag_Transmitted_Reference标记;基于RendererFlag_Transmitted_Reference标记的值等于1,使用所获得的渲染矩阵来渲染编码的音频数据;以及基于RendererFlag_Transmitted_Reference标记的值等于0,使用参考渲染器来渲染编码的音频数据。
第14条:根据第1-13条中任一项所述的设备,其中该一个或多个处理器被配置为:从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器;解析RendererFlag_External_Internal标记;基于RendererFlag_External_Internal标记的值等于1,确定所选择的渲染器是外部渲染器;以及基于RendererFlag_External_Internal标记的值等于0,确定所选择的渲染器是外部渲染器。
第15条:根据第14条所述的设备,其中RendererFlag_External_Internal标记的值等于1,并且其中一个或多个处理器被配置为:确定外部渲染器不可用于渲染编码的音频数据;并且基于外部渲染器不可用于渲染编码的音频数据,确定所选择的渲染器是参考渲染器。
第16条:一种渲染音频数据的方法,该方法包括:将编码的音频比特流的编码的音频数据存储到设备的存储器中;由该设备的一个或多个处理器来解析存储到存储器的编码的音频数据的一部分,以选择用于编码的音频数据的渲染器,其中,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;以及由该设备的一个或多个处理器使用所选择的渲染器来渲染该编码的音频数据,以生成一个或多个渲染的扬声器馈送。
第16.1条:根据第16条所述的方法,还包括在该设备的接口处接收编码的音频比特流。
第16.2条:根据第16条或16.1条所述的方法,还包括由该设备的一个或多个扩音器输出一个或多个渲染的扬声器馈送。
第17条:根据第16-16.2条中任一项所述的方法,还包括由该设备的一个或多个处理器解析编码的音频数据的元数据以选择该渲染器。
第18条:根据第16-17条中任一项所述的方法,还包括由该设备的一个或多个处理器基于包含在编码的视频数据的解析部分中的RendererFlag_OBJ_HOA标记的值来选择该渲染器。
第19条:根据第18条所述的方法,还包括:由该设备的一个或多个处理器来解析RendererFlag_ENTIRE_SEPARATE标记;由该设备的一个或多个处理器基于RendererFlag_ENTIRE_SEPARATE标记的值等于1,确定RendererFlag_OBJ_HOA的值适用于处理电路所渲染的编码的音频数据的所有对象;以及由该设备的一个或多个处理器基于RendererFlag_ENTIRE_SEPARATE标记的值等于0,确定RendererFlag_OBJ_HOA的值仅适用于处理电路所渲染的编码的音频数据的单个对象。
第20条:根据第16-19条中任一项所述的方法,还包括由该设备的一个或多个处理器从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器。
第21条:根据第16-19条中任一项所述的方法,还包括由该设备的一个或多个处理器从编码的音频数据的解析部分获得rendererID语法元素。
第22条:根据第21条所述的方法,还包括由该设备的一个或多个处理器通过将rendererID语法元素的值与码本的多个条目中的条目进行匹配来选择该渲染器。
第23条:根据第16-21条中任一项所述的方法,还包括:由该设备的一个或多个处理器从编码的音频数据的解析部分获得SoftRendererParameter_OBJ_HOA标记;由该设备的一个或多个处理器基于SoftRendererParameter_OBJ_HOA标记的值,确定将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分;以及由该设备的一个或多个处理器使用从编码的音频数据的部分获得的渲染的对象域音频数据和渲染的立体混响声域音频数据的加权组合,来生成一个或多个渲染的扬声器馈送。
第24条:根据第23条所述的方法,还包括由该设备的一个或多个处理器基于从编码的视频数据的解析部分获得的alpha语法元素的值,确定与加权组合相关联的加权。
第25条:根据第16-24条中任一项所述的方法,其中,所选择的渲染器是立体混响声渲染器,该方法还包括:由该设备的一个或多个处理器对存储到存储器的编码的音频数据的一部分进行解码,以重构解码的基于对象的音频数据和与解码的基于对象的音频数据相关联的对象元数据;由该设备的一个或多个处理器将解码的基于对象的音频和对象元数据转换到立体混响声域,以形成立体混响声域音频数据;以及由该设备的一个或多个处理器使用立体混响声渲染器来渲染立体混响声域音频数据,以生成一个或多个渲染的扬声器馈送。
第26条:根据第16-25条中任一项所述的方法,还包括:由该设备的一个或多个处理器从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器;由该设备的一个或多个处理器解析RendererFlag_Transmitted_Reference标记;由该设备的一个或多个处理器基于RendererFlag_Transmitted_Reference标记的值等于1,使用所获得的渲染矩阵来渲染编码的音频数据;以及由该设备的一个或多个处理器基于RendererFlag_Transmitted_Reference标记的值等于0,使用参考渲染器来渲染编码的音频数据。
第27条:根据第16-26条中任一项所述的方法,还包括:由该设备的一个或多个处理器从编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器;由该设备的一个或多个处理器解析RendererFlag_External_Internal标记;由该设备的一个或多个处理器基于RendererFlag_External_Internal标记的值等于1,确定所选择的渲染器是外部渲染器;以及由该设备的一个或多个处理器基于RendererFlag_External_Internal标记的值等于0,确定所选择的渲染器是外部渲染器。
第28:根据第27条所述的方法,其中RendererFlag_External_Internal标记的值等于1,该方法还包括:由该设备的一个或多个处理器确定外部渲染器不可用于渲染编码的音频数据;以及由该设备的一个或多个处理器基于外部渲染器不可用于渲染编码的音频数据,确定所选择的渲染器是参考渲染器。
第29条:一种被配置为渲染音频数据的装置,该装置包括:用于存储编码的音频比特流的编码的音频数据的部件;用于解析存储的编码的音频数据的一部分以选择用于编码的音频数据的渲染器的部件,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;以及用于使用所选择的渲染器来渲染存储的编码的音频数据以生成一个或多个渲染的扬声器馈送的部件。
第29.1条:根据第29条所述的装置,还包括用于接收编码的音频比特流的部件。
第29.2条:根据第29条或第29.1条所述的装置,还包括用于输出一个或多个渲染的扬声器馈送的部件。
第30条:一种编码有指令的非暂时性计算机可读存储介质,该指令在被执行时,使得用于渲染音频数据的设备的一个或多个处理器:将编码的音频比特流的编码的音频数据存储到设备的存储器中;解析存储到存储器的编码的音频数据的一部分以选择用于编码的音频数据的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;以及使用所选择的渲染器来渲染编码的音频数据以生成一个或多个渲染的扬声器馈送。
第30.1条:根据第30条所述的非暂时性计算机可读存储介质,还编码有指令,该指令在被执行时,使得一个或多个处理器经由用于渲染音频数据的设备的接口来接收编码的音频比特流。
第30.2条:根据第30条或第30.1条所述的非暂时性计算机可读存储介质,还编码有指令,该指令在被执行时,使得一个或多个处理器经由该设备的一个或多个扩音器来输出一个或多个渲染的扬声器馈送。
第31条:一种用于编码音频数据的设备,该设备包括:被配置为存储音频数据的存储器;以及与存储器进行通信的一个或多个处理器,该一个或多个处理器被配置为:编码音频数据以形成编码的音频数据;选择与编码的音频数据相关联的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;以及生成编码的音频比特流,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。
第32条:根据第31条所述的设备,其中一个或多个处理器包括处理电路。
第33条:根据第31条或32条所述的设备,其中一个或多个处理器包括专用集成电路(ASIC)。
第34条:根据第31-33条中任一项所述的设备,其中一个或多个处理器还被配置为将指示所选择的渲染器的数据包含在编码的音频数据的元数据中。
第35条:根据第31-34条中任一项所述的设备,其中一个或多个处理器还被配置为将RendererFlag_OBJ_HOA标记包含在编码的音频比特流中,并且其中RendererFlag_OBJ_HOA标记的值指示所选择的渲染器。
第36条:根据第35条所述的设备,其中一个或多个处理器被配置为:基于RendererFlag_OBJ_HOA的值适用于编码的音频比特流的所有对象的确定,将RendererFlag_ENTIRE_SEPARATE标记的值设置为等于1;基于RendererFlag_OBJ_HOA的值仅适用于编码的音频比特流的单个对象的确定,将RendererFlag_ENTIRE_SEPARATE标记的值设置为等于0;以及将RendererFlag_OBJ_HOA标记包含在编码的音频比特流中。
第37条:根据第31-36条中任一项所述的设备,其中一个或多个处理器还被配置为将渲染矩阵包含在编码的音频比特流中,其中该渲染矩阵表示所选择的渲染器。
第38条:根据第31-36条中任一项所述的设备,其中一个或多个处理器还被配置为将rendererID语法元素包含在编码的音频比特流中。
第39条:根据第38条所述的设备,其中rendererID语法元素的值与一个或多个处理器可访问的码本的多个条目中的条目匹配。
第40条:根据第31-39条中任一项所述的设备,其中一个或多个处理器还被配置为:确定将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分;并且基于将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分的确定,将SoftRendererParameter_OBJ_HOA标记包含在编码的音频比特流中。
第41条:根据第40条所述的设备,其中一个或多个处理器还被配置为确定与SoftRendererParameter_OBJ_HOA标记相关联的加权;并且将指示加权的alpha语法元素包含在编码的音频比特流中。
第42条:根据第31-41条中任一项所述的设备,其中一个或多个处理器被配置为:将RendererFlag_Transmitted_Reference标记包含在编码的音频比特流中;并且基于RendererFlag_Transmitted_Reference标记的值等于1,将渲染矩阵包含在编码的音频比特流中,该渲染矩阵表示所选择的渲染器。
第43条:根据第31-42条中任一项所述的设备,其中一个或多个处理器被配置为:基于所选择的渲染器是外部渲染器的确定,将RendererFlag_External_Internal标记的值设置为等于1;基于所选择的渲染器是外部渲染器的确定,将RendererFlag_External_Internal标记的值设置为等于0;并将RendererFlag_External_Internal标记包含在编码的音频比特流中。
第44条:根据第31-43条中任一项所述的设备,还包括一个或多个与存储器进行通信的麦克风,该一个或多个麦克风被配置为接收音频数据。
第45条:根据第31-44条中任一项所述的设备,还包括与一个或多个处理器进行通信的接口,该接口被配置为信令通知编码的音频比特流。
第46条:一种编码音频数据的方法,该方法包括:将音频数据存储到设备的存储器中;由该设备的一个或多个处理器对音频数据进行编码,以形成编码的音频数据;由该设备的一个或多个处理器选择与编码的音频数据相关联的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;并且由该设备的一个或多个处理器生成编码的音频比特流,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。
第47条:根据第46条所述的方法,还包括由该设备的接口信令通知编码的音频比特流。
第48条:根据第46条或第47条所述的方法,还包括由该设备的一个或多个麦克风来接收音频数据。
第49条:根据第46-48条中任一项所述的方法,还包括由该设备的一个或多个处理器来将指示所选择的渲染器的数据包含在编码的音频数据的元数据中。
第50条:根据第46-49条中任一项所述的方法,还包括由该设备的一个或多个处理器将RendererFlag_OBJ_HOA标记包含在编码的音频比特流中,并且其中RendererFlag_OBJ_HOA标记的值指示所选择的渲染器。
第51条:根据第50条所述的方法,还包括:由该设备的一个或多个处理器基于RendererFlag_OBJ_HOA的值适用于编码的音频比特流的所有对象的确定,将RendererFlag_ENTIRE_SEPARATE标记的值设置为等于1;由该设备的一个或多个处理器基于RendererFlag_OBJ_HOA的值仅适用于编码的音频比特流的单个对象的确定,将RendererFlag_ENTIRE_SEPARATE标记的值设置为等于0;以及由该设备的一个或多个处理器将RendererFlag_OBJ_HOA标记包含在编码的音频比特流中。
第52条:根据第46-51条中任一项所述的方法,还包括由该设备的一个或多个处理器将渲染矩阵包含在编码的音频比特流中,并且该渲染矩阵表示所选择的渲染器。
第53条:根据第46-51条中任一项所述的方法,还包括由该设备的一个或多个处理器将rendererID语法元素包含在该编码的音频比特流中。
第54条:根据第53条所述的方法,其中rendererID语法元素的值与该设备的一个或多个处理器可访问的码本的多个条目中的条目匹配。
第55条:根据第46-54条中任一项所述的方法,还包括:由该设备的一个或多个处理器确定将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分;并且由该设备的一个或多个处理器基于将使用基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分的确定,将SoftRendererParameter_OBJ_HOA标记包含在编码的音频比特流中。
第56条:根据第55条所述的方法,还包括:由该设备的一个或多个处理器确定与SoftRendererParameter_OBJ_HOA标记相关联的加权;并且由该设备的一个或多个处理器来将指示加权的alpha语法元素包含在编码的音频比特流中。
第57条:根据第46-56条中任一项所述的方法,还包括:由该设备的一个或多个处理器来将RendererFlag_Transmitted_Reference标记包含在编码的音频比特流中;并且由该设备的一个或多个处理器基于RendererFlag_Transmitted_Reference标记的值等于1,将渲染矩阵包含在编码的音频比特流中,该渲染矩阵表示所选择的渲染器。
第58条:根据第46-57条中任一项所述的方法,还包括:由该设备的一个或多个处理器基于所选择的渲染器是外部渲染器的确定,将RendererFlag_External_Internal标记的值设置为等于1;由该设备的一个或多个处理器基于所选择的渲染器是外部渲染器的确定,将RendererFlag_External_Internal标记的值设置为等于0;并且由该设备的一个或多个处理器将RendererFlag_External_Internal标记包含在编码的音频比特流中。
第59条:一种用于编码音频数据的装置,该装置包括:用于存储音频数据的部件;用于编码音频数据以形成编码的音频数据的部件;用于选择与编码的音频数据相关联的渲染器的部件,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;以及用于生成编码的音频比特流的部件,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。
第60条:根据第59条所述的装置,还包括用于信令通知编码的音频比特流的部件。
第61条:根据第59条或第60条所述的装置,还包括用于接收音频数据的部件。
第62条:一种编码有指令的非暂时性计算机可读存储介质,该指令在被执行时,使得用于编码音频数据的设备的一个或多个处理器:将音频数据存储到该设备的存储器中;编码该音频数据以形成编码的音频数据;选择与编码的音频数据相关联的渲染器,所选择的渲染器包括基于对象的渲染器或立体混响声渲染器中的一个;以及生成编码的音频比特流,该编码的音频比特流包括编码的音频数据和指示所选择的渲染器的数据。
第63条:根据第62条所述的非暂时性计算机可读存储介质,还编码有指令,该指令在被执行时,使得一个或多个处理器经由该设备的接口信令该编码的音频比特流。
第64条:根据第62条或第63条所述的非暂时性计算机可读存储介质,还编码有指令,该指令在被执行时,使得一个或多个处理器经由该设备的一个或多个麦克风来接收音频数据。
已经描述了该技术的各个方面。该技术的这些方面以及其他方面都在所附权利要求的范围内。
Claims (26)
1.一种用于渲染音频数据的设备,所述设备包括:
存储器,被配置为存储编码的音频比特流的编码的音频数据;以及
与所述存储器进行通信的一个或多个处理器,所述一个或多个处理器被配置为:
解析存储到所述存储器的编码的音频数据的一部分,以选择用于所述编码的音频数据的渲染器,所选择的渲染器包括制作编码的音频数据的一部分期间使用的基于对象的渲染器或立体混响声渲染器中的一个;
使用所选择的渲染器来渲染所述编码的音频数据,以生成一个或多个渲染的扬声器馈送;
基于包含在编码的视频数据的解析部分中的RendererFlag_OBJ_HOA标记的值,来选择所述渲染器;
解析RendererFlag_ENTIRE_SEPARATE标记;
基于RendererFlag_ENTIRE_SEPARATE标记的值等于1,确定RendererFlag_OBJ_HOA的值适用于由所述一个或多个处理器所渲染的编码的音频数据的所有对象;以及
基于RendererFlag_ENTIRE_SEPARATE标记的值等于0,确定RendererFlag_OBJ_HOA的值仅适用于由所述一个或多个处理器所渲染的编码的音频数据的单个对象。
2.根据权利要求1所述的设备,还包括与所述存储器进行通信的接口,所述接口被配置为接收所述编码的音频比特流。
3.根据权利要求1所述的设备,还包括与所述一个或多个处理器进行通信的一个或多个扩音器,所述一个或多个扩音器被配置为输出所述一个或多个渲染的扬声器馈送。
4.根据权利要求1所述的设备,其中所述一个或多个处理器包括处理电路。
5.根据权利要求1所述的设备,其中所述一个或多个处理器包括专用集成电路(ASIC)。
6.根据权利要求1所述的设备,其中所述一个或多个处理器还被配置为解析所述编码的音频数据的元数据以选择所述渲染器。
7.根据权利要求1所述的设备,其中所述一个或多个处理器还被配置为从所述编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器。
8.根据权利要求1所述的设备,其中所述一个或多个处理器还被配置为从所述编码的音频数据的解析部分获得rendererID语法元素。
9.根据权利要求8所述的设备,其中所述一个或多个处理器还被配置为通过将所述rendererID语法元素的值与码本的多个条目中的条目进行匹配来选择所述渲染器。
10.根据权利要求1所述的设备,其中,所述一个或多个处理器还被配置为:
从所述编码的音频数据的解析部分获得SoftRendererParameter_OBJ_HOA标记;
基于SoftRendererParameter_OBJ_HOA标记的值,确定将使用所述基于对象的渲染器和立体混响声渲染器来渲染编码的音频数据的部分;以及
使用从编码的音频数据的部分获得的渲染的对象域音频数据和渲染的立体混响声域音频数据的加权组合来生成所述一个或多个渲染的扬声器馈送。
11.根据权利要求10所述的设备,其中所述一个或多个处理器还被配置为基于从所述编码的视频数据的解析部分获得的alpha语法元素的值来确定与加权组合相关联的加权。
12.根据权利要求1所述的设备,其中所选择的渲染器是立体混响声渲染器,并且其中所述一个或多个处理器还被配置为:
对存储到所述存储器中的编码的音频数据的一部分进行解码,以重构解码的基于对象的音频数据和与所述解码的基于对象的音频数据相关联的对象元数据;
将所述解码的基于对象的音频数据和对象元数据转换到立体混响声域,以形成立体混响声域音频数据;以及
使用所述立体混响声渲染器来渲染所述立体混响声域音频数据,以生成所述一个或多个渲染的扬声器馈送。
13.根据权利要求1所述的设备,其中,所述一个或多个处理器被配置为:
从所述编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器;
解析RendererFlag_Transmitted_Reference标记;
基于RendererFlag_Transmitted_Reference标记的值等于1,使用所获得的渲染矩阵来渲染所述编码的音频数据;以及
基于RendererFlag_Transmitted_Reference标记的值等于0,使用参考渲染器来渲染所述编码的音频数据。
14.根据权利要求1所述的设备,其中,所述一个或多个处理器被配置为:
从所述编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器;
解析RendererFlag_External_Internal标记;
基于RendererFlag_External_Internal标记的值等于1,确定所选择的渲染器是外部渲染器;以及
基于RendererFlag_External_Internal标记的值等于O,确定所选择的渲染器是内部渲染器。
15.根据权利要求14所述的设备,其中RendererFlag_External_Intemal标记的值等于1,并且其中所述一个或多个处理器还被配置为:
确定所述外部渲染器不可用于渲染所述编码的音频数据;以及
基于所述外部渲染器不可用于渲染所述编码的音频数据,确定所选择的渲染器是参考渲染器。
16.根据权利要求1所述的设备,其中所述立体混响声渲染器包含较高阶立体混响声渲染器。
17.一种渲染音频数据的方法,所述方法包括:
将编码的音频比特流的编码的音频数据存储到设备的存储器中;
由所述设备的一个或多个处理器解析存储到所述存储器的编码的音频数据的一部分,以选择用于编码的音频数据的渲染器,所选择的渲染器包括制作编码的音频数据的一部分期间使用的基于对象的渲染器或立体混响声渲染器中的一个;
由所述设备的一个或多个处理器使用所选择的渲染器来渲染所述编码的音频数据,以生成一个或多个渲染的扬声器馈送;
由所述设备的一个或多个处理器基于包含在所述编码的视频数据的解析部分中的RendererFlag_OBJ_HOA标记的值,来选择所述渲染器;
由所述设备的一个或多个处理器来解析RendererFlag_ENTIRE_SEPARATE标记;
其中,所述一个或多个处理器包括处理电路,并且其中,
由所述设备的一个或多个处理器基于RendererFlag_ENTIRE_SEPARATE标记的值等于1,确定RendererFlag_OBJ_HOA的值适用于由所述处理电路所渲染的编码的音频数据的所有对象;以及
由所述设备的一个或多个处理器基于RendererFlag_ENTIRE_SEPARATE标记的值等于0,确定RendererFlag_OBJ_HOA的值仅适用于由所述处理电路所渲染的编码的音频数据的单个对象。
18.根据权利要求17所述的方法,还包括在设备的接口处接收所述编码的音频比特流。
19.根据权利要求17所述的方法,还包括由所述设备的一个或多个扩音器输出所述一个或多个渲染的扬声器馈送。
20.根据权利要求17所述的方法,还包括由所述设备的一个或多个处理器解析所述编码的音频数据的元数据以选择所述渲染器。
21.根据权利要求17所述的方法,还包括由所述设备的一个或多个处理器从所述编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器。
22.根据权利要求17所述的方法,还包括由所述设备的一个或多个处理器从所述编码的音频数据的解析部分获得rendererID语法元素。
23.根据权利要求22所述的方法,还包括由所述设备的一个或多个处理器通过将所述rendererID语法元素的值与码本的多个条目中的条目进行匹配,来选择所述渲染器。
24.根据权利要求17所述的方法,还包括:
由所述设备的一个或多个处理器从所述编码的音频数据的解析部分获得渲染矩阵,所获得的渲染矩阵表示所选择的渲染器;
由所述设备的一个或多个处理器来解析RendererFlag_External_Internal标记;
基于RendererFlag_External_Internal标记的值等于1:
由所述设备的一个或多个处理器来确定外部渲染器不可用于渲染编码的音频数据;以及
基于所述外部渲染器不可用于渲染编码的音频数据,由所述设备的一个或多个处理器确定所选择的渲染器是参考渲染器。
25.一种被配置为渲染音频数据的装置,所述装置包括:
用于存储编码的音频比特流的编码的音频数据的部件;
用于解析存储的编码的音频数据的一部分以选择用于所述编码的音频数据的渲染器的部件,所选择的渲染器包括制作编码的音频数据的一部分期间使用的基于对象的渲染器或立体混响声渲染器中的一个;
用于使用所选择的渲染器来渲染存储的编码的音频数据,以生成一个或多个渲染的扬声器馈送的部件;
用于基于包含在编码的视频数据的解析部分中的RendererFlag_OBJ_HOA标记的值,来选择所述渲染器的部件;
用于解析RendererFlag_ENTIRE_SEPARATE标记的部件;
用于基于RendererFlag_ENTIRE_SEPARATE标记的值等于1,确定RendererFlag_OBJ_HOA的值适用于由一个或多个处理器所渲染的编码的音频数据的所有对象的部件;以及
用于基于RendererFlag_ENTIRE_SEPARATE标记的值等于0,确定RendererFlag_OBJ_HOA的值仅适用于由所述一个或多个处理器所渲染的编码的音频数据的单个对象的部件。
26.一种编码有指令的非暂时性计算机可读存储介质,所述指令在被执行时,使得用于渲染音频数据的设备的一个或多个处理器:
将编码的音频比特流的编码的音频数据存储到所述设备的存储器中;
解析存储到所述存储器的编码的音频数据的一部分,以选择用于所述编码的音频数据的渲染器,所选择的渲染器包括制作编码的音频数据的一部分期间使用的基于对象的渲染器或立体混响声渲染器中的一个;以及
使用所选择的渲染器来渲染所述编码的音频数据,以生成一个或多个渲染的扬声器馈送;
基于包含在编码的视频数据的解析部分中的RendererFlag_OBJ_HOA标记的值,来选择所述渲染器;
解析RendererFlag_ENTIRE_SEPARATE标记;
基于RendererFlag_ENTIRE_SEPARATE标记的值等于1,确定RendererFlag_OBJ_HOA的值适用于由所述一个或多个处理器所渲染的编码的音频数据的所有对象;以及
基于RendererFlag_ENTIRE_SEPARATE标记的值等于0,确定RendererFlag_OBJ_HOA的值仅适用于由所述一个或多个处理器所渲染的编码的音频数据的单个对象。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862740260P | 2018-10-02 | 2018-10-02 | |
US62/740,260 | 2018-10-02 | ||
US16/582,910 US11798569B2 (en) | 2018-10-02 | 2019-09-25 | Flexible rendering of audio data |
US16/582,910 | 2019-09-25 | ||
PCT/US2019/053237 WO2020072275A1 (en) | 2018-10-02 | 2019-09-26 | Flexible rendering of audio data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112771892A CN112771892A (zh) | 2021-05-07 |
CN112771892B true CN112771892B (zh) | 2022-08-23 |
Family
ID=69946424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980063638.0A Active CN112771892B (zh) | 2018-10-02 | 2019-09-26 | 音频数据的灵活渲染 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11798569B2 (zh) |
EP (2) | EP3861766B1 (zh) |
CN (1) | CN112771892B (zh) |
TW (1) | TWI827687B (zh) |
WO (1) | WO2020072275A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11430451B2 (en) * | 2019-09-26 | 2022-08-30 | Apple Inc. | Layered coding of audio with discrete objects |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107071686A (zh) * | 2012-07-16 | 2017-08-18 | 杜比国际公司 | 用于渲染音频声场表示以供音频回放的方法和设备 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8964994B2 (en) | 2008-12-15 | 2015-02-24 | Orange | Encoding of multichannel digital audio signals |
US9761229B2 (en) | 2012-07-20 | 2017-09-12 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for audio object clustering |
US9736609B2 (en) | 2013-02-07 | 2017-08-15 | Qualcomm Incorporated | Determining renderers for spherical harmonic coefficients |
US9609452B2 (en) | 2013-02-08 | 2017-03-28 | Qualcomm Incorporated | Obtaining sparseness information for higher order ambisonic audio renderers |
US9883310B2 (en) | 2013-02-08 | 2018-01-30 | Qualcomm Incorporated | Obtaining symmetry information for higher order ambisonic audio renderers |
BR112015028337B1 (pt) | 2013-05-16 | 2022-03-22 | Koninklijke Philips N.V. | Aparelho de processamento de áudio e método |
US9854377B2 (en) | 2013-05-29 | 2017-12-26 | Qualcomm Incorporated | Interpolation for decomposed representations of a sound field |
US20150243292A1 (en) | 2014-02-25 | 2015-08-27 | Qualcomm Incorporated | Order format signaling for higher-order ambisonic audio data |
US20150264483A1 (en) | 2014-03-14 | 2015-09-17 | Qualcomm Incorporated | Low frequency rendering of higher-order ambisonic audio data |
EP3149971B1 (en) | 2014-05-30 | 2018-08-29 | Qualcomm Incorporated | Obtaining sparseness information for higher order ambisonic audio renderers |
US20170347219A1 (en) * | 2016-05-27 | 2017-11-30 | VideoStitch Inc. | Selective audio reproduction |
CN109891502B (zh) | 2016-06-17 | 2023-07-25 | Dts公司 | 一种近场双耳渲染方法、系统及可读存储介质 |
US10356545B2 (en) * | 2016-09-23 | 2019-07-16 | Gaudio Lab, Inc. | Method and device for processing audio signal by using metadata |
US10405126B2 (en) | 2017-06-30 | 2019-09-03 | Qualcomm Incorporated | Mixed-order ambisonics (MOA) audio data for computer-mediated reality systems |
-
2019
- 2019-09-25 US US16/582,910 patent/US11798569B2/en active Active
- 2019-09-26 EP EP19789810.9A patent/EP3861766B1/en active Active
- 2019-09-26 EP EP22198798.5A patent/EP4164253A1/en active Pending
- 2019-09-26 TW TW108134887A patent/TWI827687B/zh active
- 2019-09-26 WO PCT/US2019/053237 patent/WO2020072275A1/en unknown
- 2019-09-26 CN CN201980063638.0A patent/CN112771892B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107071686A (zh) * | 2012-07-16 | 2017-08-18 | 杜比国际公司 | 用于渲染音频声场表示以供音频回放的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
TW202029185A (zh) | 2020-08-01 |
WO2020072275A1 (en) | 2020-04-09 |
US11798569B2 (en) | 2023-10-24 |
US20200105282A1 (en) | 2020-04-02 |
EP3861766A1 (en) | 2021-08-11 |
CN112771892A (zh) | 2021-05-07 |
EP4164253A1 (en) | 2023-04-12 |
TWI827687B (zh) | 2024-01-01 |
EP3861766B1 (en) | 2022-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11962990B2 (en) | Reordering of foreground audio objects in the ambisonics domain | |
AU2015210791B2 (en) | Indicating frame parameter reusability for coding vectors | |
KR101723332B1 (ko) | 회전된 고차 앰비소닉스의 바이노럴화 | |
CN106663433B (zh) | 用于处理音频数据的方法和装置 | |
JP6297721B2 (ja) | 高次アンビソニックオーディオレンダラのための希薄情報を取得すること | |
EP3363213B1 (en) | Coding higher-order ambisonic coefficients during multiple transitions | |
JP2017520785A (ja) | 高次アンビソニック係数の閉ループ量子化 | |
JP6423009B2 (ja) | 高次アンビソニックオーディオレンダラのためのシンメトリ情報を取得すること | |
CN112771892B (zh) | 音频数据的灵活渲染 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |