LGV30中的图像稳定问题

时间:2017-12-20 07:02:38

标签: android video android-camera2

当在预览模式下开始录制时,视频突然缩放到帧中是已知的行为,但我目前面临的问题是使用LGV30时预览的极度跳跃。

  1. 在像素1 XL和像素2 XL中,跳跃可以忽略不计
  2. 在三星S8 +中,可以看到跳转,但可以考虑使用最终更流畅的视频
  3. 但在LGV30中跳跃很糟糕,视频移动到预览的最右上角,视频的最终输出质量比VGA差。
  4. 我知道图像稳定依赖于传感器方向,陀螺仪和加速度计的组合,视频的跳跃取决于这些传感器的质量,但是我有什么方法可以控制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);
    

    我认为这种跳跃无法控制,但有没有办法减少跳跃?

1 个答案:

答案 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?