linux终端txt输入文字,使Linux终端朗读文字的小技巧分享

对于那些不能文字朗读的设备,有个小工具可以实现文字说话的转换器。用各种语言写一些东西,espeak就可以朗读给你。

系统应该默认安装了Espeak,如果你的系统没有安装,你可以使用下列命令来安装:

代码如下:

# apt-get install espeak (Debian)

# yum install espeak (CentOS)

# dnf install espeak (Fedora 22 及其以后)

你可以让espeak接受标准输入的交互输入并及时转换成语音朗读出来。如下:

代码如下:

$ espeak [按回车键]

更详细的输出你可以这样做:

代码如下:

$ espeak --stdout | aplay [按回车键][再次回车]

espeak设置灵活,也可以朗读文本文件。你可以这样设置:

代码如下:

$ espeak --stdout /path/to/text/file/file_name.txt | aplay [Hit Enter]

espeak可以设置朗读速度。默认速度是160词每分钟。使用-s参数来设置。

设置每分钟30词的语速:

代码如下:

$ espeak -s 30 -f /path/to/text/file/file_name.txt | aplay

设置每分钟200词的语速:

代码如下:

$ espeak -s 200 -f /path/to/text/file/file_name.txt | aplay

你可以使用各种语言,让espeak如上面说的以你选择的语言朗读。使用下列命令来获得语言列表:

代码如下:

$ espeak --voices

下面再来分享一段C语言程序中调用espeak的示例:

C/C++ Code复制内容到剪贴板

#include // 包括espeak的头文件

#include

#include

int main(int argc, char **argv)

{

char word[] = "吃葡萄不吐葡萄皮";

espeak_Initialize(AUDIO_OUTPUT_PLAYBACK, 0, NULL, 0); // 初始化

espeak_SetVoiceByName("zh+f2"); // 设置音源为中文女声

espeak_Synth(word, strlen(word) + 1, 0, POS_CHARACTER, 0,

espeakCHARS_UTF8, NULL, NULL); // 发音

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值