====== 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((Sur un lecteur qui reconnaît les méta-données, comme VLC.)) 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.
===== Rotation à la volée =====
Dans Kdenlive, Shotcut et d'autres éditeurs, on peut directement utiliser des sources qui n'ont pas l'orientation voulue. Pour ce faire on agit sur les préférences des __sources__ plutôt que d'utiliser un filtre. Le principe est de redresser les vidéos avant de les insérer dans une piste de montage.
Sous Kdenlive, on affiche les propriétés de la source. Dans l'onglet "Propriétés" on sélectionne la rotation voulue en déroulant le menu qui se trouve à droite de la case à cocher "Désactiver la rotation automatique".
Source : [[https://youtu.be/r8zWoPRRK9k|How to Rotate a Video in Kdenlive - The RIGHT Way]]
Il faudrait s'assurer que Kdenlive ne ré-encode pas la vidéo. Les délais de redressement des vidéos laissent à penser qu'il ne ré-encode pas. Autre indice favorable, Kdenlive différencie cette propriété d'orientation du filtre rotation (qui lui ré-encode).