Lorsque j'écris une vidéo par MediaRecorder, il enregistre toujours en mode paysage, quelle que soit l'orientation réelle de l'appareil. Comment forcer MediaRecorder/Camera à utiliser une orientation réelle? Référez-vous à Camera.Parameters.setRotation() pour plus d'informations.comment changer l'orientation de la vidéo dans MediaRecorder à portrait
Répondre
Il ya un exemple ici et au lieu d'appeler setRotation (rotation) essayez d'appeler mediaRecorder.setOrientationHint (rotation) lors de l'enregistrement vidéo.
'mediaRecorder.setOrientationHint' ne change que l'orientation de la vidéo de sortie, pas l'orientation de l'aperçu. – Cat
En outre, 'setOrientationHint' ne fonctionne que pour les flux MPEG4. D'autres (comme MPEG2TS) n'implémentent pas cette option (elle est silencieusement ignorée). – Lekensteyn
@Chat vous avez raison, aucune idée sur la façon de résoudre ce problème sur l'aperçu? !! –
Jetez un oeil à la documentation ici
http://developer.android.com/guide/topics/media/camera.html#capture-video
Le piège le plus commun avec cet exemple est le setCamera(). VOUS DEVEZ RÉGLER IMMÉDIATEMENT LA CAMÉRA APRÈS AVOIR EFFECTUÉ LE MediaRecorder sinon vous obtiendrez des erreurs.
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
J'espère que cela aide quelqu'un. Bonne chance!!
ce code échouera SAUF si vous appelez 'mCamera.unlock();' avant 'recorder.setCamera (mCamera)': http://developer.android.com/reference/android/hardware/Camera.html#unlock() – Cat
J'ai déjà rencontré ce problème auparavant. J'ai trouvé que vous pouvez utiliser la fonction setOrientationHint (API 9). Appelez cette fonction avant d'appeler MediaRecorder.prepare(). Vous pouvez configurer le degré d'orientation de votre vidéo de sortie.
J'espère que ça aide, bonne chance!
Ajoutez les deux lignes de code suivantes:
Camera.setDisplayOrientation(90); // use for set the orientation of the preview
mRecorder.setOrientationHint(90); // use for set the orientation of output video
avant:
mRecorder.setCamera(mCamera);
Exemple complet:
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. Comment lire la vidéo en mode portrait dans l'iphone
- 2. Problème avec android MediaRecorder setVideoSize()
- 3. La préparation de MediaRecorder a échoué
- 4. iPhone Empêcher l'application de changer automatiquement l'orientation portrait quand un arrêt vidéo
- 5. Comment changer la vitesse de lecture de la vidéo
- 6. Comment faire pivoter le portrait vidéo en paysage
- 7. Android MediaRecorder et setOutputFile
- 8. Puis-je lire une vidéo en mode portrait?
- 9. Android: Comment initialiser MediaRecorder sans une surface valide pour l'aperçu vidéo?
- 10. Comment changer l'orientation vidéo pour AVCaptureVideoDataOutput
- 11. comment changer l'orientation de l'iphone/ipod?
- 12. CallBack pour le bloc enregistré dans MediaRecorder
- 13. MediaRecorder et UDP (DatagramSocket) dans Android
- 14. Comment changer le mode plein écran pendant la lecture vidéo
- 15. afficher la vidéo dans un cadre en mode portrait en utilisant MPMediaPlayer
- 16. changer le portrait en paysage et vice versa
- 17. Définir l'orientation sur Portrait dans une vue lorsque le contrôleur de navigation est en mode portrait
- 18. UITabBar dans Landscape avec UITableView dans Portrait
- 19. Comment ajouter de l'audio à la vidéo?
- 20. paysage NavigationController et portrait
- 21. L'image de paysage à portrait avec opencv
- 22. iPad: Changer la vue en fonction du contenu lors de l'orientation (paysage/portrait)
- 23. Lecture d'une vidéo avec MPMoviePlayerController dans Portrait WITHOUT Private API - Suis-je rejeté par Apple?
- 24. encoder la vidéo à l'envers?
- 25. Comment enregistrer la vidéo dans l'iphone
- 26. Portrait au paysage Changement d'orientation de UITabbar?
- 27. Comment faire pour changer l'heure d'une photo en vidéo?
- 28. Android - Comment capturer et boucler la vidéo sur l'écran?
- 29. Rotation Monotouch dans Portrait/Paysage
- 30. comment contrôler l'orientation de la vidéo assemblée avec AVMutableComposition
Qu'en est-set 'android: screenOrientation =" paysage "' de votre CameraActivity dans le manifeste – IgniteCoders