我見過從輸入設備(顯然)語音識別和我見過從文件中的語音識別(http://gotspeech.net/forums/thread/6835.aspx)。但是,我想知道是否可以實時在系統音頻上運行語音識別。通過系統音頻,揚聲器發出的聲音。C#語音識別系統,從音頻(揚聲器發出的聲音)
這將是對於那些誰是聽力不好,因爲他們正在觀看YouTube視頻,在C#應用程序可以抄寫什麼東西被說一個偉大的工具。
我該怎麼去做這件事?
我見過從輸入設備(顯然)語音識別和我見過從文件中的語音識別(http://gotspeech.net/forums/thread/6835.aspx)。但是,我想知道是否可以實時在系統音頻上運行語音識別。通過系統音頻,揚聲器發出的聲音。C#語音識別系統,從音頻(揚聲器發出的聲音)
這將是對於那些誰是聽力不好,因爲他們正在觀看YouTube視頻,在C#應用程序可以抄寫什麼東西被說一個偉大的工具。
我該怎麼去做這件事?
很容易 - 轉到混音器,選擇輸入和啓用/取消靜音「立體聲混音」。當然,如果你不想記錄,也應該將麥克風靜音。然後,以錄製麥克風的相同方式開始錄製 - 現在您將獲得與數字質量的揚聲器相同的Feed。
這可能是done programatically雖然它可以是繁瑣的 - 特別是如果你想支持的WinXP以及VISTA/Win7的(聲音被翻修了在Vista中,我相信APIs are significantly different雖然我還沒有過尚未使用它們)。
你幾乎肯定會需要嘗試識別之前過濾的聲音。除非語音識別。您正在使用的庫設計爲在惡劣條件下工作,音樂和特殊效果會干擾正確識別,因爲多人會同時說話。
如果您有沒有一個超級強大的庫,過濾器,以減輕非聲樂頻率將是必須的。您可能還需要應用音量規範化來應對大聲/安靜的場景 - 有數百個過濾器可能會改善匹配。
您可能想要在最低級別訪問識別API以獲得儘可能多的控制權 - 您需要調整它以應對呼喊,呼吸困難,哭泣等人羣......如果您開始設計靈活的低級訪問,如果您以後需要它並且需要重新構建,它可能會爲您節省數週時間。
我建議你看看NAudio爲起點,用於音頻處理
我懷疑你就可以得到一些東西,在理想條件下工作沒有太多精力 - 但調整它在很好地工作所有可能的事情可能是一項艱鉅的任務。這就是說,這聽起來像一個有趣的項目。
您可以通過創建genre-,用戶或特定的節目,字典大大提高識別機會。這些可以是預先生成的,也可以使用加權反饋循環自動構建 - 也許還允許用戶糾正錯誤。
優秀的答案 - 謝謝! – Sondar
可能想檢查一下,可能是重複的。 http://stackoverflow.com/questions/3958342/convert-audio-to-text –
我認爲他理解如何做到這一點,但他只是想知道如何將C#引導到由系統生成的音頻流。 – slandau