第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 音频文件采样率的转化方法 装置 设备及储存介质与流程

音频文件采样率的转化方法 装置 设备及储存介质与流程

时间:2019-11-29 03:57:07

相关推荐

音频文件采样率的转化方法 装置 设备及储存介质与流程

本发明涉及音频处理技术领域,具体涉及一种音频文件采样率的转化方法、装置、设备及储存介质。

背景技术:

现在的音频文件多采用多种采样率进行录制,最常见的为44.1khz和48khz,一些高保真度音频文件为了更好的播放效果会采用更高的采样频率,如96khz和192khz,然而更高的采样频率会造成存储文件过大,即使采用压缩算法压缩之后,音频文件的大小依旧可达每分钟10兆至几十兆,同时,采用高采样率还会增加录制的难度,而采用低采样率进行音频文件的录制,虽然能够减小文件的大小,但是播放效果却往往不如人意。所以如何采用较低的采样率实现较高的播放效果成为一个亟待解决的问题。

技术实现要素:

为了解决现有的音频文件低采样率播放效果差,而要实现较好的播放效果就必须使用较高采样率进行录制,导致文件过大和录制难度大的问题,本发明依据奈奎斯特采样定理,提供了一种能够对音频文件进行插值处理,提高音频文件采样率,进而提高播放效果的音频文件采样率的转化方法、装置、设备及储存介质。

本发明所采用的技术方案为:

一种音频文件采样率的转化方法,包括以下步骤:

s101.获取录制完毕的第一音频文件,其中,录制时的采样频率大于或等于原始音频文件最大信号频率的两倍;

s102.读取所述第一音频文件的文件头,得到所述第一音频文件的采样频率、位宽、声道数和采样点;

s103.定义一个包括有若干个不同时间点的时间集合,将每个采样点分别代入sinc函数,并计算出每个采样点在时间集合中所有时间点下的sinc函数值;

s104.针对所述时间集合中的某个时间点,获取所有采样点在该时间点下的sinc函数值,并进行叠加,将叠加结果作为该时间点的插值数据插入到所述第一音频文件中且对应该时间点的位置上;

s105.获取所述时间集合中的下一个时间点,重复步骤s104,直到将时间集合中所有时间点的插值数据插入到所述第一音频文件中为止。

优化的,所述步骤s103中每个采样点进行sinc函数运算所采用的公式为:

其中,xa(t)为被采样的时域波形,xa(nt)为采样点,n为每个采样点所对应的标号,t为所述时间集合中的任意一个时间点;

f2为所述第一音频文件需要转化为的采样频率,f1为录制时的采样频率,t为采样间隔,为sinc函数。

优化的,在所述步骤s103之前还需进行以下步骤:

s102a.判断所述第一音频文件的声道数,若声道数等于1,则直接执行所述步骤s103~s105,若声道数大于1,则针对每个声道,分别独立且同时地执行所述步骤s103~s105。

优化的,在所述步骤s102前,还需判断所述第一音频文件是否为压缩文件,若是,则需进行解压,然后执行步骤s102,否则,直接执行步骤102。

优化的,所述步骤s105后,还需改变所述第一音频文件的文件头。

本发明所采用的另一种技术方案为:

一种音频文件采样率的转化装置,包括音频获取模块、音频读取模块和插值计算模块;

所述音频获取模块用于获取第一音频文件;

所述音频读取模块,通信连接所述音频获取模块,用于读取所述第一音频文件的文件头,得出采样频率、位宽、声道数和采样点;

所述插值计算模块,通信连接所述音频读取模块,用于计算所述第一音频文件中每个采样点在时间集合中所有时间点下的sinc函数值,得出时间集合中所有时间点的插值数据,并将插值数据插入所述第一音频文件中,完成对所述第一音频文件采样率的转化。

本发明所采用的另一种技术方案为:

一种音频文件采样率的转化设备,包括通信相连的存储器和处理器,其中,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序实现上述任意一项所述的音频文件采样率的转化方法。

本发明所采用的另一种技术方案为:

一种储存介质,所述储存介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的音频文件采样率的转化方法。

本发明的有益效果为:

(1)本发明的工作原理为:先读取录制完毕的第一音频文件中的采样点,然后将每个采样点分别代入sinc函数,计算出每个采样点在时间集合中所有时间点下的函数值,并对所有采样点在同一时间点下的函数值进行叠加,得出该时间点下的插值数据,最后将该插值数据插入到第一音频中且与该时间点对应的位置上,以此循环,直到将时间集合下所有时间点的插值数据插入到第一音频文件中,这样即可实现第一音频文件采样频率的转化。

