MediaRecorder录制屏幕时在部分机型上报错prepare failed:-22

Posted guangdeshishe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MediaRecorder录制屏幕时在部分机型上报错prepare failed:-22相关的知识,希望对你有一定的参考价值。

在调用MediaRecorder.setVideoSize方法设置宽高时,由于宽高是动态获取的屏幕宽高,但是这个方法不允许传入奇数值,而出问题的手机的高度刚好就是奇数,所以就报错了。
解决办法就是判断下宽高是否奇数,是的话就减1让它变成偶数,再调用setVideoSize方法
由于该方法是Native方法,暂时不知道为什么一定只能传奇数,有知道的朋友可以下面留言告诉我

以上是关于MediaRecorder录制屏幕时在部分机型上报错prepare failed:-22的主要内容,如果未能解决你的问题,请参考以下文章

MediaRecorder录制屏幕时在部分机型上报错prepare failed:-22

MediaRecorder - 如何在录制时播放视频块/块?

MediaRecorder 没有第二次录制

如何使用 mediaRecorder 流式传输 android 的内部音频+屏幕?

Google 通过 MediaRecorder API 满足流媒体需求

android MediaRecorder录制音频