0
我想從Ruby運行PocketSphinx。我所做的是從Ruby運行一個終端命令。像這樣:不能從Ruby運行PocketSphinx
cmd = "pocketsphinx_continuous \
-lm /usr/local/share/pocketsphinx/model/lm/en_US/hub4.5000.DMP \
-dict /usr/local/share/pocketsphinx/model/lm/en_US/cmu07a.dic\
-infile ~/Path/FileName.wav"
output = `#{cmd}`
puts output
如果有文件輸入,這會很好地工作。但是,當我嘗試處理流式音頻時,例如從麥克風講話時,我只刪除了「-infile」行。在這種情況下,它不再起作用。 PocketSphinx進程,但它通常不會像「Ready」一樣顯示。
僅供參考,我使用的是Ubuntu 14.04和Ruby 2.0。
你對發生了什麼有什麼想法嗎?
謝謝亞歷山大!我通過使用exec(cmd)而不是#{}來解決這個問題,並且它工作正常。但我仍然想知道「發送SIGINT」在超時時處理的含義。有沒有更具體的指導?感謝名單! – 2014-10-01 21:46:09