gpt4 book ai didi

ruby - 如何以 root 用户身份运行 ruby​​-espeak?

转载 作者:太空宇宙 更新时间:2023-11-03 16:32:54 25 4
gpt4 key购买 nike

我正在创建一个基于 ruby​​ 的应用程序,我希望它能读出一些文本。到目前为止,我正在使用 espeak:

fork{exec ("espeak 'New file located #{timelog.hour} #{timelog.min}' \" > /dev/null")}

当我以普通用户身份运行它时可以正常工作,但我需要此脚本以 root 身份运行。当它以 root 身份运行时,我得到:

ALSA lib pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused

为什么我不能以 root 身份运行这个脚本?另外,还有另一种方法可以让我的 ruby​​ 脚本执行 TTS(文本转语音)吗?

补充:我什至尝试过 Festival,当我以普通用户运行它时没有任何反应。

require "rubygems"
require "festivaltts4r"
"I'm talking".to_speech

( gem 列表) ruby 1.9

bigdecimal (1.1.0)
clickatell (0.8.2)
espeak-ruby (0.4.0)
festivaltts4r (0.2.0)
ffi (1.1.5)
hoe (3.1.0)
io-console (0.3)
json (1.5.4)
minitest (2.5.1)
nice-ffi (0.4)
rake (0.9.2.2)
rdoc (3.9.4)
ruby-sdl-ffi (0.4)
rubygame (2.6.4)
sms_fu (1.1.2)
tts (0.3.0)

操作系统:OpenSuse

最佳答案

这个技巧有点俗气,但如果你有一台 mac,它应该有用。

make 可以使用“say”命令从命令行说出事情。因此;

$ say 'hello world' 

会让计算机说出那些话。这个命令也可以通过 Ruby 发送;

%x( say 'hello world' ) 

关于ruby - 如何以 root 用户身份运行 ruby​​-espeak?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12764710/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com