我们有一个Android设备,我们希望microphone同时使用2应用程序.
实际上,我们有一个在后台运行的声音命令服务(我们正在使用该CMU Sphinx库).问题是当我们启动录像机(相机应用程序)时,我们无法启动录制,因为2个应用程序无法同时访问麦克风.
错误
08-20 12:20:14.601: I/MediaRecorderJNI(7261): prepare: surface=0x59590668
08-20 12:20:15.916: E/MediaRecorder(7261): start failed: -38
08-20 12:20:15.916: E/com.example.CamcorderView(7261): Failed to start recorder.
08-20 12:20:15.916: E/com.example.CamcorderView(7261): java.lang.IllegalStateException
08-20 12:20:15.916: E/com.example.CamcorderView(7261): at android.media.MediaRecorder.start(Native Method)
请注意,当人声服务关闭时,相机可以正常工作.
而且,我确切地说我已经读过这个帖子了:
但这里的不同之处在于我们可以在O/S和内核上进行操作.所以我们可以根据需要应用补丁.
这是一个SDK/OS/Kernel限制吗?有没有解决方法?