通过上述设计,使得低采样率的音频文件,通过计算采样点的插值数据,并插值在音频文件中,即可实现低采样率向高采样率的转化,进而可以大大的提高播放效果;另外,只要能够保证录制内容完整(即采样频率大于或等于原始音频文件最大信号频率的两倍,满足奈奎斯特采样定理),即可利用本方法实现采样频率的提高,避免了文件要得到好的播放效果,就需要在录制时采用高采样率的问题,大大的减少了文件的大小和录制的难度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明提供的音频文件采样率的转化方法的步骤流程示意图。

图2是本发明提供的音频文件采样率的转化装置的结构示意图。

图3是本发明提供的音频文件采样率的转化设备的结构示意图。

图4是本发明提供的一种音频文件的数据实例图。

图5是图4中音频文件的文件头内容图。

图6是图4中a处放大图。

图7是图4中b处的放大图。

图8是本发明提供的采样点的sinc函数的仿真波形。

具体实施方式

下面结合具体实施例对本发明作进一步阐述。在此需要说明的是,对于这些实施例方式的说明用于帮助理解本发明,但并不构成对本发明的限定。

文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,单独存在b,同时存在a和b三种情况,本文中术语“/和”是描述另一种关联对象关系,表示可以存在两种关系,例如,a/和b,可以表示:单独存在a,单独存在a和b两种情况,另外,本文中字符“/”,一般表示前后关联对象是一种“或”关系。

实施例一

如图1所示,本实施例所提供的音频文件采样率的转化方法,包括以下步骤:

s101.获取录制完毕的第一音频文件,其中,录制时的采样频率大于或等于原始音频文件最大信号频率的两倍。

所述步骤s101则是原始音频数据进行录制的过程,即是通过将模拟信号以固定的采样频率转换成数字信号的表现形式。

在本实施例中,录制时的采样频率必须要大于或等于原始音频文件最大信号频率的2倍,这即是奈奎斯特采样定理。

奈奎斯特采样定理指出,即只要采样频率大于或等于2倍原始音频数据的最高频率,即可完整的恢复信号的全部信息。所以,必须要保证录制时的采样频率大于或等于2倍最大信号频率,这样才能保证第一音频文件信息的完整性,保证后续插值完毕后,文件内容的完整性。

s102.读取所述第一音频文件的文件头,得到所述第一音频文件的采样频率、位宽、声道数和采样点。

所述步骤s102中采样频率、声道数、位宽以及采样点均是从文件头中读取的,通过读取上述信息,可为后续插值处理提供数据基础。

s103.定义一个包括有若干个不同时间点的时间集合,将每个采样点分别代入sinc函数,并计算出每个采样点在时间集合中所有时间点下的sinc函数值。

s104.针对所述时间集合中的某个时间点,获取所有采样点在该时间点下的sinc函数值,并进行叠加,将叠加结果作为该时间点的插值数据插入到所述第一音频文件中且对应该时间点的位置上。

s105.获取所述时间集合中的下一个时间点,重复步骤s104,直到将时间集合中所有时间点的插值数据插入到所述第一音频文件中为止。

所述步骤s103~s104,则是计算采样点的插值数据,即每个采样点在时间集合下的若干不同时间点下的函数值。

在本实施例中,每一个采样点均要计算在时间集合下所有时间点的sinc函数值,是为了保证插值数据的精度。

计算出每个采样点在时间集合中所有时间点下的函数值后,即可对其中的一个时间点下的所有采样点的函数值进行叠加计算,以得到该时间的插值数据,插入到第一音频文件中,在该时间点形成新的数据段。

同理,只要将所有时间点的插值数据插入到第一音频文件中后,即可形成一个具有高采样频率的音频文件,最终实现第一音频文件中低采样频率向高采样频率的转化,进而提高第一音频文件的播放效果。

另外,采用本发明的转化方法,使得音频文件要达到好的播放效果,不需要采用高采样频率进行录制,大大的减小了文件的大小,避免了传统具有较好播放效果的音频文件存在文件过大的问题,大大的降低了音频文件的存储空间占用率。

优化的,所述步骤s103中每个采样点进行sinc函数运算所采用的公式为:

其中,xa(t)为被采样的时域波形,xa(nt)为采样点,n为每个采样点所对应的标号,t为所述时间集合中的任意一个时间点。

