导读:本文深入探讨前处理环节。.首先介绍一些基本的名词,比如.文件名后缀.文件格式.音频格式.采样率和位深.预备知识.文件名后缀、文件格式和音频格式.常见的音频文件,比如.wav、.mp3、.m4a、.wma等,这些都代表什么?.仅仅是这类音频文件的后缀而已,不一定和音频文件的编码、音
本文深入探讨前处理环节。
首先介绍一些基本的名词,比如
常见的音频文件,比如.wav
、.mp3
、.m4a
、.wma
等,这些都代表什么?
仅仅是这类音频文件的后缀而已,不一定和音频文件的编码、音频数据的编码相关。
举例说明:
.pcm
.wav
,一般保存的是带有wav
规范文件头的,PCM格式的音频。.mp3
,指的是保存Moving Picture Experts Group Audio Layer III
格式的音频数据的文件。.m4a
,和前两个后缀不同,并没有名为m4a
的规范,实际指的是保存MPEG-4
格式的音频数据的文件。虽然没有以.mp4
为结尾,但实际上和.mp4
文件遵循了相同的规范,仅仅是由于APPLE的数码产品大热,才让m4a
流行起来。而m4a
文件存储数据时,可以保存AAC
格式编码的音频数据,也可以保存mp3
格式编码的音频数据。.wma
,微软公司出品,在Windows上可用的音频文件。从上述介绍可知,各种文件的格式,和音频数据自身的格式,可以不同。了解到这一点,很重要。
一些参考资料:
采样率,即1秒种之内,采集数据的频率。比如:
位深,即每个采集点,使用多少个二进制位来表达,常见的有:
从抽象的角度看,人的声音,可以理解为信号,而信号可以通过FFT变换,转换为各种波的迭加。理解这一点,很重要。
人的声音,对于大数人而言,发音频率一般在4K以内,基于前述人声可使用信号来表达的理论,使用8K的采样频率,可以满足常见的诉求。
一些参考资料:
相关的词汇有环绕立体声、左右声道等。
通常而言,一个收音设备可以产生一个声道的数据。对于高端会议、电影、流行音乐等,一般会有多个收音设备同时采集数据,因此在同一份音频文件中会产生多个声道。
这非常有助于还原现场的音效,给人以身临其境的美妙体验。
在ASR项目实战-产品分析提到了ASR的前处理过程,包括如下几个环节:
对于上述多音频格式的支持 、重采样的支持 、多声道的支持 ,简单、有效、低成本的方法,可以使用FFmpeg来实现,有很多资料可以查阅。
不过在将FFmpeg应用到产品里时,特别需要关注其License的相关说明,以及如下文档:
从而选择恰当的集成方式。
如ASR项目实战-产品分析所介绍,降噪和去回声 一般在收音设备上实现,较少通过软件来实现。主要原因是相关算法比较复杂,导致普通的交付团队会判定投入产出比太低。
对于多声道的处理,这里再多说几句。
分析Google的Speech To
Text云服务API的文档,可以发现Google在多声道处理上有独到之处,提供了识别多声道的开关,同时允许指定要处理的声道的数量,代价是每个声道的处理,均要收费。
假如开发者传递的音频里存有多个声道,调用API时:
对于云服务工程化交付团队而言,多声道的处理,存在一些让人纠结的地方,值得仔细思量,如下:
上一篇:软件工程快速入门(下)
下一篇:质量保障体系建设演进案例