android - 在 Android 上共享音频输入

标签 android audio

我正在为一个 Android 手机应用程序做一些准备研究,该应用程序将在用户同时接听电话时涉及语音搜索或语音识别。我发现,当我在通话过程中尝试调用语音搜索或类似的操作(从麦克风获取输入)时,我会收到“音频错误”消息。手机应用是否独占控制手机的麦克风输入,从而使其他应用无法访问音频输入?

最佳答案

在回答直接问题时,是的。手机应用程序完全控制麦克风输入。这与所有使用麦克风的应用程序相同。一次只有一个应用程序可以访问麦克风。但是,希望您的应用程序能够访问语音上行链路流,这是同一件事(它是对着麦克风说出并上传到服务塔的内容),而且它不会完全干扰通话。你可以这样做:

MediaRecorder mRecorder = new MediaRecorder(); mRecorder.setAudioSource(MediaRecorder.AudioSource.VOICE_UPLINK);

您必须将记录权限添加到 list 等,但仅此而已。幸运的是,语音识别的东西都是内置的,所以你应该能够通过在这里四处看看或谷歌搜索来相当容易地找到如何做到这一点。不幸的是,我自己在那个领域没有什么可以提供给你的。 希望这对您有所帮助!

关于android - 在 Android 上共享音频输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4495122/

相关文章:

html - 如何处理跨浏览器的 HTML 5 音频不兼容问题?

android - openSL ES for Jelly Bean 4.3 支持音频路由切换吗?

audio - 如何用 ffmpeg 替换给定时间戳的音频?

android - 如何检查 GPS 是否已连接以及位置是否已更新

java - @inherited 也使 @Overrided 方法值继承了注释?

java - Android java 追加 n 个字符到字符串

audio - 音频单元乐器+采样器

java - 如何使用 AutoValue 解析结构为对象数组的 JSON?

android - 如何让Delphi和Android使用相同的字符集?

c - 使用 PortAudio 写入的帧数不正确?