CN106231489A - 音频的处理方法和装置 - Google Patents
音频的处理方法和装置 Download PDFInfo
- Publication number
- CN106231489A CN106231489A CN201610589851.3A CN201610589851A CN106231489A CN 106231489 A CN106231489 A CN 106231489A CN 201610589851 A CN201610589851 A CN 201610589851A CN 106231489 A CN106231489 A CN 106231489A
- Authority
- CN
- China
- Prior art keywords
- data
- sound channel
- wave filter
- file
- sampling
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R3/00—Circuits for transducers, loudspeakers or microphones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R1/00—Details of transducers, loudspeakers or microphones
- H04R1/20—Arrangements for obtaining desired frequency or directional characteristics
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Stereophonic System (AREA)
Abstract
本发明公开了一种音频的处理方法和装置。其中,该方法包括:获取多个声道中每个声道的采样点数;根据采样点数对每个声道的音频信号进行采样,得到采样数据;获取滤波器数据;根据滤波器数据对采样数据进行滤波处理。本发明解决了现有技术中通过耳机播放音频时某些位置音响效果不同的技术问题。
Description
技术领域
本发明涉及音频领域,具体而言,涉及一种音频的处理方法和装置。
背景技术
市场上主流的电影声音制作为5.1声道或7.1声道,都是通过不同方位角的扬声器来实现回放的。
5.1声道是指中央声道,前置左、右声道、后置左、右环绕声道,及所谓的0.1声道重低音声道。一套***总共可连接6个喇叭。中央声道喇叭,负责再生配合屏幕上的动作,大部分时间它是负责人物对白的部分;前置左、右声道喇叭,则是用来弥补在屏幕中央以外或不能从屏幕看到的动作及其他声音;后置环绕音效喇叭是负责***及整个背景音乐,让人感觉置身于整个场景的正中央,比如万马奔腾的震撼、飞机从头顶呼啸而过的效果;而马达声、轰炸机的声音或是大鼓等震人心弦的重低音,则是由重低音喇叭完成的。这套***的优点在于可获得更清晰的前面声音、极好的音场形象和更宽阔的音场以及真实的立体环声,从而可以聆听到前所未有的背景中的细微声音移动。
7.1声道***的作用简单来说就是在听者的周围建立起一套前后声场相对平衡的声场,不同于5.1声道声场的是,它在原有的基础上增加了后中声场声道,同时它也不同于普通6.1声道声场,因为7.1声道有双路后中置,而这双路后中置的最大作用就是为了防止听者因为没有坐在皇帝位而在听觉上产生声场的偏差。
在不同的位置,音响效果是不同的,在一些位置(例如皇帝位)的音响效果较好,而在另外一些位置(例如,影院或剧场边缘的位置)的音响效果较差。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种音频的处理方法和装置,以至少解决现有技术中通过耳机播放音频时某些位置音响效果不同的技术问题。
根据本发明实施例的一个方面,提供了一种音频的处理方法,包括:获取多个声道中每个声道的采样点数;根据所述采样点数对所述每个声道的音频信号进行采样,得到采样数据;获取滤波器数据;根据所述滤波器数据对所述采样数据进行滤波处理。
进一步地,获取滤波器参数包括:加载滤波器文件;对文件头包含的信息进行解析;根据解析出的信息读取所述滤波器文件中的数据,得到所述滤波器数据。
进一步地,所述滤波器文件为多个。
进一步地,在加载滤波器文件之前,所述方法还包括:根据声道的数量确定需要加载的滤波器文件的数量。
进一步地,获取多个声道中每个声道的采样点数包括:根据滤波器文件的有效数据的总字节数、所述滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数。
进一步地,根据滤波器文件的有效数据的总字节数、所述滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数包括:根据下面的公式计算每个声道的采样点数:每个声道的采样点数=8×滤波器文件的有效数据的总字节数÷(所述滤波器文件包含的声道的数量×每个采样点需要的比特数)。
进一步地,在得到采样数据之后,所述方法还包括:对所述采样数据进行FFT变换,得到频域的音频采样数据;根据所述滤波器数据对所述采样数据进行滤波处理包括:在频域内将所述滤波器数据与所述音频采样数据相乘;将相乘之后得到的数据进行FFT逆变换,其中,进行FFT逆变换之后得到的数据是复数;将进行FFT逆变换得到的数据取实部并输出。
根据本发明实施例的另一方面,还提供了一种音频的处理装置,包括:第一获取单元,用于获取多个声道中每个声道的采样点数;采样单元,用于根据所述采样点数对所述每个声道的音频信号进行采样,得到采样数据;第二获取单元,用于获取滤波器数据;滤波单元,用于根据所述滤波器数据对所述采样数据进行滤波处理。
进一步地,所述第二获取单元包括:加载子单元,用于加载滤波器文件;解析子单元,用于对文件头包含的信息进行解析;读取子单元,用于根据解析出的信息读取所述滤波器文件中的数据,得到所述滤波器数据。
进一步地,所述滤波器文件为多个。
进一步地,所述装置还包括:确定单元,用于在所述加载子单元加载滤波器文件之前,根据声道的数量确定需要加载的滤波器文件的数量。
进一步地,所述第一获取单元包括:获取子单元,用于根据滤波器文件的有效数据的总字节数、所述滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数。
进一步地,所述获取子单元包括:计算模块,用于根据下面的公式计算每个声道的采样点数:每个声道的采样点数=8×滤波器文件的有效数据的总字节数÷(所述滤波器文件包含的声道的数量×每个采样点需要的比特数)。
进一步地,所述装置还包括:变换单元,用于在所述采样单元得到采样数据之后,对所述采样数据进行FFT变换,得到频域的音频采样数据;所述滤波单元包括:第一计算子单元,用于在频域内将所述滤波器数据与所述音频采样数据相乘;第二计算子单元,用于将相乘之后得到的数据进行FFT逆变换,其中,进行FFT逆变换之后得到的数据是复数;输出子单元,用于将进行FFT逆变换得到的数据取实部并输出。
在本发明实施例中,多个声道中每个声道都有若干个采样点数,对每个声道的音频信号进行采样,得到采样数据,通过不同的滤波器数据模拟任意位置声源,根据滤波器数据对采样数据进行滤波处理,处理完成之后,得到的音频数据无论在哪个位置播放,效果都是相同的,达到了播放音频时所有位置音响效果相同的技术效果,进而解决了现有技术中通过耳机播放音频时某些位置音响效果不同的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的音频的处理方法的流程图;
图2是根据本发明实施例的***的总流程图;
图3是根据本发明实施例的函数initPLL_SDRAM()的执行流程图;
图4是根据本发明实施例的函数InitDAI()的执行流程图;
图5是根据本发明实施例的I2S信号的拓扑结构图;
图6是根据本发明实施例的函数enable_SPORT()的执行流程图;
图7是根据本发明实施例的解码模块的执行流程图;
图8是根据本发明实施例的主要函数之间的调用关系的示意图;
图9是根据本发明实施例的数据处理模块的处理流程图;
图10是根据本发明实施例的重叠相加法的原理示意图;
图11是根据本发明实施例的重叠相加法的具体实现示意图;
图12是根据本发明实施例的音频的处理装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先对本发明实施例所涉及的技术术语作如下解释:
WAV格式:WAV为Microsoft开发的一种声音文件格式,它符合RIFF(ResourceInterchange File Format)文件规范,用于保存Windows平台的音频信息资源,被Windows平台及其应用程序所广泛支持,该格式也支持MSADPCM,CCITT ALAW等多种压缩运算法,支持多种音频数字,取样频率和声道,标准格式化的WAV文件和CD格式一样,也是44.1K的取样频率,16位量化数字,因此在声音文件质量和CD相差无几!WAV是最接近无损的音乐格式,所以文件大小相对也比较大。WAV音频格式的优点包括:简单的编/解码(几乎直接存储来自模/数转换器(ADC)的信号)、普遍的认同/支持以及无损耗存储。WAV格式的主要缺点是需要音频存储空间。对于小的存储限制或小带宽应用而言,这可能是一个重要的问题。WAV格式的另外一个潜在缺陷是在32位WAV文件中的2G限制,这种限制已在为SoundForge开发的W64格式中得到了改善。
hrir和hrtf:HRTF(Head Related Transfer Function):头相关变换函数,是一种音效定位算法,对应时域的HRIR(Head Related Inpulse Response),头相关冲击响应。人有两个耳朵,却能定位来自三维空间的声音,这得力于人耳对声音信号的分析***。HRTF可以分解为三部分,Interaural Time Difference,Interaural Level Difference及Spectral Cues。从空间任意一点传到人耳(鼓膜前)的信号都可以用一个滤波***来描述,音源+滤波器得到的就是两耳鼓膜前的声音信号。这个传输***是一个黑盒子,我们不必关心声音是如何传递到双耳的,而只需关心音源和双耳信号的差别。如果我们得到这组描述空间信息的滤波器(传递函数),即HRTF,就能还原来自空间这个方位的声音信号(如通过双声道耳机)。如果我们有空间所有方位到双耳的滤波器组,就能得到一个滤波矩阵,从而还原来自整个空间方位的声音信号。但是一个严峻的问题是,HRTF是高度个人化的,在实验室测得每个人的函数组是不现实的。因此,HRTF技术就致力于研究如何方便的真实还原个人化的空间函数。这也是virtual reality(虚拟现实技术)希望达到的目标。
I2S:I2S(Inter—IC Sound)总线,又称集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专责于音频设备之间的数据传输,广泛应用于各种多媒体***。它采用了沿独立的导线传输时钟与数据信号的设计,通过将数据和时钟信号分离,避免了因时差诱发的失真,为用户节省了购买抵抗音频抖动的专业设备的费用。I2S有3个主要信号:①串行时钟SCLK,也叫位时钟(BCLK),即对应数字音频的每一位数据,SCLK都有1个脉冲。SCLK的频率=2×采样频率×采样位数。②帧时钟LRCK,(也称WS),用于切换左右声道的数据。LRCK为“1”表示正在传输的是右声道的数据,为“0”则表示正在传输的是左声道的数据。LRCK的频率等于采样频率。③串行数据SDATA,就是用二进制补码表示的音频数据。有时为了使***间能够更好地同步,还需要另外传输一个信号MCLK,称为主时钟,也叫***时钟(Sys Clock),是采样频率的256倍或384倍。随着技术的发展,在统一的I2S接口下,出现了多种不同的数据格式。根据SDATA数据相对于LRCK和SCLK的位置不同,分为左对齐(较少使用)、I2S格式(即飞利浦规定的格式)和右对齐(也叫日本格式、普通格式)。
根据本发明实施例,提供了一种音频的处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的音频的处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,获取多个声道中每个声道的采样点数。
步骤S104,根据采样点数对每个声道的音频信号进行采样,得到采样数据。
步骤S106,获取滤波器数据。
步骤S108,根据滤波器数据对采样数据进行滤波处理。
在本发明实施例中,多个声道中每个声道都有若干个采样点数,对每个声道的音频信号进行采样,得到采样数据,通过不同的滤波器数据模拟任意位置声源,根据滤波器数据对采样数据进行滤波处理,处理完成之后,得到的音频数据无论在哪个位置播放,效果都是相同的,解决了现有技术中通过耳机播放音频时某些位置音响效果不同的技术问题,达到了播放音频时所有位置音响效果相同的技术效果。
本发明实施例提供了使用DSP和FPGA两种方法对音频进行处理的过程,通过虚拟多通道任意位置声源,用DSP或FPGA实现了多声道环绕立体声的虚拟化效果。这套***的优点在于可获得更清晰的前面声音、极好的音场形象和更宽阔的音场以及真实的立体环声,从而可以聆听到前所未有的背景中的细微声音移动。
下面对使用DSP方法对音频进行处理的过程进行详细说明。
本发明实施例详细描述了DSP程序的功能模块划分以及各个模块的执行流程、变量和主要函数等。
运行环境:***由结构机箱、板卡和DSP程序代码三部分组成,其中板卡包括底板和核心板两部分。DSP程序代码运行在核心板上的DSP中。
***的总流程如图2所示。如图2所示,该流程包括以下步骤:
步骤S202,DSP硬件初始化。上电后,***首先进行DSP的硬件初始化工作。
步骤S204,读取滤波器文件并解码。初始化完成后,要读取所有后面会用到的滤波器的数据。这些滤波器的数据是以wav文件的形式存在的,因此要将这些文件读入DSP,并从文件中解出真实的数据,用于后面输入信号的处理。
步骤S206,读取输入数据。音频信号是实时输入的,并且是多路同时输入。
步骤S208,处理输入数据。DSP读取到一部分输入数据后进行滤波处理。
步骤S210,输出处理后的数据。处理完成的信号发送到DAC中输入,然后再读取下一组输入数据。此过程反复不断的执行,在输出端就得到了处理并合成的信号。
根据上面的描述可以将整个程序划分为4个模块:硬件初始化模块、wav解码模块、数据处理模块和输入输出模块。下面对这四个模块进行详细的说明。
1、硬件初始化模块。
初始化模块包括PLL和SDRAM的初始化、DAI初始化、SPORT的初始化三部分。
1.1、数据描述
(1)变量pPMCTL
pPMCTL是指针变量,指向寄存器PMCTL,用来配置PLL的参数。
(2)变量pSYSCTL
pSYSCTL是指针变量,指向寄存器SYSCTL,用来使能memory选择。
(3)变量pEPCTL
pEPCTL是指针变量,指向寄存器EPCTL,用来映射Bank0到SDRAM。
(4)变量pSDCTL
pSDCTL是指针变量,指向寄存器SDCTL,用来配置SDRAM的工作参数。
(5)变量pSDRRC
pSDRRC是指针变量,指向寄存器SDRRC,用于设置刷新率和读优化方面的配置。
(6)变量SPORTx_FS_I、SPORTx_CLK_I和SPORTx_DA_I
当SPORTx配置为I2S模式时,这三个信号分别代表I2S总线的帧同步、时钟和数据。
(7)变量DAI_PBx_I和DAI_PBx_O
这两个信号分别代表DAI管脚缓冲器输入和管脚缓冲器输出。外部信号输入时使用DAI_PBx_O,内部信号输出时使用DAI_PBx_I。
(8)变量pSPMCTLx
pSPMCTLx是指针变量,指向寄存器SPMCTLx,用于多通道控制。
(9)变量pSPCTLx
pSPCTLx是指针变量,指向寄存器SPCTLx,用于SPORT控制。
(10)变量pDIVx
pDIVx是指针变量,指向寄存器DIVx,用于设置时钟和帧同步信号的分频比。
(11)变量pCPSPxA或pCPSPxB
pCPSPxA或pCPSPxB是指针变量,指向寄存器CPSPxA或CPSPxB。CPSPxA或CPSPxB指向下一组DMA参数。
(12)数组receivetcb[RX_SPORT_NUM][RX_I2S_NUM][4]
receivetcb定义了接收TCB,每个接收SPORT的每个I2S数据线均对应一个单独的TCB。
(13)数组transmttcb[TX_SPORT_NUM][TX_I2S_NUM][4]
transmttcb定义了发送TCB,每个发送SPORT的每个I2S数据线均对应一个单独的TCB。
1.2、函数描述
(1)函数initPLL_SDRAM()
该函数的功能是分别初始化PLL和SDRAM。在初始化过程中依次设置PMCTL、SYSCTL、EPCTL、SDCTL和SDRRC五个寄存器。这些寄存器的功能在前一节中均有介绍。该函数的执行流程如图3所示。
如图3所示,该函数的执行流程包括以下步骤:
步骤S302,设置PLL的锁定频率。
步骤S304,使能memory选择。
步骤S306,让Bank0映射到SDRAM。
步骤S308,设置SDRAM工作参数。
步骤S310,设置刷新率、读优化。
步骤S302用于进行PLL初始化。步骤S304至步骤S310用于进行SDRAM初始化。
(2)函数InitDAI()
该函数的功能是初始化DAI,具体地说就是为信号分配DAI管脚。上电后首先将所有管脚缓冲器输入和管脚缓冲器使能输入拉低。然后选择输入模式。在本设计中有两种输入模块可供选择:一种是SPDIF模式,另一种是AES/EBU模式,这里选择的是后一种模式。由于在本设计中最多有8路输入,因此需要4个用于接收的SPORT,每个SPORT接收两路输入。同时输出仅有两路(左右声道),需要1个SPORT用于发送。分别为这些SPORT分配接口信号。DSP处理后的数据通过SPORT发送给DAC,因此也要为DAC分配接口信号。在本设计中ADC与DSP的接口和DSP与DAC的接口均采用I2S。相对于ADC来说,DSP工作于从模式;相对于DSP来说,DAC也工作于从模式。该函数的执行流程如图4所示。
如图4所示,该流程包括以下步骤:
步骤S402,DAI管脚状态初始化。
步骤S404,输入模式选择。
步骤S406,SPORT0信号分配。
步骤S408,SPORT1信号分配。
步骤S410,SPORT2信号分配。
步骤S412,SPORT3信号分配。
步骤S414,SPORT4信号分配。
步骤S416,DAC信号分配。
SPORT1至SPORT4为4个用于接收的SPORT。通过执行步骤S402至步骤S416,能够初始化DAI。
在本设计中用于AES/EBU信号解码的芯片是CS8416,每个CS8416芯片均产生一组I2S信号。由于输入的多路信号最终要合成为两路输出,因此选择第一组I2S信号中的时钟信号和帧同步信号作为各个SPORT和DAC工作的公共控制信号,***中I2S信号的拓扑结构如图5所示。
(3)函数enable_SPORT()
该函数的功能是初始化SPORT,完成了两方面的工作:一是寄存器设置,二是TCB设置。在TCB设置中指定了一次DMA传输数据的长度和接收或发送缓冲区的地址。该函数的执行流程如图6所示。
如图6所示,该函数的执行流程包括以下步骤:
步骤S602,多通道控制寄存器清零。
步骤S604,SPORT控制寄存器清零。
步骤S606,SPORT分频寄存器清零。
步骤S608,接收SPORT TCB设置。
步骤S610,发送SPORT TCB设置。
步骤S612,SPORT控制寄存器设置。
通过执行步骤S602至步骤S612,达到了初始化SPORT的目的。
2、输入输出模块详细设计
2.1、数据描述
(1)宏RX_SPORT_NUM
RX_SPORT_NUM定义了最大接收SPORT的数目,由于***兼容5.1声道和7.1声道,最多同时有8路输入,因此需要4个接收SPORT。
(2)宏TX_SPORT_NUM
TX_SPORT_NUM定义了发送SPORT的数目,输入的多路音频信号经滤波器处理后最终合成两路输出,分别送到左右耳,因此发送的SPORT仅需要一个即可。
(3)宏SIZE_DMA_BLOCK
SIZE_DMA_BLOCK定义了某通道一次DMA操作要传输的数据块的大小,也就是一个通道一次采样的采样点个数。
(4)宏SIZE_DMA_BUFF
SIZE_DMA_BUFF定义了接收和发送DMA缓冲区的大小,DSP的接收和发送都是通过I2S来完成的,每条数据线上可以传输两个通道,因此DMA缓冲区的大小是DMA传输数据块大小的两倍。
(5)数组rx_SPORT_Buf[RX_SPORT_NUM][SIZE_DMA_BUFF]
rx_SPORT_Buf定义了接收SPORT缓冲区。每个接收SPORT的接收数据线均有对应的缓冲区。
(6)数组tx_SPORT_Buf[TX_SPORT_NUM][SIZE_DMA_BUFF]
tx_SPORT_Buf定义了发送SPORT缓冲区。每个发送SPORT的发送数据线均有对应的缓冲区。
(7)数组In_split_Buf[IN_CHAN_NUM][SIZE_DMA_BLOCK]
In_split_Buf定义了接收拆分缓冲区,每个输入声道有对应的缓冲区。
(8)数组Out_unite_Buf[SIDE_OF_OUT][SIZE_DMA_BLOCK]
Out_unite_Buf定义了发送合并缓冲区,左右声道各有对应的缓冲区。
(9)数组In_Chan_Buf[IN_CHAN_NUM][FFT_POINT_NUM]
In_Chan_Buf定义了输入数据缓冲区,一次要处理的数据(包括补充的0数据)存储在该缓冲区。
(10)
数组Out_Chan_Buf[IN_CHAN_NUM][SIDE_OF_OUT][SIZE_DMA_BLOCK]
Out_Chan_Buf定义了输出数据缓冲区,经过卷积处理后的数据存储在该缓冲区。
(11)数组Out_Bkup_Buf[IN_CHAN_NUM][SIDE_OF_OUT][SIZE_DMA_BLOCK]
Out_Bkup_Buf定义了输出备份缓冲区,该缓冲区用于辅助实现重叠相加的功能。
2.2、函数描述
(1)函数Receive()
参数:通道号
返回值:无
功能描述:该函数的功能是将某个声道的数据从输入的一个SPORT的一条I2S数据线中分离出来。反复调用该函数可以从外部输入的4条数据线上得到8个输入声道。
(2)函数Transmit()
参数:无
返回值:无
功能描述:该函数的功能是将两个发送合并缓冲区的数据合并到发送SPORT的一条数据线上,从而通过外部的DAC输出。
3、解码模块详细设计
解码模块在本设计中是比较复杂的一个模块。该模块的执行流程如图7所示。如图7所示,该模块的执行流程包括以下步骤:
步骤S702,解析初始化。
步骤S704,打开文件。
步骤S706,文件解析。
步骤S708,读取一组数据。
步骤S710,数据类型转换。
步骤S712,判断是否读完所有数据。如果判断结果为是,执行步骤S714;
如果判断结果为否,执行步骤S708。
步骤S714,判断是否读完所有通道。如果判断结果为是,执行步骤S716;如果判断结果为否,执行步骤S708。
步骤S716,关闭文件。
步骤S718,判断是否完成滤波器组加载。如果判断结果为是,结束;如果判断结果为否,执行步骤S702。
3.1、滤波器文件的格式
3.1.1、WAV文件的格式
WAVE文件是由若干个Chunk组成的。按照在文件中的出现位置一般包括:RIFFWAVE Chunk、Format Chunk、Fact Chunk(可选)、Data Chunk。
RIFF WAVE Chunk的格式如下:
Fact Chunk的格式如下:
Data Chunk的格式如下:
wav数据的bit位置可以分成以下几种形式:
3.1.2滤波器文件内容示例
wav文件可以以二进制的格式打开。下面是用二进制编辑软件打开的H0e000a.wav文件。按照前面的介绍可以很容易的解析出文件头的信息。根据滤波器文件的有效数据的总字节数、滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数。具体地,根据下面的公式计算每个声道的采样点数:每个声道的采样点数=8×滤波器文件的有效数据的总字节数÷(滤波器文件包含的声道的数量×每个采样点需要的比特数)。
例如,假设滤波器文件包含两个声道,每个采样点16bit,有效数据总共512字节(注意该文件采用的是little-Endian格式)。由此可以计算出每个声道的采样点数为128点。
3.2数据描述
(1)宏WAV_BUF_CHANS
WAV_BUF_CHANS定义了滤波器文件的通道数,从前面的分析可知,这些滤波器文件都是双声道的,因此取值为2。
(2)宏WAV_BUF_SAMPS
WAV_BUF_SAMPS定义了滤波器文件每个声道采样点的个数,具体数目见前面的分析。
(3)数组hrtf_data_buffer[MAX_FLT_NUM][WAV_BUF_CHANS][WAV_BUF_SAMPS]
hrtf_data_buffer定义了一组缓冲区,用于存放FFT变换后的滤波器数据,每个滤波器文件的每个声道对应一个单独的缓冲区。
(4)数组hrir_data_buffer_ptrs[WAV_BUF_CHANS]
hrir_data_buffer_ptrs定义了一个指针数组,数组中的每个指针指向一个滤波器文件对应的data_buffe缓冲区。
(5)数组hrir_data_buffer_strides[WAV_BUF_CHANS]
hrir_data_buffer_strides定义了一个数组,数组中的元素代表在读取一个滤波器文件对应的data_buffer缓冲区数据时的跨度大小,在本设计中这些值恒为1。
3.3函数描述
(1)函数load_hrir_group()
参数:无
返回:无
功能:根据输入声道的路数加载滤波器文件并解析,用解析得到的滤波器数据初始化相应的滤波器缓冲区。滤波器文件为多个。在加载滤波器文件之前,根据声道的数量确定需要加载的滤波器文件的数量。如果***以5.1声道输入,该函数会加载并解析6个滤波器文件,最后一个滤波器文件用于处理超低音输入;如果***以7.1声道输入,该函数会加载并解析8个滤波器文件,同样最后一个滤波器文件用于处理超低音输入。
(2)函数load_hrir_file()
参数:参数1,滤波器名称;参数2,滤波器数据缓冲存储器。
返回:无
功能:根据传入的滤波器名称,加载滤波器文件并解析,将解析得到的数据存储到指定的缓冲存储器中。
(3)函数wavFileReadOpen()
参数:参数1,指向wav文件实例类型的指针;参数2,文件名。
返回:执行结果返回码。
功能:打开并解析指定的wav文件。
(4)函数wavFileReadClose()
参数:指向wav文件实例类型的指针。
返回:执行结果返回码。
功能:关闭之前打开的wav文件。
(5)函数decode_hrir_file()
参数:参数1,指向wav文件实例类型的指针;参数2,每个通道的采样点数;参数3,指向数据缓冲区的指针。
返回:无
功能:读取已经打开的指定文件指定通道的数据,并将这些数据存储到指定的缓冲区中。
(6)函数adi_wav_parse_init()
参数:指向wav文件信息结构体的指针。
返回:执行结果返回码。
功能:初始化一个wav文件实例的文件信息结构体。
(7)函数parse_wav_file()
参数:指向wav文件实例类型的指针。
返回:一个整数,代表执行状态。
功能:解析一个已经打开的wav文件。
(8)函数adi_wav_parser()
参数:参数1,指向wav文件信息结构体的指针;参数2,输入缓冲区的字节数;参数3,指向输入比特流的指针;参数4,输入字节偏移值。
返回:执行结果返回码。
功能:最基本的wav文件解析子程序。
(9)函数wavFileRead()
参数:参数1,指向wav文件实例类型的指针;参数2,指向通道缓冲区的二级指针;参数3,通道缓冲区的跨度;参数4,每个通道的采样点数。
返回:读取到的字的数目。
功能:读取wav文件的一个通道数据存入数据缓冲区并返回读取到该通道字的数目。
3.4、函数调用关系
主要函数之间的调用关系如图8所示。从图8可以看出每个滤波器文件被加载后主要有两大调用关系分支:左边分支的主要功能是对wav文件头所包含信息的解析,中间分支的功能是根据文件头的信息读取文件中的数据,并根据要求进行数据类型转换,得到滤波器数据。
4、数据处理模块详细设计
数据处理模块的处理流程如图9所示。
如图9所示,该处理流程包括以下步骤:
步骤S902,计算扩展滤波器数据128FFT。首先要计算所有要用到的滤波器的FFT变换,这一步是在初始化滤波器的过程中完成的,这样可以节省后面实时处理过程中的一部分时间。
步骤S904,初始化复数数据缓冲区。进入实时处理过程首先要初始化复数数据缓冲区,为后面的复数运算做准备。
步骤S906,计算输入音频数据128点FFT。当每个声道的采样点数为128时,初始化完成后对输入的128音频采样数据计算FFT,得到频域的128点数据。
步骤S908,频域内与滤波器数据相乘运算。在频域内将滤波器的数据和音频采样数据相乘。
步骤S910,运算后的数据进行128点逆FFT变换。相乘后的数据再作FFT逆变换。
步骤S912,取变换后数据的实部并输出。FFT逆变换后的数据为复数,取出实部并输出。
由步骤S906至步骤S912可知,初始化完成后,对采样数据进行FFT变换,得到频域的音频采样数据;根据滤波器数据对采样数据进行滤波处理包括:在频域内将滤波器数据与音频采样数据相乘;将相乘之后得到的数据进行FFT逆变换,其中,进行FFT逆变换之后得到的数据是复数;将进行FFT逆变换得到的数据取实部并输出。
4.1、数据描述
(1)宏IN_LINE_NUM
IN_LINE_NUM定义了接收数据线的个数。对于5.1声道来说,有6个输入声道,IN_LINE_NUM为3;对于7.1声道来说,有8个输入声道,IN_LINE_NUM为4。
(2)宏CH_PER_LINE
CH_PER_LINE定义了每条输入数据线所承载的声道数目,由于DSP与ADC之间的接口为I2S,因此每条数据线可以承载两个声道。
(3)宏IN_CHAN_NUM
IN_CHAN_NUM定义了输入声道的数目,这个数目与IN_LINE_NUM和CH_PER_LINE直接相关。
(4)宏MAX_FLT_NUM
MAX_FLT_NUM定义了hrir滤波器的数目,在一般情况下这个数目与输入的声道数目保持一致,也可以不一致,这要根据具体的应用场合而定。注意这里所说的每个滤波器都是包括左右耳的。
(5)宏SIDE_OF_OUT
SIDE_OF_OUT定义了输出数据线所承载的声道数,本设计中输出仅左右两个声道,因此值为2。
(6)数组hrtf_buf
hrtf_buf定义了滤波器输入数据缓冲区,是频域中的数据,复数类型。
(7)数组audio_buf
audio_buf定义了音频输入数据缓冲区,是时域中的数据,浮点类型。
(8)数组fft_buf
fft_buf定义了音频转换数据缓冲区,是频域中的数据,复数类型。
(9)数组conv_buf
conv_buf定义了处理后的时域数据缓冲区,浮点类型。
4.2、函数描述
(1)函数multi_input()
参数:无。
返回:无。
功能:实现多输入通道的处理,即多输入通道的滤波和合成功能。该函数是整个程序的处理核心。
(2)函数conv_with_hrir()
参数:参数1,滤波器数据,是FFT变换后的数据;参数2,音频采样数据,是采样后的原始数据;参数3,是滤波后的输出数据,是时域数据。
返回:无。
功能:实现一组输入音频数据的滤波处理,即卷积算法。
对于此类问题一般有两种卷积算法:重叠相加法和重叠保留法,这两种算法功能相当,本设计中采样前一种算法。该算法的原理如图10所示。
在算法模块中重叠相加法的具体实现如图11所示。如图11所示,输入的音频数据每次采样64点,通过补零凑成128点数据。解码后的滤波器数据,每个通道的数据为128点。虽然滤波器的完整数据为128点,但是一般来说前64点数据已经包括了滤波器的所有有效信息。这里将滤波器的128点数据截取前64点数据,通过补零仍然凑成128点的数据。音频128点数据和滤波器128点数据分别进行FFT变换,变换后的数据在频域中相乘,乘积进行FFT的逆变换,得到的还是128点的数据。这128点数据分成前半部分和后半部分。前64点的数据与上一次运算结果的后半部分相加(对于第一次运算可以认为上一次运算的结果为零),作为本次运算的结果输出;后64点的数据暂时存储在缓冲区中用于下一个运算周期。此过程循环往复,以至无穷。
本发明实施例提供了使用DSP和FPGA两种方法对音频进行处理的过程,以上部分对使用DSP方法对音频进行处理的过程进行了详细说明。使用FPGA两种方法对音频进行处理的过程与使用DSP方法对音频进行处理的过程相似,不再赘述。
根据本发明实施例,还提供了一种音频的处理装置。该音频的处理装置可以执行上述音频的处理方法,上述音频的处理方法也可以通过该音频的处理装置实施。
图12是根据本发明实施例的音频的处理装置的示意图。如图12所示,该装置包括第一获取单元10、采样单元20、第二获取单元30和滤波单元40。
第一获取单元10,用于获取多个声道中每个声道的采样点数。
采样单元20,用于根据采样点数对每个声道的音频信号进行采样,得到采样数据。
第二获取单元30,用于获取滤波器数据。
滤波单元40,用于根据滤波器数据对采样数据进行滤波处理。
可选地,第二获取单元30包括加载子单元、解析子单元和读取子单元。加载子单元,用于加载滤波器文件。解析子单元,用于对文件头包含的信息进行解析。读取子单元,用于根据解析出的信息读取滤波器文件中的数据,得到滤波器数据。
可选地,滤波器文件为多个。
可选地,装置还包括确定单元。确定单元,用于在加载子单元加载滤波器文件之前,根据声道的数量确定需要加载的滤波器文件的数量。
可选地,第一获取单元10包括获取子单元。获取子单元,用于根据滤波器文件的有效数据的总字节数、滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数。
可选地,获取子单元包括计算模块。计算模块,用于根据下面的公式计算每个声道的采样点数:每个声道的采样点数=8×滤波器文件的有效数据的总字节数÷(滤波器文件包含的声道的数量×每个采样点需要的比特数)。
可选地,装置还包括变换单元。变换单元,用于在采样单元20得到采样数据之后,对采样数据进行FFT变换,得到频域的音频采样数据。滤波单元40包括第一计算子单元、第二计算子单元和输出子单元。第一计算子单元,用于在频域内将滤波器数据与音频采样数据相乘。第二计算子单元,用于将相乘之后得到的数据进行FFT逆变换,其中,进行FFT逆变换之后得到的数据是复数。输出子单元,用于将进行FFT逆变换得到的数据取实部并输出。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本发明所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种音频的处理方法,其特征在于,包括:
获取多个声道中每个声道的采样点数;
根据所述采样点数对所述每个声道的音频信号进行采样,得到采样数据;
获取滤波器数据;
根据所述滤波器数据对所述采样数据进行滤波处理。
2.根据权利要求1所述的方法,其特征在于,获取滤波器参数包括:
加载滤波器文件;
对文件头包含的信息进行解析;
根据解析出的信息读取所述滤波器文件中的数据,得到所述滤波器数据。
3.根据权利要求2所述的方法,其特征在于,所述滤波器文件为多个。
4.根据权利要求3所述的方法,其特征在于,在加载滤波器文件之前,所述方法还包括:
根据声道的数量确定需要加载的滤波器文件的数量。
5.根据权利要求1所述的方法,其特征在于,获取多个声道中每个声道的采样点数包括:
根据滤波器文件的有效数据的总字节数、所述滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数。
6.根据权利要求5所述的方法,其特征在于,根据滤波器文件的有效数据的总字节数、所述滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数包括:
根据下面的公式计算每个声道的采样点数:
每个声道的采样点数=8×滤波器文件的有效数据的总字节数÷(所述滤波器文件包含的声道的数量×每个采样点需要的比特数)。
7.根据权利要求6所述的方法,其特征在于,
在得到采样数据之后,所述方法还包括:对所述采样数据进行FFT变换,得到频域的音频采样数据;
根据所述滤波器数据对所述采样数据进行滤波处理包括:
在频域内将所述滤波器数据与所述音频采样数据相乘;
将相乘之后得到的数据进行FFT逆变换,其中,进行FFT逆变换之后得到的数据是复数;
将进行FFT逆变换得到的数据取实部并输出。
8.一种音频的处理装置,其特征在于,包括:
第一获取单元,用于获取多个声道中每个声道的采样点数;
采样单元,用于根据所述采样点数对所述每个声道的音频信号进行采样,得到采样数据;
第二获取单元,用于获取滤波器数据;
滤波单元,用于根据所述滤波器数据对所述采样数据进行滤波处理。
9.根据权利要求8所述的装置,其特征在于,所述第二获取单元包括:
加载子单元,用于加载滤波器文件;
解析子单元,用于对文件头包含的信息进行解析;
读取子单元,用于根据解析出的信息读取所述滤波器文件中的数据,得到所述滤波器数据。
10.根据权利要求9所述的装置,其特征在于,所述滤波器文件为多个。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
确定单元,用于在所述加载子单元加载滤波器文件之前,根据声道的数量确定需要加载的滤波器文件的数量。
12.根据权利要求8所述的装置,其特征在于,所述第一获取单元包括:
获取子单元,用于根据滤波器文件的有效数据的总字节数、所述滤波器文件包含的声道的数量、每个采样点需要的比特数计算每个声道的采样点数。
13.根据权利要求12所述的装置,其特征在于,所述获取子单元包括:
计算模块,用于根据下面的公式计算每个声道的采样点数:
每个声道的采样点数=8×滤波器文件的有效数据的总字节数÷(所述滤波器文件包含的声道的数量×每个采样点需要的比特数)。
14.根据权利要求13所述的装置,其特征在于,
所述装置还包括:变换单元,用于在所述采样单元得到采样数据之后,对所述采样数据进行FFT变换,得到频域的音频采样数据;
所述滤波单元包括:
第一计算子单元,用于在频域内将所述滤波器数据与所述音频采样数据相乘;
第二计算子单元,用于将相乘之后得到的数据进行FFT逆变换,其中,进行FFT逆变换之后得到的数据是复数;
输出子单元,用于将进行FFT逆变换得到的数据取实部并输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610589851.3A CN106231489A (zh) | 2016-07-25 | 2016-07-25 | 音频的处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610589851.3A CN106231489A (zh) | 2016-07-25 | 2016-07-25 | 音频的处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106231489A true CN106231489A (zh) | 2016-12-14 |
Family
ID=57532525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610589851.3A Pending CN106231489A (zh) | 2016-07-25 | 2016-07-25 | 音频的处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106231489A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106911987A (zh) * | 2017-02-21 | 2017-06-30 | 珠海全志科技股份有限公司 | 主控端、设备端、传输多声道音频数据的方法和*** |
CN108228331A (zh) * | 2016-12-09 | 2018-06-29 | 武汉斗鱼网络科技有限公司 | 一种资源管理方法及*** |
CN109379674A (zh) * | 2018-11-09 | 2019-02-22 | 福建星网智慧科技股份有限公司 | 一种基于cpld实现多路音频聚合装置及方法 |
CN109435837A (zh) * | 2018-12-20 | 2019-03-08 | 云南玉溪汇龙科技有限公司 | 一种电动车引擎声仿真合成器及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100287861B1 (ko) * | 1993-09-24 | 2001-05-02 | 구자홍 | 디지탈 오디오 스테레오 모드에서의 각 채널 비균등 비트할당 장치 및 방법 |
CN1296372A (zh) * | 1999-11-16 | 2001-05-23 | 林智文 | 音频处理电路 |
CN1440217A (zh) * | 2003-03-04 | 2003-09-03 | Tcl王牌电子(深圳)有限公司 | 一种基于fpga的5.1声道虚拟声重放方法以及装置 |
CN101483797A (zh) * | 2008-01-07 | 2009-07-15 | 昊迪移通(北京)技术有限公司 | 一种针对耳机音响***的人脑音频变换函数(hrtf)的生成方法和设备 |
CN104064191A (zh) * | 2014-06-10 | 2014-09-24 | 百度在线网络技术(北京)有限公司 | 混音方法及装置 |
CN104869523A (zh) * | 2014-02-26 | 2015-08-26 | 北京三星通信技术研究有限公司 | 虚拟多声道播放音频文件的方法、终端及*** |
-
2016
- 2016-07-25 CN CN201610589851.3A patent/CN106231489A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100287861B1 (ko) * | 1993-09-24 | 2001-05-02 | 구자홍 | 디지탈 오디오 스테레오 모드에서의 각 채널 비균등 비트할당 장치 및 방법 |
CN1296372A (zh) * | 1999-11-16 | 2001-05-23 | 林智文 | 音频处理电路 |
CN1440217A (zh) * | 2003-03-04 | 2003-09-03 | Tcl王牌电子(深圳)有限公司 | 一种基于fpga的5.1声道虚拟声重放方法以及装置 |
CN101483797A (zh) * | 2008-01-07 | 2009-07-15 | 昊迪移通(北京)技术有限公司 | 一种针对耳机音响***的人脑音频变换函数(hrtf)的生成方法和设备 |
CN104869523A (zh) * | 2014-02-26 | 2015-08-26 | 北京三星通信技术研究有限公司 | 虚拟多声道播放音频文件的方法、终端及*** |
CN104064191A (zh) * | 2014-06-10 | 2014-09-24 | 百度在线网络技术(北京)有限公司 | 混音方法及装置 |
Non-Patent Citations (2)
Title |
---|
付先平编著.: "《多媒体技术及应用 第2版》", 31 March 2012, 北京:清华大学出版社 * |
曹辉,樊旻,袁宏伟主编.: "《多媒体技术及应用》", 31 August 2013, 昆明:云南科技出版社 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228331A (zh) * | 2016-12-09 | 2018-06-29 | 武汉斗鱼网络科技有限公司 | 一种资源管理方法及*** |
CN108228331B (zh) * | 2016-12-09 | 2021-11-26 | 武汉斗鱼网络科技有限公司 | 一种资源管理方法及*** |
CN106911987A (zh) * | 2017-02-21 | 2017-06-30 | 珠海全志科技股份有限公司 | 主控端、设备端、传输多声道音频数据的方法和*** |
CN106911987B (zh) * | 2017-02-21 | 2019-11-05 | 珠海全志科技股份有限公司 | 主控端、设备端、传输多声道音频数据的方法和*** |
CN109379674A (zh) * | 2018-11-09 | 2019-02-22 | 福建星网智慧科技股份有限公司 | 一种基于cpld实现多路音频聚合装置及方法 |
CN109379674B (zh) * | 2018-11-09 | 2024-02-06 | 福建星网智慧科技有限公司 | 一种基于cpld实现多路音频聚合装置及方法 |
CN109435837A (zh) * | 2018-12-20 | 2019-03-08 | 云南玉溪汇龙科技有限公司 | 一种电动车引擎声仿真合成器及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10231073B2 (en) | Ambisonic audio rendering with depth decoding | |
US7590249B2 (en) | Object-based three-dimensional audio system and method of controlling the same | |
KR100296838B1 (ko) | 음향영상정위장치및음향영상제어방법 | |
CN101479787B (zh) | 用于编码和解码基于对象的音频信号的方法和装置 | |
CN101356573B (zh) | 对双耳音频信号的解码的控制 | |
CN106231489A (zh) | 音频的处理方法和装置 | |
CN105981411A (zh) | 用于高声道计数的多声道音频的基于多元组的矩阵混合 | |
CN101379555B (zh) | 用于编码/解码信号的装置和方法 | |
CN1964578A (zh) | 在多声道音频环境中提供互动式音频的***和方法 | |
CN103037300B (zh) | 音频信号处理设备和音频信号处理方法 | |
AU2006228821A1 (en) | Device and method for producing a data flow and for producing a multi-channel representation | |
CN101133679A (zh) | 个性化的头戴耳机虚拟 | |
US7079658B2 (en) | System and method for localization of sounds in three-dimensional space | |
US20070297624A1 (en) | Digital audio encoding | |
CN101221763B (zh) | 针对子带编码音频的三维声场合成方法 | |
KR100880644B1 (ko) | 오디오 신호의 인코딩 및 디코딩 장치, 및 방법 | |
JP2002152897A (ja) | 音声信号処理方法、音声信号処理装置 | |
Park et al. | Implementation of a real-time 3-D positioning sound synthesis algorithm for a handheld device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161214 |