Kiedy nagrywam wideo przez MediaRecorder, zawsze nagrywa w trybie poziomym, niezależnie od rzeczywistej orientacji urządzenia. Jak zmusić MediaRecorder/Camera do prawdziwej orientacji?jak zmienić orientację wideo w MediaRecorder na portret
Odpowiedz
aby uzyskać więcej informacji, patrz Camera.Parameters.setRotation().
Jest tam przykład i zamiast wywoływać setRotation (obrót) spróbuj wywołać mediaRecorder.setOrientationHint (obrót) podczas nagrywania wideo.
'mediaRecorder.setOrientationHint' zmienia tylko orientację wyjściowego wideo, a nie orientację podglądu. – Cat
Ponadto, 'setOrientationHint' działa tylko dla strumieni MPEG4. Inne (takie jak MPEG2TS) nie implementują tej opcji (zostaje ona cicho zignorowana). – Lekensteyn
@Czy masz rację, jakiś pomysł, jak to naprawić na podglądzie? !! –
Spójrz na dokumentacji tutaj
http://developer.android.com/guide/topics/media/camera.html#capture-video
Najczęstszym pułapka z tego przykładu jest setCamera(). MUSISZ USTAWIĆ KAMERĘ NATYCHMIAST PO URUCHOMIENIU MediaRecorder, w przeciwnym razie dostaniesz błędy.
Camera mCamera = getCameraInstance();
// adjust the camera the way you need
mCamera.setDisplayOrientation(90);
MediaRecorder recorder = new MediaRecorder();
recorder.setCamera(mCamera);
recorder.setAudioSource(MediaRecorder.AudioSource.DEFAULT);
recorder.setVideoSource(MediaRecorder.VideoSource.DEFAULT);
recorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
recorder.setOutputFile(filePath);
// add any limits
recorder.setMaxDuration(50000); // 50 seconds
recorder.setMaxFileSize(5000000); // Approximately 5 megabytes
Mam nadzieję, że to pomoże komuś. Powodzenia!!
ten kod zakończy się niepowodzeniem, BEZ funkcji "mCamera.unlock();" przed 'recorder.setCamera (mCamera)': http://developer.android.com/reference/android/hardware/Camera.html#unlock() – Cat
Również utknąłem z tym problemem. Zauważyłem, że możesz użyć funkcji setOrientationHint (API 9). Wywołaj tę funkcję, zanim zadzwonisz do MediaRecorder.prepare(). Możesz ustawić stopień orientacji wideo wyjściowego.
Mam nadzieję, że to pomoże, powodzenia!
Dodaj następujące dwa wiersze kodu:
Camera.setDisplayOrientation(90); // use for set the orientation of the preview
mRecorder.setOrientationHint(90); // use for set the orientation of output video
przed:
mRecorder.setCamera(mCamera);
Pełna przykład:
mRecorder = new MediaRecorder();
// Both are required for Portrait Video
mCamera.setDisplayOrientation(90);
mRecorder.setOrientationHint(90);
// Step 1: Unlock and set camera to MediaRecorder
mCamera.unlock();
mRecorder.setCamera(mCamera);
// Step 2: Set sources
mRecorder.setAudioSource(MediaRecorder.AudioSource.DEFAULT);
mRecorder.setVideoSource(MediaRecorder.VideoSource.DEFAULT);
// Step 3: Set a CamcorderProfile (requires API Level 8 or higher)
mRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_480P));
mMediaRecorder = new MediaRecorder();
mServiceCamera.setDisplayOrientation(90);
mMediaRecorder.setOrientationHint(90);
mServiceCamera.unlock();
mMediaRecorder.setCamera(mServiceCamera);
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mMediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
- 1. Jak zmienić orientację wideo AVPlayera?
- 2. Pobierz orientację telefonu, ale ustaw orientację ekranu na portret
- 3. Przechwytywanie wideo MediaRecorder w trybie portretowym
- 4. iOS: Jak zmienić orientację UICollectionViewCell?
- 5. Jak zmienić orientację kontroli UniformGrid?
- 6. W programie Matlab, jak zmienić orientację osi?
- 7. Jak kontrolować orientację wideo zmontowanego z AVMutableComposition
- 8. Nagrane wideo ma niewłaściwą orientację
- 9. Android MediaRecorder setCaptureRate() i prędkość odtwarzania wideo
- 10. Jak naprawić orientację strony internetowej na Portret tylko na iPada i iPhone'a?
- 11. Przesyłanie strumieniowe wideo z MediaRecorder poprzez LocalSocket
- 12. Wykryj orientację nagranego wideo w Androidzie
- 13. Jak uzyskać aktualną orientację widoku iPhone'a lub ostatnią orientację urządzenia?
- 14. MPMoviePlayerController ponownie orientuje portret na poziomy i na powrót na portret (iOS 4.1)
- 15. Jak zmienić orientację przechwyconych ramek bajtu [] przez wywołanie zwrotne onPreviewFrame?
- 16. Android MediaRecorder w transmisji strumieniowej
- 17. Utrata zgodności zapytania dotyczącego multimediów po przełączeniu portret-portret-portret
- 18. orientacja na portret aparatu Android
- 19. Jak wykryć orientację urządzenia, gdy blokada orientacji jest włączona, a aplikacja obsługuje tylko portret?
- 20. Problem z Androidem MediaRecorder setVideoSize()
- 21. Przesyłanie wideo na Facebooka przy użyciu FB SDK na iOS, usuwa orientację. Jak mogę to naprawić?
- 22. Korzystanie android MediaRecorder
- 23. Jak zmienić orientację istniejącego pliku pdf przy użyciu krewetki?
- 24. Jak uzyskać rozmiar pliku wideo na żywo w systemie Android?
- 25. MediaRecorder start kody błędów
- 26. Jak ustawić domyślną orientację w iOS Simulator
- 27. mediacodec vs mediaplayer i mediarecorder
- 28. Przesyłanie pliku MediaRecorder podczas nagrywania
- 29. Android: uzyskaj aktualną orientację urządzenia
- 30. Fragmenty przywracające stan na orientację zmienił
co o zestawie 'androida: screenOrientation =" krajobrazu "z twojej organizacji CameraActivity w manifeście – IgniteCoders