私の Android 2.3 デバイスでは、デバイスがどのように回転されても、標準のカメラ アプリは常に同じ向きでビデオを録画します。ランドスケープ モードでビデオを録画すると、ビデオを上下逆にしても常に同じ向きでビデオが録画されます。ポートレートモードも同様。ただし、録画中にビデオを回転させると、逆さまになります。これは予想されることです。カメラアプリは、実際の録画の前に回転を常に「上」に調整するだけです。録画前にカメラを回転させると、カメラ コントロール アイコンも回転し、常に上を向くようになります。
ユーザーがデバイスを回転させると、カメラ アプリは回転を調整できますが、これを行う必要はありません。どの向きでもデバイスを再起動でき、変更する必要はありません。また、カメラ アプリはどちらが上かを認識します。変更リスナーは必要ありません。やりたいことは同じです。ただし、私のアプリはサービスです。アクティビティは使用されません。サービスですでにビデオを録画できます。
ビデオを常に回転させることができないようです。私が試してみました:
Camera.Parameters parameters;
parameters.setRotation
としても:
mCamera.setDisplayOrientation
どちらも機能しませんでした。ソリューションは、API 8 以降で実行する必要があります。