f2为所述第一音频文件需要转化为的采样频率,f1为录制时的采样频率,t为采样间隔,为sinc函数。

通过上述公式,即可实现每个采样点的在时间集合中某个时间点的函数值的计算。

在上述公式中,当取一个采样点进行计算时,xa(t)就与时间t有关,当t取一个值时,xa(t)的值就为一个,而在本实施例中,一般采用多个,这些选取的不同的时间,则构成了时间集合。

而某个时间点的插值数据则是将第一集合中的某个时间点下所有采样点的sinc函数值进行叠加,叠加结果则是该时间点的插值数据。最后将所有时间点的插值数据插入到第一音频文件中,即可形成新的音频文件,完成采样频率向高采样频率的转化,进而提高第一音频文件的播放效果。

本发明的具体原理为:

依据奈奎斯特定理,只要在保证采样频率高于或等于被采样波形的最高信号频率两倍时,即可根据采样数据完整的恢复被采样的波形,所以本发明即是利用奈奎斯特定理,在满足奈奎斯特定理的条件下,对录制好的音频文件(即第一音频文件)进行插值处理,进而提高其采样频率,达到更好的播放效果。

由采样信息恢复到被采样的波形过程中,需要进行内插,所以,必须使用上述公式,即

可以看到上述公式中,定义域为(-∞,∞),即对当前时刻进行重建时需要用到对于当前时刻而言是未来时刻的数据,然而,所有的dac(数模转换器)工作方式均为读取一个采样点的数据,然后对其进行解码,而无法得到之后采样点的数据,也就无法实现以理想的内插函数对采样后形成的音频文件进行数模转换,这就是采用较高采样率录制的音频文件在实际中可以得到更好播放效果的原因。

所以,本发明就是从一个已经录制好的音频文件中获取一段时间内所有的采样点信息,并对其进行插值处理,即通过上述公式计算sinc函数值,并进行叠加,得到插值数据,再插入到原音频文件中(即录制的音频文件,也就是本实施例中的第一音频文件),这样就可以提高其原本的采样率,使对于dac而言,就拥有了更高采样频率,进而来实现播放效果的提升;同理,对于整个录制完毕的音频文件来说,也可进行相同的处理,以提高采样率来提升播放效果。

优化的,在所述步骤s103之前还需进行以下步骤:

s102a.判断所述第一音频文件的声道数,若声道数等于1,则直接执行所述步骤s103~s105,若声道数大于1,则针对每个声道,分别独立且同时地执行所述步骤s103~s105。

由于大部分音频文件为了提升播放效果,都不止一个声道,在进行插值处理时,要分声道进行处理。

所以,当第一音频文件的声道数大于1时,即针对每个声道,分别独立且同时的执行步骤s103~s105。

在本实施例中,需要特别指出的是,在针对每个声道进行插值处理时,最后在执行步骤s104时,每个时间点对应的插值数据需要插入到第一音频文件中的该声道中。如对左声道中的采样点进行插值处理,那得出的插值数据就应该插入到第一音频文件中的左声道中。

优化的,在所述步骤s102前,还需判断所述第一音频文件是否为压缩文件,若是,则需进行解压,然后执行步骤s102,否则,直接执行步骤102。

由于现在一般都会对录制完毕的文件进行压缩,以进一步的减少文件大小,所以遇到压缩的第一音频文件后,需要进行解压,才能顺利的读取第一音频文件的文件头。

优化的,所述步骤s105后,还需改变所述第一音频文件的文件头。

由于对第一音频文件中的采样点进行了插值处理,改变了第一音频文件的采样频率、长度等,所以需要相应的改变文件头中记载的采样频率、长度,便于文件进行播放时的读取。

实施例二

如图4~8所示,本实施例为实施例一种音频文件采样率的转化方法的一种具体转化实例。

如图4所示,图4则是一个以16进制表示的采样频率为48khz的非压缩音频文件的一部分,格式为wav,其主要包含了两部分,从0h至12fh为文件头,其余为非压缩的pcm数据。

本实施例是将48khz转换为96khz。

文件头之中的内容就如图5所示:

首先,根据图5中文件头给出的内容和图4,即可知道16h~17h表示的为音频文件的声道数,根据图6就可以知道该音频文件的声道数为2。

同理,根据图5中可知,18h~1bh代表的为音频文件的采样频率,如图6所示,即可知道该音频文件的采样频率为bb80h,换算成十进制则为48000,即48khz。

