当前位置: 代码迷 >> 综合 >> 安卓Android MediaRecorder: stop failed: -38 是什么原因?
  详细解决方案

安卓Android MediaRecorder: stop failed: -38 是什么原因?

热度:63   发布时间:2024-01-03 12:52:39.0

发生情况:

  • 我们在调用MediaRecorder的时候,发现如果添加了麦克风的流,第一次录制屏幕没问题,再次打开就会导致录像失败,报错:MediaRecorder: stop failed: -38 。

发生原因:

  • 主要是我们占用了麦克风资源,我们结束录制屏幕的时候没有释放麦克风资源。一般我们就调用以下3条。
  • mediaRecorder.stop();mediaRecorder.reset();virtualDisplay.release();
    

直接stop会导致释放麦克风资源失败,因为麦克风还在使用中。

解决办法:

  • 我们要先调用 mediaRecorder.pause();暂停后,在继续stop, reset, release
  相关解决方案