MFA做中文语音文本对齐的教程

本文档详细介绍了如何使用Montreal Forced Aligner(MFA)进行中文语音文本对齐。首先,提供了获取音频和文本数据的来源,特别是THCHS30数据集的使用。接着,阐述了MFA的安装步骤,包括创建CONDA虚拟环境、选择合适的版本以及安装依赖。在安装过程中,作者强调了避免数据路径包含中文以防止错误的重要性。最后,提到了在运行过程中可能遇到的报错情况。
部署运行你感兴趣的模型镜像

最近做项目需要用到中文语音文本对齐,在网上搜罗了一圈,发现目前主流的是用Montreal Forced Aligner(MFA)在做。知乎和C站的一些教程不太全,并且发帖时间较早,导致现在按其教程安装出现多个报错,在经过多个版本的尝试和修复报错问题后,终于成功安装并可以正常使用,特写此贴记录。

一、关于数据源

首先我们做语音本文对齐需要有音频数据和文本数据,音频数据可以自己采集和利用公开的数据库,我自己用的是清华大学中文语音识别数据THCHS30,链接如下:

http://www.openslr.org/18/

该数据集包括的音频数据的.wav格式正是与后面MFA输入格式所适配的,并且该数据集已经包含了我们后续所需要的与音频所对应的同样是用于MFA输入的拼音文本,只不过在后续用作MFA输入时,需要将TRN中的第二行复制,新建文本文件,粘贴内容,保存类型为.lab文件。

更为一般的情况下,我们需要通过某些软件将音频格式转换为.wav格式,并且在此基础上,将音频文件转中文汉字txt文本处理(目前比较常用的方式是采集讯飞接口),之后在通过代码完成txt到.lab文件的转换(可参考以下链接中的第一步)。

https://www.cnblogs.com/ZigHello/p/16133689.html

二、MFA的安装教程

有了格式为.wav的音频文件和与之相对应的格式为.lab的文本文件(拼音加声调)后,我们下载CONDA建立虚拟环境,CONDA的安装教程有很多,在此不加以赘述。

目前MFA已经有了3.0+版本,经过测试可以正常使用。下面是官网的安装教程:

https://montreal-forced-aligner.readthedocs.io/en/latest/installation.html

第一步(默认Windows系统),创建名为aligner(自定义)的虚拟环境。

conda create -n aligner -c conda-forge montreal-forced-aligner

激活环境

conda activate aligner

后续要跑深度学习模型的话建议安装GPU版本

conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia

安装必要的依赖包

pip install speechbrain

尝试了2.0+版本有一些报错,最后在3.0.0a1版本下成功运行(注意版本迭代的问题)

conda install montreal-forced-aligner==3.0.0a1

通过以下代码测试是否安装完成,成功的话会显示版本号

mfa version

下载自带的预训练的声学模型

mfa model download acoustic mandarin_mfa

下载自带的预训练的字典模型

mfa model download dictionary mandarin_mfa

通过以下指令完成音频与本文数据到textgrid对齐文本的输出,其中音频数据与保存目录是自定义的路径名称,千万不要有中文,博主就是因为这个原因耽搁了好久。音频数据的文件夹下同时存放音频.wav文件和文本(拼音加声调).lab文件,名称要一致。

mfa align 音频数据 普通话词典 普通话模型 保存目录

三、一些报错

数据路径中含有中文会出现以下报错。

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值