代码集解析:
private void setResolutionCamera(int G) {
Camera.Parameters cp = mCamera.getParameters();
List<Size> sl = cp.getSupportedPictureSizes();
int w = 0, h = 0;
boolean exist = false;
int i = 0;
for (Size s : sl) {
// if s.width meets whatever criteria you want set it to your w
// and s.height meets whatever criteria you want for your h
i++;
if (i == G) {
w = s.width;
h = s.height;
exist = true;
break;
}
}
if (!exist) {
for (Size s : sl) {
w = s.width;
h = s.height;
break;
}
}
cp.setPictureSize(w, h);
mCamera.setParameters(cp);
}
我设置尺寸:2560x1920,但视频结果仍为640x480。 为什么视频无法在相机应用程序android 2.3中更改分辨率?
答案 0 :(得分:1)
拍摄静止图像与录制视频不同,因为后者需要更高的性能,因为需要处理连续的数据流。所以你不能只设置任何东西并期望它能够工作。基本上除非你的设备明确宣布它能够进行如此高分辨率的视频录制,否则你应该期望使用更低的分辨率。
如果您定位API11或更高版本,则可以使用getSupportedVideoSizes()支持视频帧尺寸,而不是调用getSupportedPictureSizes()
用于静止图像。