2017-03-05 105 views
1

我目前已经安装并配置了节日2.4。节日音频设备问题。没有声音输出

我在做什么的继承人:

我第一次使用./bin/festival进入节日提示。
然后做(SayText "test")应具备TTS说一句话测试

现在,当我有手动运行时使用apt-get的此命令按预期工作的仓库,它说:“测试”
不过节2.1安装 - 建立节日2.4它报告没有错误,但也没有声音。我已经使用了set参数命令并尝试了每种音频方法,并尝试了使用Audio_Device的set参数命令,并尝试了许多来自/ dev /和/ dev/snd /的设备,但无济于事。

请注意,oss-compat已安装,我看到它被列为解决方案的某个位置,并且它已从我创建cmu sphinx a时开始安装。

我的问题是什么是apt-get做我不是。我一直在这里约12小时,所以任何想法都是值得欢迎的。

更新:我已经使用strace的监视呼叫节正在对系统,试图找出最新导致此,继承人我想出:

我的系统中有多个音频与它连接的设备,主板上的集成音频,nvidia卡的hdmi输出,以及我目前使用的USB音频设备。 ls /dev/显示了三个音频设备,如预期的那样/dev/audio,/dev/audio2/dev/audio3。使用前两个与(Parameter.set 'Audio_Device "/dev/audio")设置节日做了以前一样的事情,没有错误,但也没有声音。然而,使用上述第三设备/dev/audio3,当我得到Linux: can't open /dev/audio3在与上述strace的进一步调查中,我发现了这一点:

open("/dev/audio3", O_WRONLY) = -1 EBUSY (Device or resource busy)

我搜索了一下周围,唯一提到这个错误我能找到的是专门的案件不管是什么有问题的人在做。

回答

0

你只需要配置Pulseaudio。这些行添加到您的~/.festivalrc文件的末尾,或者/usr/share/festival/festival.scm

(Parameter.set 'Audio_Required_Format 'aiff) 
(Parameter.set 'Audio_Method 'Audio_Command) 
(Parameter.set 'Audio_Command "paplay $FILE --client-name=Festival --stream-name=Speech") 
+0

是的,我早些时候评论过之后做了这个,就像魅力一样! – HalfLife420

0

我找到了解决问题的办法。用strace的信息武装这只是一个追查什么阻止了我的音频设备访问的问题。

fuser -fv /dev/snd/* /dev/dsp* /dev/audio*将有效地显示任何访问您的系统上的任何音频设备。它显示pulseaudio正在访问/dev/snd/control****,而不是audio3,但仍值得一试。然后我跑了pulseaudio -k来杀死pulseaudio。之后我可以听到节日。

+1

正确的解决方案是配置节使用的PulseAudio代替https://wiki.archlinux.org/index.php/Festival –

+0

@NikolayShmyrev如果只有你在几个小时前告诉过我那个哈哈。现在它运行得更好,我不必关闭其他应用程序就可以工作。非常感谢尼古拉! – HalfLife420