2012-01-28 60 views
0

我們可以在不使用wav文件的情況下使用mp3文件進行語音識別嗎?或者我們可以從mp3生成一個wav文件,然後進行語音識別,而不會對精度造成嚴重影響?問題是我需要在應用程序中最小化通過網絡傳輸的負載。轉換中丟失的信息是否會成爲準確度的重要因素?使用Sphinx 4進行mp3識別

回答

1

我們可以在不使用 wav文件的情況下使用mp3文件進行語音識別過程嗎?

不直接。爲了能夠識別mp3流,您需要使用java庫來讀取mp3並將其轉換爲pcm流(tritonus-mp3lameonj)。你也可以調用ffmpeg作爲一個單獨的進程來解碼。

或者我們可以從mp3中生成一個wav文件,然後進行語音識別而不會對精度造成嚴重影響嗎?

無論您在哪裏解碼mp3文件,精度都會受到影響。

問題是我需要儘量減少通過我的應用程序中的 網絡傳輸的負載。 轉換中丟失的信息是否是精確度的重要因素?

最好使用像flac這樣的losseless編解碼器來傳輸。 mp3轉換會降低ASR的準確性。另一種方法是計算客戶端上的功能並將它們傳輸到服務器。

+0

謝謝。 :)有沒有一個Java插件flac也? – SDK 2012-01-28 19:55:32

+1

是的,例如http://jflac.sourceforge.net/ – 2012-01-28 20:33:46