我嘗試使用AudioRecord
接收來自耳機麥克風的音頻,並使用AudioTrack
實時播放耳機。我已經實現了所需的代碼,但問題是存在干擾回聲。我沒有使用揚聲器,我正在使用耳機。那麼,什麼造成這種回聲?我使用了在API級別11中引入的設備回聲消除器,並且回聲降低但未消失。我知道audio latency in android設備,但我無法理解延遲是否會在使用耳機時導致回聲。請指導我正確的方向。實時播放接收到的聲音時的聲音回聲
4
A
回答
1
我不認爲有這個問題的通用解決方案。 原因是
1)耳機質量可能是壞的,有可能是麥克風和耳機之間的內部耦合的導線在耳機非常接近
2)在機器人的回波消除器不強制由所有設備實施。先嚐試查詢並設置。 3)回聲消除器的實現可能因設備而異實施
3)等待時間會影響回聲消除器的性能很多,因爲算法必須適應延遲並緩衝那麼多音頻。
4)較低的Android版本都通過谷歌自己也承認可怕的延遲問題。你可能想要移動到更高的Android版本,因爲這些東西已經大大改善。
一般而言,任何具有直接硬件訪問功能的API(如麥克風和相機)都會因設備的不同而有所不同,並且性能無法得到保證。
如果您正在考慮整合,您可能需要查看openSLES以獲得更好的音頻性能,並且更容易與AEC庫集成。
請看 - https://source.android.com/devices/latency_design.html Low-latency audio playback on Android https://www.youtube.com/watch?v=d3kfEeMZ65c
希望這有助於
問候, Shrish
相關問題
- 1. 聲音播放和播放聲音
- 2. 播放聲音當接收到消息
- 3. Java聲音。暫時靜音背景音樂並播放聲音
- 4. c中聲音播放後的聲音#
- 5. 沒有播放聲音時
- 6. 同時播放聲音Android
- 7. 播放聲音?
- 8. 播放聲音
- 9. 播放聲音
- 10. 播放聲音
- 11. 播放聲音
- 12. 播放聲音
- 13. 如何從聲音的開始播放/暫停聲音和聲音播放?
- 14. 在播放聲音時錄製音頻
- 15. 在錄音時播放聲音
- 16. 另一個聲音開始播放時的Java停止聲音
- 17. java中的聲音 - 播放聲音時遊戲會凍結
- 18. ios AVAudioPlayer播放聲音與回聲
- 19. 使用系統聲音播放聲音
- 20. 播放聲音作爲系統聲音
- 21. 當另一個聲音播放時停止播放先前的聲音
- 22. 咆哮jQuery播放新聲音時會停止所有聲音
- 23. WPF播放聲音定時器刻度 - 不重複聲音
- 24. 未播放聲音
- 25. 在播放聲音
- 26. 聲音未播放
- 27. VC++播放聲音
- 28. Ruby聲音播放
- 29. 聲音未播放
- 30. Javascript播放聲音
加力:做ü找到任何解決辦法,同樣PBLM發生在我身邊 – Pradeep 2014-04-10 10:45:31
經過不斷我花了很多時間,我只是接受了它的必然性,而沒有辦法處理它。 – 2014-04-14 16:49:13