同理,图5中22h~23h表示的音频文件的位宽,即根据图7就可得出音频文件的位宽为32位。

为方便演示计算,设定该音频文件只有10个采样点,即左右声道各5个,并仅演示对左声道数据的处理过程,因为右声道与左声道处理相同。

使用上述的公式进行计算,即:

取出图1中左声道中的五个采样点,分别为5c00h、0518h、05a3h、0513h、0592h,为了方便计算,转换成10进制,需要特别指出,在实际转换过程中,无需转化。

5c00h、0518h、05a3h、0513h、0592h分别转换为10进制则为23552、1304、1443、1299、1426。

因96khz采样率为48khz的两倍,故插值时刻应位于两相邻原始采样点中间时刻,即t按照实施例中的公式进行计算,即可得出t的公式:

所以,以当前时刻为时间坐标原点,将其带入内插函数,即t取0.5t、1.5t、2.5t、3.5t、4.5t。

将t代入进行计算,即可得出第一个采样点23552在五个时间点的函数值,命名为i1,i1=[14994.-4998,2999,-2142,1666]。

同理,即可得出其余4个采样点的在五个时间点下的函数值,分别为:

i2=[830,-276,166,-118,92]

i3=[918,-306,183,-131,102]

i4=[826,-275,165,-118,91]

i5=[907,-302,181,-129,100]

最后,将五个采样点在五个时间点中的函数值按照步骤s104进行叠加,即可得出插值数据,并将其插入音频文件中的对应位置,并根据修改内容改写文件头即可完成48khz采样率音频文件升级为96khz采样率音频文件。

在进行叠加的时候需要注意,在本实施例中,五个时间点分别为0.5t、1.5t、2.5t、3.5t、4.5t。

将每个采样点函数值所形成的波形以matlab进行仿真得出,如图8所示,图8给出了5个采样点在五个时间点下的波形,图8中竖直方向上从上至下依次为第一采样点i1的波形,第二采样点i2的波形,第四采样点i4的波形,第五采样点i5的波形,以及第三采样点i3的波形。其中,图中i3,4即表示的为第三个采样点函数值中的第4个值,其余点表示含义相同,在此不多加赘述。

从图8中就可看出,当t为0.5t时,所对应的每个采样点的值分别为,第一个采样点为i1,1,即i1中的第一个值,为14994;第二个采样点为i2,1,即i2中的第一个值,为830;第三个采样点为i3,2,即i3中的第二个值,为-360;第四个采样点为i4,3,即i4中的第三个值,为165;第五个采样点为i5,4,即i5中的第四个值,为-129。将上述值进行叠加即可得出0.5t时的插值数据。

同理,从图8中即可看出的当t为1.5t、2.5t、3.5t、4.5t时,所对应的5个采样点的值,同样进行上述计算。

最后即可得出每个时间点的插值数据。

实施例三

如图2所示,本实施例提供了一种实现实施例一所述音频文件采样率的转化方法的硬件装置,包括音频获取模块、音频读取模块和插值计算模块。

所述音频获取模块用于获取第一音频文件。

所述音频读取模块,通信连接所述音频获取模块,用于读取所述第一音频文件的文件头,得出采样频率、位宽、声道数和采样点。

所述插值计算模块,通信连接所述音频读取模块,用于计算所述第一音频文件中每个采样点在时间集合中所有时间点下的sinc函数值,得出时间集合中所有时间点的插值数据,并将插值数据插入所述第一音频文件中,完成对所述第一音频文件采样率的转化。

本实施例提供的转化装置的工作过程、工作细节和技术效果,可以参见实施例一,在此不多加赘述。

实施例四

如图3所示,本实施例提供了一种实现实施例一中所述的音频文件采样率的转化方法的硬件设备,包括通信相连的存储器和处理器,其中,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序实现上述任意一项所述的音频文件采样率的转化方法。

本实施例提供的转化设备的工作过程、工作细节和技术效果,可以参见实施例一,在此不多加赘述。

实施例五

本实施例提供了一种存储包含实施例一所述的音频文件采样率的转化方法的计算机程序的储存介质,即是在储存介质中存储有计算机程序,所述计算机程序被处理器执行时实现如实施例一中所述的音频文件采样率的转化方法。

其中,计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置,也可以是移动智能设备(如智能手机、pad或ipad等)。

本实施例中的工作过程、工作细节和技术效果,可以参见实施例一,在此不多加赘述。

