2017-03-05 157 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