【问题标题】:How to properly recover MIC in an audio processing app?如何在音频处理应用程序中正确恢复 MIC?
【发布时间】:2018-07-13 14:59:22
【问题描述】:

我开发了一个音频处理应用程序,它可以在后台持续运行并监听特定信号,并在收到时向用户发送警报。即使用户正在通话,这一切都很好,因为它实现了电话状态侦听器并允许正确共享 MIC。但是,当其他应用程序进行语音呼叫(例如 Whatsapp)时,就会出现问题,因为电话状态侦听器不会检测到这些音频呼叫,因为它们在技术上不是电话呼叫。有谁知道如何正确监控任何应用程序是否正在使用 VOIP?

【问题讨论】:

    标签: android audio monitoring audio-processing


    【解决方案1】:

    没有一个确定的解决方案,但是您可以监听 AudioManager.getMode() 的变化。 当进行正常(非 VOIp)语音呼叫时,电话应用程序将该模式设置为 IN_CALL。 通常进行 VOIp 呼叫的其他应用程序将该模式设置为 IN_COMMUNICATION。 所以你可以删除监听器并创建一个线程来监听 AudioManager.getMode() 的变化,并为这两种模式引发你想要的事件。

    【讨论】:

    • 感谢您的意见。我会尝试这种方法
    猜你喜欢
    • 2023-03-18
    • 2012-01-23
    • 2013-06-16
    • 1970-01-01
    • 1970-01-01
    • 2012-09-10
    • 2011-01-24
    • 2014-04-13
    • 1970-01-01
    相关资源
    最近更新 更多