综上,采用本发明所提供的音频文件采样率的转化方法、装置、设备及储存介质,具有如下技术效果:

(1)一方面,能够将低采样率音频文件进行采样频率的转化,形成一个具有高采样频率的音频文件,进而提高低采样频率音频文件的播放效果;另一方面,采用本发明的转化方法,使得音频文件要达到好的播放效果,不需要采用高采样频率进行录制,大大的减小了文件的大小和录制难度,避免了传统具有较好播放效果的音频文件存在文件过大和录制难度高的问题,大大的降低了音频文件的存储空间占用率。

本发明不局限于上述可选实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是落入本发明权利要求界定范围内的技术方案,均落在本发明的保护范围之内。

技术特征:

1.一种音频文件采样率的转化方法,其特征在于,包括以下步骤:

s101.获取录制完毕的第一音频文件,其中,录制时的采样频率大于或等于原始音频文件最大信号频率的两倍;

s102.读取所述第一音频文件的文件头,得到所述第一音频文件的采样频率、位宽、声道数和采样点;

s103.定义一个包括有若干个不同时间点的时间集合,将每个采样点分别代入sinc函数,并计算出每个采样点在时间集合中所有时间点下的sinc函数值;

s104.针对所述时间集合中的某个时间点,获取所有采样点在该时间点下的sinc函数值,并进行叠加,将叠加结果作为该时间点的插值数据插入到所述第一音频文件中且对应该时间点的位置上;

s105.获取所述时间集合中的下一个时间点,重复步骤s104,直到将时间集合中所有时间点的插值数据插入到所述第一音频文件中为止。

2.根据权利要求1所述的一种音频文件采样率的转化方法,其特征在于,所述步骤s103中每个采样点进行sinc函数运算所采用的公式为:

其中,xa(t)为被采样的时域波形,xa(nt)为采样点,n为每个采样点所对应的标号,t为所述时间集合中的任意一个时间点;

f2为所述第一音频文件需要转化为的采样频率,f1为录制时的采样频率,t为采样间隔,为sinc函数。

3.根据权利要求1所述的一种音频文件采样率的转化方法,其特征在于:在所述步骤s103之前还需进行以下步骤:

s102a.判断所述第一音频文件的声道数,若声道数等于1,则直接执行所述步骤s103~s105,若声道数大于1,则针对每个声道,分别独立且同时地执行所述步骤s103~s105。

4.根据权利要求1所述的一种音频文件采样率的转化方法,其特征在于:在所述步骤s102前,还需判断所述第一音频文件是否为压缩文件,若是,则需进行解压,然后执行步骤s102,否则,直接执行步骤102。

5.根据权利要求1所述的一种音频文件采样率的转化方法,其特征在于:所述步骤s105后,还需改变所述第一音频文件的文件头。

6.一种音频文件采样率的转化装置,其特征在于:包括音频获取模块、音频读取模块和插值计算模块;

所述音频获取模块用于获取第一音频文件;

所述音频读取模块,通信连接所述音频获取模块,用于读取所述第一音频文件的文件头,得出采样频率、位宽、声道数和采样点;

所述插值计算模块,通信连接所述音频读取模块,用于计算所述第一音频文件中每个采样点在时间集合中所有时间点下的sinc函数值,得出时间集合中所有时间点的插值数据,并将插值数据插入所述第一音频文件中,完成对所述第一音频文件采样率的转化。

7.一种音频文件采样率的转化设备,其特征在于:包括通信相连的存储器和处理器,其中,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序实现如权利要求1~5任意一项所述的音频文件采样率的转化方法。

8.一种储存介质,其特征在于:所述储存介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1~5任意一项所述的音频文件采样率的转化方法。

技术总结

本发明公开了一种音频文件采样率的转化方法、装置设备及储存介质,本发明通过计算第一音频文件中每个采样点在若干个时间点的插值数据,并将所有时间点的插值数据插入到第一音频文件中,即可形成一个具有高采样频率的音频文件,最终实现第一音频文件中低采样频率向高采样频率的转化,进而提高第一音频文件的播放效果;另外,采用本发明的转化方法,使得音频文件要达到好的播放效果,不需要采用高采样频率进行录制,大大的减小了文件的大小,避免了传统具有较好播放效果的音频文件存在文件过大的问题,大大的降低了音频文件的存储空间占用率。

技术研发人员:李翼东

受保护的技术使用者:李翼东

技术研发日:.09.29

技术公布日:.12.31

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。