============问题描述============
最近做的项目摄像头是跟手机按90度安装的,用MediaRecorder录像还是按摄像头的方向而不是手机的方向,录出来的是90度旋转的,试了很多方法都不管用。MediaRecorder.setOrientationHint没有效果,在底层AuthorDriver那都没有对其实现;Camera.Parameters.setRotation然后再Camera.setParameters和MediaRecorder.setCamera也没有效果,有知道解决方法的不?代码大致如下:
Camera mCameraDevice = Camera.open(camera_id);
Camera.Parameters mParameters = mCameraDevice.getParameters();
mParameters.setRotation(90);
mCameraDevice.setParameters(mParameters);
MediaRecorder mMediaRecorder = new MediaRecorder();
mMediaRecorder.setCamera(mCameraDevice);
mMediaRecorder.setOrientationHint(90);
......
mMediaRecorder.prepare();
============解决方案1============
这个你的在CAMERA驱动层根据Gsensor穿上来的orientation对捕获的数据buffer进行相应的旋转
时间: 2024-10-11 23:07:05