Я снимаю новое видео в ориентации ПОРТРЕТ на устройстве Android следующим образом:
Intent intent = new Intent(android.provider.MediaStore.ACTION_VIDEO_CAPTURE);
startActivityForResult(intent, 1886);
и получаю этот файл: "/ mnt / sdcard / DCIM / Camera / video-2012-02-02- 10-45-48.mp4 "
Затем я проигрываю это так:
private VideoView videoView = (VideoView) findViewById(R.id.videoView);
String videoUrl = "/mnt/sdcard/DCIM/Camera/video-2012-02-02-10-45-48.mp4";
videoView.setMediaController(new MediaController(this));
videoView.setVideoURI(Uri.parse(videoUrl));
videoView.start();
Вот мой файл макета:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<VideoView
android:id="@+id/videoView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_centerInParent="true" />
</RelativeLayout>
Когда я проигрываю его в стандартной галерее Android, ориентация правильная. Но когда я воспроизводю видео в VideoView выше, оно поворачивается на 90 градусов. Пейзаж отлично работает, единственная проблема - портретные видео.
Как я могу повернуть это видео в VideoView?
Также как программно определить ориентацию?