Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android MediaRecorder解锁API14+_Android_Android Camera_Android Mediarecorder - Fatal编程技术网

Android MediaRecorder解锁API14+

Android MediaRecorder解锁API14+,android,android-camera,android-mediarecorder,Android,Android Camera,Android Mediarecorder,在使用MediaRecorder录制之前解锁摄像头有什么好处?他们说: 使用Android框架进行视频捕获需要仔细管理摄像头对象并与MediaRecorder类协调。使用Camera录制视频时,除了Camera.open和Camera.release通话外,您还必须管理Camera.lock和Camera.unlock通话,以允许MediaRecorder访问摄像头硬件 注意:从Android 4.0 API级别14开始,Camera.lock和Camera.unlock调用将自动为您管理 然而

在使用MediaRecorder录制之前解锁摄像头有什么好处?他们说:

使用Android框架进行视频捕获需要仔细管理摄像头对象并与MediaRecorder类协调。使用Camera录制视频时,除了Camera.open和Camera.release通话外,您还必须管理Camera.lock和Camera.unlock通话,以允许MediaRecorder访问摄像头硬件

注意:从Android 4.0 API级别14开始,Camera.lock和Camera.unlock调用将自动为您管理

然而,无论我在什么设备上测试,如果我在MediaRecorder.start之前不调用Camera.unlock,我都会得到一个异常启动失败

医生在撒谎,还是我做错了什么

我的流程是使用camera.openint打开相机,将录制提示设置为true,设置预览FPS和大小,以及显示方向。然后我创建MediaRecorder并设置音频和视频源、输出格式、帧速率、大小、视频比特率、音频和视频编码器、方向提示、输出文件,然后调用MediaRecorder.prepare

如果所有这些都成功完成,当用户单击record按钮时,我调用MediaRecorder.start并引发异常。如果我改打电话:

Camera.unlock();
MediaRecorder.start();

也不例外。

我对MediaRecorder有足够的经验,可以说这种错误会在大量情况下发生。 顺便说一句,如果锁定/解锁方法出现问题,错误可能是

解锁失败

在大多数情况下,启动失败错误是由错误的记录器初始化引起的。
请写下你的初始化方法

我不想写出整个init方法。然而,问题是,当解锁不存在时,它会抛出一个异常。当它在那里,没有任何其他改变它的工作。Mb这是愚蠢的,但相机是由任何其他类型的进程在您的应用程序中使用?这很有意义:你解锁了相机,然后它就免费了-你的录音机可以使用了。应该没有其他东西在使用相机,但我会检查。在使用相机的应用程序中没有其他东西。