一种自适应的变采样率音频采样方法
技术领域
本发明属于信号处理技术领域,尤其涉及一种自适应的变采样率音频采样方法。
背景技术
无线电综合测试仪在测试音频信号时,为了测试音频信号失真度和信纳比,采样率是最高频率的10倍以上,以便采集最高音频的5次谐波。过高的采样率,导致在采集低频音频信号时,采集的数据不满一个周期,影响音频频率、音频电平音频失真度和信纳比等参数的精度。传统的解决办法舍弃低频音频信号或降低最高音频信号频率,该方法虽能解决最高频率音频信号5次谐波可测与最低频率音频信号采样数据满周期的矛盾,但是降低了音频测量范围;另一种方法是采用分频段采样,该方法无须压缩音频信号测试范围,但是测量前必须预先估计输入音频信号频率范围,不方便用户操作。
无线电综合测试仪的音频分析功能,通过时域采样,然后傅里叶变换获取所需要的参量进行相应的计算实现。进行傅立叶变换,在频域实现音频参数的测量。失真度的测量要求输入信号至少5次谐波可测;信号幅度的测量要求时域采样至少满一个周期。在音频信号频率范围较宽的情况下,固定采样频率无法同时满足高频音频信号5次谐波可测与低频音频信号采样数据满周期的要求。自适应的变采样率是根据输入音频信号的频率适时快速调整采样频率,同时满足以上两个条件。
但在现有技术中,存在着各种各样的问题。在音频分析中,高频音频信号5次谐波可测、低频音频信号采样数据满周期是一对矛盾,固定采样频率无法兼顾二者的需求。在工程实现中往往采用压缩音频频率范围,或者调整采样频率。压缩音频频率范围,降低仪器的测试能力,无法满足市场需求。通行的采样频率调整分频域、时域进行。频域调整就是变换采样率,对采样数据进行抽取、内插来实现采样率的调整,但前提是高频5次谐波和低频在数据中存在。时域调整是根据采样数据,通过测量过零点估计频率,然后根据估计频率调整采样频率,过零点检测要求输入信号时严格的正弦波形,工程中受噪声和检测方法影响,误差大。其次,傅立叶变换法估计频率;要求有足够的采样数据,在低频时不适用。
发明内容
为解决上述问题,本发明提供一种自适应的变采样率音频采样方法,其在不降低音频测试范围前提下,无须用户估计输入音频信号音频范围,自动实现采样率切换。本发明采用了检测过零点数目,依据过零点数目调整采样频率,有效兼顾了高频音频信号5次谐波可测、低频音频信号采样数据满周期的要求,同时避免了噪声的影响,降低了对采样频率切换时间的要求,扩展了音频频率测试范围。
本发明的一种自适应的变采样率音频采样方法根据采样数据测量过零点数目,依据所述过零点数目调整采样频率,具体包括以下步骤:
步骤1,通过采样点的电压值估计过零点的时刻:判断前后2个采样值的符号是否相同,若相同,则所述两个采样值的两个采样点间没有过零点发生;若不同,则所述两个采样值的两个采样点的电压穿过零点一次,所述两个采样点的电压符号发生一次变更;
步骤2,统计一帧采样数据内变更的次数得出过零点的数目,具体而言,以采样数据的符号位为计数时钟,利用符号位的上升沿和下降沿,在一帧采样数据传输时间内进行计数,得到计数值就是这帧数据的过零点数目;
步骤3,根据过零点数目与频率的对应关系,利用分段采样进行采样频率的选择;
进一步的,所述步骤3包括:
步骤31,同一频率内频率与过零点数目的对应关系如式(1)所示:
N为过零点数目,M帧数据长度,f为输入音频信号频率,fs为采样频率,不大于x的最大整数;
步骤32,采用分段采样减少采样频率级数,分段原则是:在该采样频率下,此段音频频率范围内,过零点数目范围为:[Nmin,Nmax],其中
步骤33,分段结束后,确定各频率段的最大频率在各采样率下的过零点数目,其中i大于等于1、j小于等于L,Nij表示第i频率范围,j大于等于1、j小于等于L,表示第j个采样频率,L表示所分的频率段个数,利用检测到的过零点数目与[N1j,N2j,……,NLj]进行采样频率的调整。
本发明的有益效果在于:
本发明利用采样数据的符号位进行计数,有效避免了过零点抖动和噪声的影响,减少了运算量。
本发明依据过零点数目与频率的对应关系,确定所需要采样率的级数;根据检测的过零点数目与计算出的过零点数目比较,自动选择采样频率。有效解决了高频音频信号5次谐波可测、低频音频信号采样数据满周期的矛盾,提高了测量精度,扩展了频率测量范围。
总而言之,本发明与目前广泛变采样率系统相比,节省了运算资源,提高采样频率转换速度,同时提高了测量精度,扩展了频率测量范围。
附图说明
图1是本发明的自适应的变采样率音频采样方法的正弦信号电压值采样示意图。
具体实施方式
本发明的基本原理是根据采样数据测量过零点数目,依据过零点的数量调整采样频率。如图1,一般情况下,过零点不是采样点。因此,只能通过采样点的电压值间接地估计过零点的时刻。过零点时刻的确定需要先判断前后2个采样值的符号是否相同,如前后符号相同,如图中m-2、m-1点,表明两采样点间没有过零点发生;如前后符号相反,如图中m-1、m点,表明m-1至m时间段内,电压穿过零点一次,采样点电压符号发生一次变更。
因此,可以用统计一帧采样数据内,采样数据变更的次数,从而得出过零点的数目。本方案中,以采样数据的符号位为计数时钟,利用符号位的上升沿和下降沿,在一帧数据传输时间内进行计数;得到计数值就是这帧数据的过零点数目。
采样频率的选择:
(1)过零点数目不是频率,不能直接确定采样频率。同一频率,不同采样频率,过零点数目也不相同,频率与过零点数目的对应关系如下:
N为过零点数目,M帧数据长度,f为输入音频信号频率,fs为采样频率,不大于x的最大整数。
(2)为减少采样频率级数,本方案采用分段采样。分段的原则是:在该采样频率下,此段音频频率范围内,过零点数目范围:[Nmin,Nmax],其中
(3)采样频率的选择。
分段结束后,确定各频率段的最大频率在各采样率下的过零点数目。以Nij表示,i大于等于1、j小于等于L,表示第i频率范围,j大于等于1、j小于等于L,表示第j个采样频率,L表示所分的频率段个数。利用检测到的过零点数目,与[N1j,N2j,……,NLj],进行采样频率的调整。
本发明的数理结果验证
在实验板上,输入幅度为1Vrms,频率为10Hz、100Hz、500Hz、1KHz、2KHz、10KHz、20KHz的音频信号,不同频率音频信号频率、失真度、信纳比测试结果如表1所示:
表1
输入信号 |
10Hz |
100Hz |
500Hz |
1Kz |
2Kz |
10KHz |
20KHz |
频率(HZ) |
10 |
100 |
500 |
1000 |
2000 |
10000 |
20000 |
失真度(%) |
0.043 |
0.142 |
0.157 |
0.163 |
0.195 |
0.161 |
0.217 |
信纳比(dB) |
42 |
55 |
46 |
51 |
44 |
55 |
51 |
本技术方案在时域上检测过零点数目,避免了过零点抖动与噪声的影响,对采样数据的长度也不像傅立叶变换法对数据长度有要求,能实时快速地自动调整采样频率。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。