一个分割WAV文件的程序

问题背景

当我在训练中文语音识别的时候,发现几乎很少有中文类的训练资料。大部分都是英文的。所以,我计划满足自己使用的同时尽量自己做一个小小的训练库。

在从网上获得了一些wav文件之后,需要将他们分割为小段的单句文件,然后补充了中文说明之后作为训练库。

所以,我需要实现一个程序,更具wav中的波形自动在断句的地方分割成多个wav文件。方便我制作训练库。

分割原理

因为发现在wav的波形图中小于2000的时候,大部分是背景的噪音或者播音员喘气的声音。所以程序会将wav文件中波动小于2000,且持续0.2秒以上的地方作为断句。

断句的地方会向前或者向后扩展一点点,防止语音开始和结束的地方太突然。

这个程序处理的是16kHZ,16bit,mono类型的wav文件。所以您在处理之前,需要先将wav文件转换为这样的格式。

代码地址

https://github.com/miwoow/AI-Audio-Trans-Data/tree/master/src

代码依赖于libwavpack-dev。

sudo apt-get install libwavpack-dev
联系我:

Email: xudongsecret@qq.com

===完===