Android自定义相机拍摄黑屏

速记,备查。

1、需求场景

拍摄20秒 + 视频质量不能太低 + 视频大小不能超过5M;

2、方案

调用系统相机和自定义相机;

1、调用系统相机(不满足需求)

视频质量只能设置高(1)和低(0),高的话,拍出来的视频太大;低的话,拍出来的视频大小满足,但是质量惨不忍睹;而且,即使设置了拍摄时常,很多手机的计数仍在继续;

2、自定义相机

自定义相机,需要设置的参数很多,尤其是进行视频拍摄。至于如何设置这些参数(SurfaceHolder、Camera、MediaRecorder等),网上的资料很多,可以自行百度。

3、遇到的问题

 mediaRecorder.setVideoSize(videoWidth, videoHeight);
在设置拍摄视频的分辨率的时候,小米手机竟然卡死黑屏了,而且我再去用系统的相机,竟然也黑屏了。f**k,相机被玩死了。

首先想到的是,自己设置的分辨率不支持?那怎么获取支持的分辨率呢?

 List<Camera.Size> list = mCamera.getParameters().getSupportedPictureSizes();
在Camera的Api中,我们可以获取其参数,进而通过getSupportPictureSizes()获取一个支持的分辨率的列表。从中挑选一个你感觉合适的分辨率设置上就可以了。




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值