画面を縦向きモード (android:screenOrientation="portrait") に固定して、Android で MediaRecorder を使用してビデオをストリーミングしようとしています。カメラのハードウェアは、自然にランドスケープ モードに合わせられます。ローカル プレビューが縦向きモードで正しく表示されるように、プレビュー ビデオ表示を 90 度回転できます。ただし、キャプチャされたビデオはまだ 90 度です。
Camera mCamera;
MediaRecorder mMediaRecorder;
...
mCamera.setDisplayOrientation(90);
mCamera.setPreviewDisplay(holder);
mCamera.startPreview();
Parameters params = mCamera.getParameters();
params.setRotation(90);
mCamera.setParameters(params);
mCamera.unlock();
mMediaRecorder.setCamera(mCamera);
params.setRotation は、キャプチャされたビデオにはまったく影響を与えないようです。私のターゲット API は Android 2.2 です。私のテスト用ハードウェアは Android 3.1 です。
キャプチャしたビデオを回転する方法についてのアイデアはありますか? それとも不可能ですか?