1

我正面临通过新的 camera2 api 录制视频的问题。我正在使用来自 https://github.com/googlesamples/android-Camera2Video的项目, 该项目演示了使用新的 camera2 api 进行视频录制。录制效果很好,但录制的 mp4 视频的旋转因设备不同而不同。

Nexus 9 结果视频很好,但 Nexus 5X 不行。

我听说 Nexus 5X 的摄像头倒置了。在这种情况下,我会设置 MediaRecorder 标志以正确记录,但是......

我的问题是,如何以编程方式识别设备是否有倒置的相机?

谢谢你的帮助!

4

2 回答 2

0

从 int sensorOrientation = features.get(CameraCharacteristics.SENSOR_ORIENTATION); 获取方向后

您可以在 MediarRecorder 中使用 setOrientationHint(sensorOrientation)。

于 2016-06-30T12:06:29.080 回答
0

我找到了解决方案...

CameraManager manager = (CameraManager) activity.getSystemService(Context.CAMERA_SERVICE);
String cameraId = manager.getCameraIdList()[0];
CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraId);
int sensorOrientation = characteristics.get(CameraCharacteristics.SENSOR_ORIENTATION);

sensorOrientation值:默认相机方向曾经是 90 度。对于 Nexus 5X,它是 270 度。

于 2016-03-17T20:34:25.033 回答