【发布时间】:2016-01-13 04:23:54
【问题描述】:
支持的视频尺寸列表使用 -
camera.getParameters().getSupportedVideoSizes()
--
0 - 1280 x 720
1 - 1920 x 1080
2 - 960 x 720
3 - 720 x 480
4 - 640 x 480
5 - 352 x 288
6 - 320 x 240
7 - 177 x 144
-- 支持的预览尺寸列表使用 -
camera.getParameters().getSupportedPreviewSizes();
--
0 - 960 x 720
1 - 1280 x 720
2 - 640 x 480
3 - 352 x 288
4 - 320 x 240
-- 如我们所见,该设备确实支持以“1920 x 1080”分辨率录制 但是,可以以除此特定分辨率之外的所有其他分辨率录制 MP4 视频。 三星的默认相机应用程序可以轻松地以这种分辨率进行录制。那为什么我不能这样做呢? 和预览大小有关吗?
这是我用来配置 MediaRecorder 的代码-
camera = android.hardware.Camera.open();
parameters = camera.getParameters();
parameters.setPreviewSize(1280, 720);
camera.setParameters(parameters);
camera.startPreview();
camera.unlock();
mediaRecorder.setCamera(camera);
mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.DEFAULT);
mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.DEFAULT);
mediaRecorder.setVideoSize(1920, 1080);
mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.DEFAULT);
mediaRecorder.setOutputFile("/storage/emulated/temp/test.mp4");
mediaRecorder.setPreviewDisplay(holder.getSurface());
mediaRecorder.prepare();
--
调用 mediaRecorder.start() 给出错误 -19
【问题讨论】:
标签: android mediarecorder