1 votes

Comment puis-je filtrer et trier les vidéos par orientation (portrait ou paysage) ?

J'essaie de filtrer et de trier toutes les vidéos d'un dossier local en fonction de leur orientation. Je ne trouve rien dans AppleScript, dans la recherche de fichiers MacOS ou dans les métadonnées des vidéos qui puisse me faciliter la tâche. Je pense que je vais devoir saisir la hauteur et la largeur de la vidéo, puis générer un dossier pour chaque combinaison distincte. Je devrai ensuite déterminer à vue d'œil quelles tailles correspondent au format portrait et au format paysage.

Mon but :

  1. Exporter toutes les vidéos originales de iCloud Photos (~400GB) et les stocker localement
  2. Filtrez et triez-les par orientation portrait ou paysage
  3. Supprimez les vidéos qui répondent à d'autres critères spécifiés (moins de 15 secondes, doublons, etc.).

0 votes

Si ce sont des vidéos iPhone, alors vous pouvez utiliser ExifTool par Phil Harvey pour obtenir la valeur de la propriété Rotation, 0 correspondant à paysage et 90 à portrait. Dans le Terminal, par exemple /path/to/exiftool /path/to/IMG_1234.MOV | awk '/Rotation/{print $3}' retournera sa valeur. Vous pouvez utiliser cet exemple de commande pour la travailler dans un script qui agira en conséquence comme vous le souhaitez.

0 votes

C'est possible avec un script bash, en utilisant mdls -raw -name kMDItemPixelHeight (et kMDItemPixelWidth ) que vous pouvez comparer pour déterminer lequel est le plus grand.

0 votes

@CJK Merci. C'est exactement ce dont j'avais besoin. J'ai ajouté mon script comme réponse ci-dessous.

2voto

Greg Barbosa Points 111

Après avoir testé la réponse de @CJK, voici ce que j'ai trouvé :

#!/bin/bash
shopt -s nullglob

for f in *.{mp4,MP4,mov,MOV,m4v,M4V}
    do 
        height=`mdls -raw -name  kMDItemPixelHeight "$f"`
        width=`mdls -raw -name  kMDItemPixelWidth "$f"`
        mkdir -p "${height}x${width}"
        mv "$f" "${height}x${width}"/

        printf "File: $f\n"     
        printf "> Dimensions: $height x $width \n\n"
    done

printf "All done! \n"

Cette opération permet de saisir la hauteur et la largeur de chaque type de vidéo dans un dossier spécifique, puis de les classer dans le dossier approprié. Avec un peu plus de script, vous pourriez ensuite trier les dossiers en dossiers portrait/ paysage en comparant la hauteur et la largeur.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X