3个开源TTS(五)eSpeak1.06的源码调试分析

本文介绍了开源TTS系统eSpeak 1.06的源码编译调试过程,包括如何设置调试环境、添加参数运行、重定向输入输出。文章重点分析了speak程序的运行流程,涉及initialise、LoadVoice、SetSpeed、OpenWaveFile等关键函数,并概述了Synthesize类和Translator类的主要功能。
摘要由CSDN通过智能技术生成
   这一篇介绍eSpeak1.06源码的编译调试及基本框架。
   上篇详细说明了eSpeak的调试环境的搭建,调试则和一般的gdb调试命令行调试区别不大,只不过是有了vim的代码界面和vimgdb提供的gdb命令的快捷键。为了调试肯定要有已经编译好的speak可执行文件,当然前面已经说过增加-g参数,这里直接make即可,而后#vim speak.cpp进入编辑界面,因为运行过run macros/gdb_mappings.vim了,所以直接按空格键进入调试命令行,file speak加载可执行文件,会看到vimgdb的模式状态、gdb的版本信息,再在命令行下按个回车会看到加载speak成功的提示: 
 17 (gdb) file speak
 18 Reading symbols from /opt/tts/speak-1.06-source/src/speak...done.
 而如果之前在speak的makefile中没有修改,则会提示没有调试信息。 Ctrl+B在speak.cpp中添加断点,Shift+R键运行,Ctrl+P(命令行中p命令)输出变量值等;一般调试会有两个问题:
    一是如何运行时带参数,即这里想要保存为WAV文件,运行时需要-w参数和保存的WAV文件名。这时可以在命令行下通过r命令加参数来执行,即:r -w test就是运行speak -w test,当然前提是你已经加载了speak。
    二是调试运行中,需要和终端交互即输入输出,参考【1】中方法,通过tty /dev/pts/1命令来重定向标准输入输出其中的1数字可以在新开的终端通过tty命令查看。但是据说在Ubuntu中(我的是debian)会出现 “warning:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值