将选定文本转换为语音 ubuntu 16.04

将选定文本转换为语音 ubuntu 16.04

虽然有很多选项可以大声朗读粘贴到命令行的文本,但什么是实现突出显示文本相同功能的最佳软件/工具?我正在寻找类似于 mac OS 的东西,但还没有找到任何东西。

已经尝试过这个命令:

bash -c "gespeaker --play-text=\"$(xsel | sed -e :a -e '$!N;s/\n/ /;ta')\""

但没有用。有什么建议吗?

答案1

用户 597291 又来了(没有账户)。弄清楚了如何使用单个键绑定来实现这一点。

您可以使用 xclip 获取主要选定的文本(即突出显示的文本),然后将其导入剪贴板。

从那里使用 xsel 获取剪贴板文本并将其传送到 espeak。我还建议清理换行符,否则 espeak 将只读取最后一段。

方法 1(单独文件):

我这样做的方式是,键绑定调用一个脚本来执行所有这些操作,就像sh ~/.custom-scripts/play-selected-text键盘绑定命令一样。

脚本如下。

#! /bin/bash

xclip -out -selection primary | xclip -in -selection clipboard
xsel --clipboard | tr "\n" " " | espeak

方法 2(直接在按键绑定中):

如果您不需要单独的文件夹来存储自定义脚本,那么您可以将其放入键盘绑定命令部分。

xclip -out -selection primary | xclip -in -selection clipboard; xsel --clipboard | tr "\n" " " | espeak

答案2

安装 TTSfestivalxsel通过管道传输选定的文本。

$  sudo apt-get install festival
$  sudo apt-get install xsel

$  cat << eof > talk.sh
> #!/bin/bash
> xsel | festival --tts --pipe
> eof

$ chmod +x talk.sh

现在转到settings>keyboard shortcuts+图标创建一个新的快捷方式。在命令字段中输入/home/<your username>/talk.sh

完成。现在您可以选择任意文本,按下您选择的快捷键,Festival 就会为您读出它!

相关内容