====== Rotation d'une vidéo par les métadonnées ====== ===== Cas d'utilisation ===== La vidéo a été filmée en mode portrait, mais elle est jouée en mode paysage, avec une rotation de + ou - 90°. C'est par exemple le cas de la caméra Crosstour CT9900 qui ne détecte pas l'orientation de l'appareil((Ce problème n'apparaît généralement pas sur les smartphones mais peut apparaître sur certains appareils photo.)) lors de la prise de vue. ===== Solution ===== La solution n'est pas d'appliquer une rotation((De nombreux tutoriels proposent d'utiliser la commande //transpose// fournie par la bibliothèque //ffmpeg//, sans se poser de question…:-?)) aux images enregistrées. Cela dégrade l'image, consomme du cpu, de l'énergie et du temps. Il suffit d'injecter dans les méta-données du fichier l'information manquante. Par exemple : ffmpeg -i input-video.mp4 -map_metadata 0 -metadata:s:v rotate="90" -codec copy output-video.mp4 Dans ce cas, on indique que la vidéo a été enregistrée avec une rotation horaire de 90°((Cela signifie que la rotation inverse (-90°) doit être appliquée à la lecture)) : * l'action est instantanée, * les données vidéo ne sont pas altérées puisqu'elles sont copiées telles quelles, sans réencodage (-codec copy). Si elle a été enregistrée avec une rotation anti-horaire (trigonométrique) de 90°, on indiquera "rotate=-90". Source : [[https://ubuntuhandbook.org/index.php/2021/03/single-command-rotate-video-ubuntu-linux/|Single Command to Rotate a Video in Ubuntu Linux]] ===== Utilisation de la vidéo ===== La vidéo ainsi renseignée est utilisable en simple lecture mais également pour faire du montage virtuel. Dans l'exemple du cas d'utilisation mentionné en introduction, le simple ajout du fichier renseigné aux clips d'un projet //Kdenlive//, fera apparaître la vidéo au format portrait, aussi bien dans le moniteur de clip que dans le moniteur de rendu du projet, sans avoir à lui appliquer aucune transformation.