Eza*_*ard 9 sound microphone text-to-speech accessibility espeak
这个问题是关于将音频数据解析为麦克风输入。
由于我是一个静音者,我希望能够使用 TTS 数据,例如:
espeak-ng "Hello World" --stdout | some-magical-program
Run Code Online (Sandbox Code Playgroud)
允许我使用文本输入来说话,而不需要他们每次都检查文本聊天。
注意:这是pLumo 链接到的U&L 答案的更新版本。
PulseAudio 可以将音频重定向到应用程序,就像声音来自麦克风一样。幸运的是,这也可以通过 GUI 来完成。
先决条件:
如果您的计算机上尚未安装 PulseAudio Control ( pavucontrol),则需要安装它。可以通过终端来完成,如下所示:
sudo apt install pavucontrol
Run Code Online (Sandbox Code Playgroud)
配置 PulseAudio:
打开 PulseAudio 控制:

单击“输入设备”选项卡,然后从底部过滤器中选择“监视器”:

单击“录音”选项卡。您可能会看到该列表是空的:

现在是我们将音频重定向到应用程序的部分。为此,我们必须有一些正在主动使用麦克风的东西。在本示例中,我将使用在浏览器中执行的视频通话,但这适用于任何可以使用麦克风的应用程序,从 Audacity 到 OBS 到 Zoom。
从您想要与之通信的应用程序开始呼叫。在此过程中您的麦克风可以静音。
PulseAudio Control 中的“录音”选项卡现在将显示正在使用麦克风的应用程序:
注意: “静音”下方的栏现在将移动以指示它正在拾取声音。
将“来自”选择从当前麦克风更改为“内置模拟立体声监听”。在您的系统上,其名称可能略有不同,但该值将以“Monitor of ...”开头:

使用espeak-ng(或任何其他应用程序)发送声音:
espeak-ng "Here we have a basic message that will be heard locally as well as over the call."
Run Code Online (Sandbox Code Playgroud)
今天早些时候在通话中确认工作正常。
如果您使用pico2wave,则需要运行两个命令才能完成此工作:
pico2wave -w out.wav -l en-US "Here is another basic message that will be heard locally as well as over the call."; aplay out.wav
Run Code Online (Sandbox Code Playgroud)
要知道的事情:
| 归档时间: |
|
| 查看次数: |
1200 次 |
| 最近记录: |