RK3568笔记三十一:ekho 6.3 文本转语音移植

2024-06-09 19:20

本文主要是介绍RK3568笔记三十一:ekho 6.3 文本转语音移植,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

若该文为原创文章,转载请注明原文出处。

移植的目的是在在OCR识别基础上增加语音播放,把识别到的文字直接转TTS播报出来,形成类似点读机的功能。

1、下载文件

libsndfile-1.0.28.tar.gz
ekho-6.3.tar.xz

2、解压

tar zxvf libsndfile-1.0.28.tar.gz
tar xvf ekho-6.3.tar.xz

3、编译libsndfile

进入libsndfile-1.0.28,在当前目录下新创建install目录。

./configure --prefix=/home/alientek/tools/libsndfile-1.0.28/install --host=arm-linux --target=arm CC=/opt/atk-dlrk356x-toolchain/usr/bin/aarch64-buildroot-linux-gnu-gcc AR=/opt/atk-dlrk356x-toolchain/usr/bin/aarch64-buildroot-linux-gnu-ar --disable-external-libs
make 
make install

编译完成后,在install目录下的lib生成了库文件

4、交叉编译ekho

ekho目录中新建一个目录install

#记得export一下交叉编译工具链
export PATH=t/atk-dlrk356x-toolchain/usr/bin:$PATH

配置文件

./configure --prefix=/home/alientek/tools/ekho-6.3/install 
--host=aarch64-linux-gnu --target=aarch64 
CC=/opt/atk-dlrk356x-toolchain/usr/bin/aarch64-buildroot-linux-gnu-gcc 
CC=/opt/atk-dlrk356x-toolchain/usr/bin/aarch64-buildroot-linux-gnu-g++ 
CXX=/opt/atk-dlrk356x-toolchain/usr/bin/aarch64-buildroot-linux-gnu-g++ 
AR=/opt/atk-dlrk356x-toolchain/usr/bin/aarch64-buildroot-linux-gnu-ar
LDFLAGS=-L/home/alientek/tools/libsndfile-1.0.28/install/lib CFLAGS=-I/home/alientek/tools/libsndfile-1.0.28/install/include CPPFLAGS=-I/home/alientek/tools/libsndfile-1.0.28/install/include CXXFLAGS="-DNO_SSE" 
--without-pulseaudio 

注意,交叉编译工具链的设置要包括ar工具

make
make install

编译报错:./config.h:139:16: error: ‘rpl_malloc’ was not declared in this scope; did you mean ‘realloc’? 139 | #define malloc rpl_malloc

处理: 屏蔽了

报错,把libekho_a-dsp.o删除。

rm -rf /home/alientek/tools/ekho-6.3/sr-convert/libekho_a-dsp.o

编译正常,在install目录下生成可执行文件和库文件

5、测试

把编译好的文件拷贝到开发板

需要拷贝的文件有bin下的执行文件,拷贝到开发板bin下

动态库,拷贝到/usr/lib,动态文件是libsndfile.so等。

把ekho-data 文件夹下载到开发板的 /usr/share 目录

其中Cantonese(粤语)、Mandarin(普通话)、Ngangien(元朝前古汉语@_@)、Hakka(客家语)倒是能翻译普通话,Tibetan(藏语),Hangul(朝鲜语)就不行不行。默认是Mandarin,遗憾的是普通话下不能朗读字母,要Festival的支持才行。一开始用英文测试,还以为没安装成功。

红色框框的是其他语言库可以删除。

测试命令:

测试:
直接文字转语音
ekho "你好"读取文本文字转语音
ekho -f test.txt文字转语音文件
ekho "测试音频" -o test.wav文字转语音,广东话 
ekho -v Cantonese "你好"通过参数-s,调整语速,默认为0
ekho "测试语速" -s 30通过参数-p,调整语调,默认为0,(-100 ,100]
ekho "测试语调" -p 20通过参数-a,调整音量,默认为0,(-100, 100]
ekho "测试音量" -a 20更多命令使用查看: 
ekho  -h 

接下来结合OCR识别文件转成wav并播放。

如有侵权,或需要完整代码,请及时联系博主。

这篇关于RK3568笔记三十一:ekho 6.3 文本转语音移植的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1046072

相关文章

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

通过C#获取PDF中指定文本或所有文本的字体信息

《通过C#获取PDF中指定文本或所有文本的字体信息》在设计和出版行业中,字体的选择和使用对最终作品的质量有着重要影响,然而,有时我们可能会遇到包含未知字体的PDF文件,这使得我们无法准确地复制或修改文... 目录引言C# 获取PDF中指定文本的字体信息C# 获取PDF文档中用到的所有字体信息引言在设计和出

Java操作xls替换文本或图片的功能实现

《Java操作xls替换文本或图片的功能实现》这篇文章主要给大家介绍了关于Java操作xls替换文本或图片功能实现的相关资料,文中通过示例代码讲解了文件上传、文件处理和Excel文件生成,需要的朋友可... 目录准备xls模板文件:template.xls准备需要替换的图片和数据功能实现包声明与导入类声明与

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

让树莓派智能语音助手实现定时提醒功能

最初的时候是想直接在rasa 的chatbot上实现,因为rasa本身是带有remindschedule模块的。不过经过一番折腾后,忽然发现,chatbot上实现的定时,语音助手不一定会有响应。因为,我目前语音助手的代码设置了长时间无应答会结束对话,这样一来,chatbot定时提醒的触发就不会被语音助手获悉。那怎么让语音助手也具有定时提醒功能呢? 我最后选择的方法是用threading.Time

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear