调用android摄像头录像的时候怎么控制他的分辨率

我想控制录制视频的大小 是不是应该控制分辨率 30S 不能超出2M 什么方法能达到

多谢!

1个回答

我做过相机拍照,没有做过摄像,我大致的想法是:

1、获取相机支持的预览图大小,假设选择的Size为mPreviewSize:

List<Size> sizeList = parameters.getSupportedPreviewSizes();

2、获取预览图的格式:

mPreviewFormat = parameters.getPreviewFormat();

3、计算每帧预览图的大小:

int size = mPreviewSize.width * mPreviewSize.height  * ImageFormat.getBitsPerPixel(mPreviewFormat) / 8],单位是字节。

4、假设30s内会拍摄n帧图片,那么每帧预览图的size为2M/n,然后逆推出应该使用的mPreviewSize,再找出相机支持的Size中最适合的,用于设置相机的预览参数。

parameters.setPreviewSize(mPreviewSize.width, mPreviewSize.height);
mCamera.setParameters(parameters);
wanghang1208
wanghang1208 相机的帧率也可以设置,需要获取相机支持的帧率,然后选择一个:List<int[]> fpsList = parameters.getSupportedPreviewFpsRange();
接近 5 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问