当在预览模式下开始录制时,视频突然缩放到帧中是已知的行为,但我目前面临的问题是使用LGV30时预览的极度跳跃。
我知道图像稳定依赖于传感器方向,陀螺仪和加速度计的组合,视频的跳跃取决于这些传感器的质量,但是我有什么方法可以控制LGV30中的跳跃,或者它是有缺陷的硬件。
我正在写下我的配置代码以供参考
mPreviewBuilder.set(CaptureRequest.COLOR_CORRECTION_MODE, CaptureRequest.COLOR_CORRECTION_MODE_FAST);
mPreviewBuilder.set(CaptureRequest.CONTROL_CAPTURE_INTENT, CaptureRequest.CONTROL_CAPTURE_INTENT_VIDEO_RECORD);
mPreviewBuilder.set(CaptureRequest.HOT_PIXEL_MODE, CaptureRequest.HOT_PIXEL_MODE_FAST);
mPreviewBuilder.set(CaptureRequest.EDGE_MODE, CaptureRequest.EDGE_MODE_FAST);
mPreviewBuilder.set(CaptureRequest.NOISE_REDUCTION_MODE, CaptureRequest.NOISE_REDUCTION_MODE_FAST);
mPreviewBuilder.set(CaptureRequest.TONEMAP_MODE, CaptureRequest.TONEMAP_MODE_FAST);
mPreviewBuilder.set(CaptureRequest.SHADING_MODE, CaptureRequest.SHADING_MODE_FAST);
mPreviewBuilder.set(CaptureRequest.CONTROL_VIDEO_STABILIZATION_MODE, CaptureRequest.CONTROL_VIDEO_STABILIZATION_MODE_ON);
我认为这种跳跃无法控制,但有没有办法减少跳跃?
答案 0 :(得分:0)
解决方案原来是错误的相机。
听起来微不足道但是在这段代码中
CameraManager manager = (CameraManager) mContext.getSystemService(Context.CAMERA_SERVICE);
manager.getCameraIdList()
管理员返回给定设备的所有可访问摄像头。 在LGV30中,由于有2个后置摄像头,一个常规摄像头和另一个广角摄像头,我正在使用广角摄像头。
广角相机无法处理图像稳定并导致此问题。因此,解决方案是从列表中选择第一台摄像机,以获得相应的摄像头。这仍然是一种解决方法,因为我无法找出API来检查给定的相机是否是常规或解决方法。
以上问题的详细信息位于How to check whether given Camera is regular camera or wide angle camera?