我想將麥克風的聲音轉換爲二進制,並從數據庫中匹配它(一種語音識別程序,但不知道如何?從麥克風獲得直接的聲音,這樣我可以將它轉換爲二進制代碼有可能還是不請指引我)我想將聲音從麥克風轉換爲二進制,並從數據庫匹配它
2
A
回答
1
1
1
您正在查看兩個非常不同的問題。
第一個技術非常嫺熟:從麥克風獲取聲音成數字波形。如何做到這一點完全取決於您使用的操作系統和API(在Windows上,您可能正在查看DirectX音頻或ASIO)。通常,這是你如何進行:
- 設置用於麥克風的記錄緩衝器,用合適的參數(信道數目,聲卡上的物理輸入,採樣率,位深度,緩衝器大小)
- 開始錄製。這通常涉及將聲音庫指向回調函數以處理記錄的緩衝區。
- 在回調中,讀取緩衝區,將其轉換爲合適的格式,然後將其附加到您選擇的音頻文件。 (您也可以只記錄到RAM,但更長的記錄可能會超過可用存儲空間)。
- 存儲在合適的數據庫字段錄製的音頻(某種二進制BLOB的)
這是比較容易的部分,雖然;更難的部分是將大塊音頻數據與其他塊匹配。一個天真的方法是嘗試找到精確的匹配,但這對你沒有多大的幫助,因爲你找到的機會幾乎爲零 - 錄音設備,甚至是最好的設備,會引入一些隨機噪聲,並且錄音設置會有所不同無論你是否願意,都可以略微提高一點,所以即使你有人說了兩遍,完全相同,你仍然可以在錄製的音頻中看到不同之處。
然後,您需要做的是找到波形的某些典型特徵。事情可以找有:
- 總體幅度形狀
- 基頻
- 選擇的諧波(共振峯)
提取這些是不平凡的,涉及到相當嚴重的數學;然後你必須將它們壓縮成某種指紋,並找到一種方法將它們與一些模糊性進行比較(以便近似匹配足夠好,而不需要精確匹配)。找到正確的參數和比較算法並不容易,而且需要進行大量的調整和測試;你最好的選擇是去找一個能爲你做到這一點的圖書館。
相關問題
- 1. 將麥克風數據轉換爲AMR
- 2. 從麥克風獲取聲音
- 3. 獲取音頻數據從麥克風
- 4. 從麥克風錄製音頻並進行繪圖
- 5. 從麥克風+立體聲混音DirectShow聲音捕獲
- 6. 軟件可以將數據轉換爲聲音,並且麥克風可以聽到聲音將其轉換爲相同的數據
- 7. 更改麥克風錄製的音頻將聲音轉換爲兒童或女孩的聲音
- 8. Windows Phone 8從麥克風C錄製聲音#
- 9. 如何從帶有Java的USB麥克風錄製聲音
- 10. 我可以更改音量/將麥克風從foxpro靜音嗎?
- 11. 從麥克風記錄的聲音的音量
- 12. 從麥克風讀爲.wav
- 13. 將耳機麥克風更換爲內置麥克風
- 14. AS3:從麥克風
- 15. 從HTML5音頻麥克風流
- 16. MonoTouch:從麥克風捕獲音頻流
- 17. 使用java的麥克風上的麥克風聲級控制
- 18. 將音頻輸出切換到揚聲器和麥克風?
- 19. 無法將音頻從麥克風錄製到QFile中Qt
- 20. 使用ActionScript 3將保存聲音錄製到文件。不是從麥克風
- 21. 麥克風圖形聲音分析儀
- 22. 異步寫入麥克風的聲音
- 23. 通過麥克風播放聲音
- 24. 麥克風/揚聲器音頻反饋
- 25. 可以使用麥克風錄製一次聲音,但不能第二次啓動麥克風
- 26. 從麥克風錄製的音頻語音通話
- 27. 如何在Android上直接從麥克風播放聲音?
- 28. C - 如何從麥克風捕捉聲音?
- 29. Android - 從不同頻率的麥克風播放聲音
- 30. 從麥克風到iPhone中的揚聲器的音頻流xcode
你想在ASP.net中做到嗎?你可能需要編寫一個ActiveX。或一些客戶端控制..直接在ASP.net中,你不能在客戶端的計算機上做到這一點。 – 2011-05-16 06:59:02