本发明涉及数字信号处理领域,尤其是涉及一种带阻尼系数的音频信号瞬时相位的检测方法。
背景技术:
在通常的立体声音频信号瞬时相位检测中,通常是不带阻尼系数的,导致的结果是音频信号相位值变化太快且忽高忽低,在有些情况下相位指示器频繁显红,而实际上音频信号并没有很多相位差现象,这给操作人员带来了较大困扰。
技术实现要素:
本发明主要是解决现有技术所存在的在立体声音频信号瞬时相位检测时显示值完全按照当前信号的相位值,变化过于频繁,参考价值较低的技术问题,提供一种变化率更合理、更具有参考价值的带阻尼系数的音频信号瞬时相位的检测方法。
本发明针对上述技术问题主要是通过下述技术方案得以解决的:一种带阻尼系数的音频信号瞬时相位的检测方法,包括以下步骤:
s001、从时间片中按序取出一个立体声pcm数据,将立体声pcm数据分离出左右声道,提取左声道的音量值和右声道的音量值;
s002、当左声道音量值或右声道音量值至少有一个低于有效音量门限l时,如果当前所处理的为最后一个立体声pcm数据,进入步骤s005,如果不为最后一个则返回步骤s001提取下一个立体声pcm数据;如果左声道音量值和右声道音量值均不低于有效音量门限值l时,进入步骤s003;
s003、当左声道pcm数值和右声道pcm数值均为正值或均为负值时,同相统计数cs增大1,否则同相统计数cs减小1;进入步骤s004;
s004、有效音量统计数s增大1,如果当前所处理的为最后一个立体声pcm数据,进入步骤s005,否则返回步骤s001提取下一个立体声pcm数据;
s005、计算本时间片的相位值。
作为优选,步骤s005中,时间片的相位值cv由以下公式计算得到:
式中,f为阻尼系数,lv为上一个时间片的相位值,如果当前时间片为第一个时间片,则lv为0。
作为优选,步骤s001中,按以下公式计算音量值:
式中,b为pcm数据的精度位数,y(i)为当前处理的pcm数值,也就是左右声道分离之后,当前计算的声道对应的数值,i的取值范围是1至n,n为时间片中的采样点个数。
作为优选,步骤s002中,有效音量门限l为-48dbfs。低于-48dbfs的信号如果参与计算相位则容易误判。
作为优选,阻尼系数f为0.3。
计算得到的相位值可以用于给指示器显示实时相位,指示器的范围是[-100,100],指示器在此范围内来回波动;相位值还可以用于对音频文件或音频实时信号进行反相报警,例如时间片设为24毫秒,连续统计一定持续时长(如15秒)的所有时间片的相位低于-20的百分数比,如果大于40%则判定该文件或信号存在反相。
本发明带来的实质性效果是,可以有效降低误判率,引入阻尼系数有效解决瞬时相位变化太快忽高忽低的弊病,给操作人员带来较为真实的判断。
附图说明
图1是本发明的一种流程图。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
实施例:本实施例的一种带阻尼系数的音频信号瞬时相位的检测方法,如图1所示,包括以下步骤:
s001、从时间片中按序取出一个立体声pcm数据,将立体声pcm数据分离出左右声道,提取左声道的音量值和右声道的音量值;
s002、当左声道音量值或右声道音量值至少有一个低于有效音量门限l时,如果当前所处理的为最后一个立体声pcm数据,进入步骤s005,如果不为最后一个则返回步骤s001提取下一个立体声pcm数据;如果左声道音量值和右声道音量值均不低于有效音量门限值l时,进入步骤s003;
s003、当左声道pcm数值和右声道pcm数值均为正值或均为负值时,同相统计数cs增大1,否则同相统计数cs减小1,进入步骤s004;
s004、有效音量统计数s增大1,如果当前所处理的为最后一个立体声pcm数据,进入步骤s005,否则返回步骤s001提取下一个立体声pcm数据;
s005、计算本时间片的相位值。
时间片定义如下:将立体声音频信号采样时间片定义为n个连续的立体声采样点,当n=1152时,刚好是mpeg1的层二和层三音频格式一帧的采样数,对于采样频率为48000hz、精度b=16位的pcm音频数据,每个立体声采样点分为左右通道两个采样点,每个单通道采样点数值范围[-32768,32767],每时间片为24毫秒,时间片内采样点数值为y(i),i=1,2,...n。
步骤s005中,时间片的相位值cv由以下公式计算得到:
式中,f为阻尼系数,lv为上一个时间片的相位值,如果当前时间片为第一个时间片,则lv为0。
步骤s001中,按以下公式计算音量值:
式中,b为pcm数据的精度位数,y(i)为当前处理的pcm数值,也就是左右声道分离之后,当前计算的声道对应的数值,i的取值范围是1至n,n为时间片中的采样点个数。
步骤s002中,有效音量门限l为-48dbfs。低于-48dbfs的信号如果参与计算相位则容易误判。
阻尼系数f为0.3。
计算得到的相位值可以用于给指示器显示实时相位,指示器的范围是[-100,100],指示器在此范围内来回波动;相位值还可以用于对音频文件或音频实时信号进行反相报警,例如时间片设为24毫秒,连续统计一定持续时长(如15秒)的所有时间片的相位低于-20的百分数比,如果大于40%则判定该文件或信号存在反相。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
尽管本文较多地使用了pcm数据、阻尼系数等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。