CN102594361B - 音频异步采样率转换处理方法 - Google Patents
音频异步采样率转换处理方法 Download PDFInfo
- Publication number
- CN102594361B CN102594361B CN201210033276.0A CN201210033276A CN102594361B CN 102594361 B CN102594361 B CN 102594361B CN 201210033276 A CN201210033276 A CN 201210033276A CN 102594361 B CN102594361 B CN 102594361B
- Authority
- CN
- China
- Prior art keywords
- sample rate
- conversion
- rate
- voice data
- sample
- 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
Landscapes
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
本发明公开了一种音频异步采样率转换处理方法,该方法包括以下步骤:实时计算音频数据的输入采样率与输出的目标采样率的比率,根据比率选择过渡采样率;对并行数据流进行至少一次插值处理,将其转换为过渡采样率的音频数据;对过渡采样率的音频数据进行至少一次下变换采样处理,将其从过渡采样率转换到目标采样率;对目标采样率的音频数据进行并串转换后以串行接口输出。本发明实现了基于FPGA的异步采样率转换,无需复杂的布线,成本低,具有广泛应用前景。
Description
技术领域
本发明属于音频处理领域,尤其涉及一种音频异步采样率转换处理方法。
背景技术
在广电领域中,由于音频序列的采样率有很多种(32k,44.1k,48k,96k,192k等,单位是Hz),音频采样率转换是一种常用的处理方法。采样率转换可分为同步采样率转换(Synchronous sample rate convert,SSRC)与异步采样率转换(Asynchronous sample rate convert,ASRC)两种。同步采样率转换是指转换前后的码率时钟是同步的、相关的,其码率之比为恒定值;异步采样率转换是指转换前后的码率时钟是异步的、独立的,如信号在两个具有独立时钟的数字系统之间传递时,往往需要采用异步采样率转换来实现信号的码率转换。异步采样率转换的挑战在于:两个数字系统之间的时钟是异步的,这意味着两时钟频率之比可能是无理数,不能通过简单倍率的插值-滤波-抽取来实现;时钟频率比不是常数,有可能随着环境(如温度)的变化而变化,系统需要通过一定的策略跟踪补偿。
异步采样率转换通常是采用专门的芯片来完成这个工作,这样不但增加了成本,而且PCB的布线也要增加难度。采样率转换的方法还有以下两种:(1)使用DAC将输入数字信号变成模拟信号,低通滤波后进ADC采样,得到目标信号;(2)通过算法,对输入信号在数字域作重采样运算直接得到目标信号,实现采样率转换。其中,方法(1)的性能主要由DAC和ADC决定,属于数模混合设计,依赖于制造工艺,难以得到高性能的实现;方法(2)采用全数字实现,性能主要取决于算法的设计,可在现场可编程门阵列(Field-Programmable GateArray,FPGA)中实现。
综上所述,现有技术进行音频异步采样率转换处理时,存在成本高,布线复杂等问题。
发明内容
本发明的目的在于提供一种音频异步采样率转换处理方法,以解决现有技术进行音频异步采样率转换处理时,存在成本高,布线复杂的问题。
本发明是这样实现的,一种音频异步采样率转换处理方法,包括以下步骤:
实时计算音频数据的输入采样率与输出的目标采样率的比率,根据所述比率选择过渡采样率;
对所述并行数据流进行至少一次插值处理,将其转换为所述过渡采样率的音频数据;
对所述过渡采样率的音频数据进行至少一次下变换采样处理,将其从所述过渡采样率转换到所述目标采样率;
对所述目标采样率的音频数据进行并串转换后以串行接口输出。
本发明根据实时计算音频数据的输入采样率与输出的目标采样率的比率选择过渡采样率,先对并行数据流进行插值后转换为过渡采样率的音频数据,再对过渡采样率的音频数据进行下变换采样后将其转换到所述目标采样率,最后对目标采样率的音频数据进行并串转换后输出,实现了基于FPGA的异步采样率转换,无需复杂的布线,成本低,具有广泛应用前景。
附图说明
图1是本发明提供的音频异步采样率转换处理方法的流程图;
图2是本发明提供的串行音频异步采样率转换处理的示意图;
图3是本发明提供的异步采样率转换的示意图;
图4是本发明提供的输入输出比率检测的示意图;
图5是本发明一个示例提供的音频异步采样率转换示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明根据实时计算音频数据的输入采样率与输出的目标采样率的比率选择过渡采样率,先对并行数据流进行插值后转换为过渡采样率的音频数据,再对过渡采样率的音频数据进行下变换采样后将其转换到所述目标采样率,最后对目标采样率的音频数据进行并串转换后输出。
图1示出了本发明提供的音频异步采样率转换方法的流程图。
在步骤S101中,实时计算音频数据的输入采样率与输出的目标采样率的比率,根据比率选择过渡采样率;
在步骤S102中,对并行数据流进行至少一次插值处理,将其转换为过渡采样率的音频数据;
在步骤S103中,对过渡采样率的音频数据进行至少一次下变换采样处理,将其从过渡采样率转换到目标采样率;
在步骤S104中,对目标采样率的音频数据进行并串转换后以串行接口输出。
具体应用时,音频数据包括串行数字音频数据流和并行数字音频数据流,当音频数据流为串行数字音频数据流时,在步骤S101之前,方法还包括:
将输入的串行数字音频数据流进行串并转换解串为并行数据流。
其中,步骤S102中的插值处理采用正弦内插插值方法。步骤S103中的下变换采样处理具体为:增加信号的采样率;进行低通滤波用以防止混叠;降低信号的采样率。
本发明提到的音频异步采样率转换方法通过FPGA即可实现,不需要外部锁相环提供锁相时钟,由FPGA内部的数字时钟管理器(Digital ClockManagement,DCM)数字锁相环就能产生。通过计算输入采样时钟与输出采样时钟的比率,得出需要对输入采样样本进行上变换的比例,通过正弦内插算法,扩充输入采样样本的数量,并存储到FPGA内部的块随机存储器(BLOCK RAM,BRAM)中,再通过下变换抽点采样,得到输出采样样本。
图2示出了本发明提供的串行音频异步采样率转换处理的示意图。
其中音频串并转换模块用于将数据格式为I2S,24bit的串行数据解串(也可支持其他的数据格式,如Left justified,24bit等,通过修改代码实现),数字时钟锁相模块用于产生输出时钟,异步采样率转换模块为主功能模块,音频并串转换模块用于将并行音频数据转换为串行数据输出。
由于在广电领域,音频通常都以串行方式在不同的数字系统之间传递,而且串行传递的方式能节省FPGA的I/O,减少PCB的走线,使整个系统更加稳定。作为本发明的另一个实施例,图2也适用于并行音频异步采样率转换处理,即对并行数据进行处理时,省略图2所示的串并转换和并串转换两个步骤即可。
图3示出了本发明提供的异步采样率转换处理的示意图。
异步采样率转换是本发明提供的音频异步采样率转换方法的核心部分,如图3所示,异步采样率转换主要包括比率控制和重采样两个步骤。其中比率控制进一步包括步骤比率控制和输入采样存储,重采样进一步包括步骤系数存储、相位调整和FIR滤波。
其中:
步骤比率控制用于检测输入采样时钟与输出采样时钟的比率,该过程为动态实时检测,并将检测结果进行传送,用于步骤输入采样存储和相位调整。如果输入时钟或输出时钟不稳定,比率控制的输出会被旁路掉,直到输入时钟和输出时钟稳定。
步骤输入采样存储用于存储输入采样样本,并根据步骤比率控制检测的比率在相邻两采样样版本中插入N个空白采样点。N值的大小由步骤比率控制检测的比率决定。
步骤相位调整用于进行插值运算,采用正弦内插算法,系数在步骤系数存储中进行存储,并经步骤输入采样存储中插入的空白采样点替换为有效的采样点。正弦内插公式为:
其中yj(i)为要插入的有效采样点,x(i)为输入采样点,hj(i)为正弦内插系数。每一个yj(i)的值由之前的8个x(i)的值和hj(i)决定。公式的详细推导过程在此就不作累述。
步骤FIR滤波用于进行下采样,得到输出采样。
由于输入输出时钟的比率不一定是整数,而插值运算只能插入整数个采样样本,所以N值还要受到步骤输入采样存储中先入先出队列(First Input FirstOutput,FIFO)读写指针的影响,要保证FIFO不会出现读空和写满现象的出现。所以在步骤比率控制中要根据FIFO状态调节检测比率,这样才能保证音频采样的准确性。
本发明可以应用于任何数字传输或通信系统或设备中,其实例已经得到了验证,使用的芯片是Xilinx的Spartan6系列XC6SLX45。随着可编程逻辑器件设计的发展,基于FPGA设计实现异步采样率转换类似的应用也会越来越广泛。
图4示出了本发明提供的输入输出比率检测处理的示意图。输入输出比率检测是本发明关键步骤异步采样率转换的核心部分。
图5示出了本发明一个示例提供的音频异步采样率转换示意图。
通过本发明提供的音频异步采样率转换方法通过先插值,后抽点实现输入输出采样率不同频,不同相。如图5所示,黑色圆点表示输入采样样本,方框表示输出采样样本,输入输出不同频,不同向,而白色采样点代表上变换所插入的采样样本。
本发明通过数字锁相环完成了精确的相位检测,通过正弦内插算法开展繁复的运算处理。在分析传统方法的基础上,采用一种新的插值生成方法,实现基于FPGA的异步采样率转换处理,无需复杂的布线,成本低,具有广泛应用前景。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (4)
1.一种音频异步采样率转换处理方法,包括以下步骤:
实时计算音频数据的输入采样率与输出的目标采样率的比率,根据所述比率选择过渡采样率;所述音频数据包括串行数字音频数据流和并行数字音频数据流;
对所述并行数据流进行至少一次插值处理,将其转换为所述过渡采样率的音频数据;
对所述过渡采样率的音频数据进行至少一次下变换采样处理,将其从所述过渡采样率转换到所述目标采样率;
对所述目标采样率的音频数据进行并串转换后以串行接口输出;
所述插值处理采用正弦内插插值方法;所述音频异步采样率转换处理方法通过FPGA实现,由FPGA内部的数字时钟管理器提供锁相时钟,通过计算输入采样时钟与输出采样时钟的比率,得出需要对输入采样样本进行上变换的比例,通过正弦内插算法,扩充输入采样样本的数量,并存储到FPGA内部的块随机存储器中,再通过下变换抽点采样,得到输出采样样本。
2.如权利要求1所述的方法,其特征在于,所述音频数据的输入为FPGA的输入,所述串行接口为FPGA的输出接口。
3.如权利要求1所述的方法,其特征在于,所述音频数据包括串行数字音频数据流和并行数字音频数据流,当所述音频数据流为串行数字音频数据流时,在所述实时计算音频的输入采样率与输出目标采样率的比率步骤之前,所述方法还包括:
将输入的串行数字音频数据流进行串并转换解串为并行数据流。
4.如权利要求1所述的方法,其特征在于,所述下变换采样处理具体为:
增加信号的采样率;
进行低通滤波;
降低信号的采样率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210033276.0A CN102594361B (zh) | 2011-11-01 | 2012-02-14 | 音频异步采样率转换处理方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110340452.0 | 2011-11-01 | ||
CN201110340452 | 2011-11-01 | ||
CN2011103404520 | 2011-11-01 | ||
CN201210033276.0A CN102594361B (zh) | 2011-11-01 | 2012-02-14 | 音频异步采样率转换处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102594361A CN102594361A (zh) | 2012-07-18 |
CN102594361B true CN102594361B (zh) | 2015-08-12 |
Family
ID=46482616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210033276.0A Active CN102594361B (zh) | 2011-11-01 | 2012-02-14 | 音频异步采样率转换处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102594361B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104168524A (zh) * | 2013-05-17 | 2014-11-26 | 无锡华润矽科微电子有限公司 | 数字功放设备的控制电路及其控制方法 |
CN108492832A (zh) * | 2018-03-21 | 2018-09-04 | 北京理工大学 | 基于小波变换的高质量声音变换方法 |
CN110708069B (zh) * | 2019-06-24 | 2023-05-02 | 珠海全志科技股份有限公司 | 一种异步采样率转换装置及转换方法 |
CN110634512A (zh) * | 2019-09-29 | 2019-12-31 | 李翼东 | 音频文件采样率的转化方法、装置、设备及储存介质 |
CN115223578B (zh) * | 2022-09-21 | 2023-07-14 | 浙江地芯引力科技有限公司 | 一种音频信号同步方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1768476A (zh) * | 2003-03-31 | 2006-05-03 | 皇家飞利浦电子股份有限公司 | 上下采样率转换器 |
CN101395837A (zh) * | 2006-01-05 | 2009-03-25 | 塔特公司 | Nicam音频信号重采样器 |
CN101944364A (zh) * | 2009-07-09 | 2011-01-12 | 展讯通信(上海)有限公司 | 音频处理方法及音频系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6531975B1 (en) * | 2001-05-24 | 2003-03-11 | Cirrus Logic, Incorporated | Apparatus and method for multi-channel digital to analog conversion of signals with different sample rates |
-
2012
- 2012-02-14 CN CN201210033276.0A patent/CN102594361B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1768476A (zh) * | 2003-03-31 | 2006-05-03 | 皇家飞利浦电子股份有限公司 | 上下采样率转换器 |
CN101395837A (zh) * | 2006-01-05 | 2009-03-25 | 塔特公司 | Nicam音频信号重采样器 |
CN101944364A (zh) * | 2009-07-09 | 2011-01-12 | 展讯通信(上海)有限公司 | 音频处理方法及音频系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102594361A (zh) | 2012-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102594361B (zh) | 音频异步采样率转换处理方法 | |
Patel et al. | VHDL implementation of UART with status register | |
CN102401871A (zh) | 基于fpga和arm硬件平台的故障信息综合装置 | |
CN107169244B (zh) | 一种机电-电磁暂态混合仿真接口系统及方法 | |
Bhadra et al. | A low power UART design based on asynchronous techniques | |
CN202929519U (zh) | 一种多通道相位可调的信号发生器 | |
CN1996975A (zh) | 一种信号测量设备、系统及方法 | |
CN104375006A (zh) | 一种快速同步相量修正方法 | |
CN202216989U (zh) | 基于fifo结构总线控制方式的直流电子负载 | |
CN110166021B (zh) | 一种实现任意降采样率转换的数字信号处理方法 | |
CN109709851B (zh) | 一种复杂调制信号高速生成装置和方法 | |
CN106603442B (zh) | 一种片上网络的跨时钟域高速数据通信接口电路 | |
CN107332539A (zh) | 一种高速并行多路分数延时滤波器实现方法 | |
CN101551790B (zh) | 应用于通信领域的快速傅立叶变换实现方法及装置 | |
CN113900975B (zh) | 一种同步fifo | |
CN105445545A (zh) | 基于iec62056标准的三相谐波光纤电能表 | |
CN205228473U (zh) | 一种基于现场可编程门阵列的微型导航计算机 | |
CN202043074U (zh) | 可配置数字下变频器 | |
CN201909847U (zh) | 基于vxi接口的双通道数字信号采集装置 | |
CN102522987B (zh) | 非相干重采样装置 | |
CN112181356A (zh) | 一种可配置的多进多出fifo的设计方法及装置 | |
CN204964620U (zh) | 一种总谐波失真和信噪比参数的测试设备 | |
CN1937605B (zh) | 一种相位获取装置 | |
CN102045078B (zh) | 一种基于fpga的软件接收机系统及实现方法 | |
CN109507650A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210423 Address after: 117000 3 / F, block a, No.3, Kehai street, high tech Industrial Park, Dalian, Liaoning Province Patentee after: DALIAN GIGATEC TECHNOLOGY Co.,Ltd. Address before: Hi Tech Park Kehai street Dalian city Liaoning province 116023 No. 3 Patentee before: DALIAN GIGATEC ELECTRONICS Co.,Ltd. |
|
TR01 | Transfer of patent right |