开发者社区 问答 正文

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

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

展开
收起
爵霸 2016-03-25 10:20:59 4086 分享 版权
1 条回答
写回答
取消 提交回答
  • 我做过相机拍照,没有做过摄像,我大致的想法是:

    1、获取相机支持的预览图大小,假设选择的SizemPreviewSize
    `List 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);
    2019-07-17 19:13:39
    赞同 展开评论