IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> Script rotation video via quicktime
Options
chupaps
posté 3 Feb 2014, 09:34
Message #1


Nouveau Membre


Groupe : Membres
Messages : 7
Inscrit : 18 Sep 2007
Membre no 95 066



Bonjour,
je débute en applescript mais je sens un grand potentiel pour me simplifier pleins de taches répétitives.
l'objet sur lequel je butte est celui la:
je souhaite retourner un grand nombre de vidéos, je sais le faire avec quicktime (a la main) mais je n'arrive pas a automatiser le process:
- prendre la première video d'une dossier
- la retourner
- l'enregistrer en tant que séquence autonome dans un autre dossier
- déplacer la video original dans un autre dossier
-revenir a la première étape
et lorsqu'il n'y a plus de vidéos
- effacer les videos originales.

l'étape qui me pose problème e l'enregistrement en tant que séquence autonome, en effet, cela créer bien une nouvelle video mais la rotation n'est pas appliquer.

si une âme charitable voudrait bien jeter un oeil à mon script en cours et m'aider, ça me rendrait un grand service.

le script en cours :

tell application "Finder"
if folder "a effacer" of folder "medias:videos:gopro:a rotater:" exists then
else
make new folder with properties {name:"A EFFACER"} at "medias:videos:gopro:a rotater:"
end if
set a to get first item of folder "medias:videos:gopro:a rotater:a faire:"
set b to "medias:videos:gopro:a rotater:A EFFACER:"
set c to folder "medias:videos:gopro:vidage carte:"
set d to the the name of a
set f to "medias:videos:gopro:a rotater:A DEPLACER:" & d
tell application "QuickTime Player 7"
close every window
open a
flip vertical document 1
flip horizontal document 1
save self contained document 1 in f
end tell
end tell


la boucle n'est pas encore faite, ni l'effacement des vidéos originales mais je pense savoir le faire sans chercher des heures.

merci d'avance

ps: je precise que je tiens beaucoup a faire tout cela via applescript car ça me permettra de faire évoluer le script ( conversion, changement de taille etc...) et de me "faire la main" donc merci de ne pas me conseiller un logiciel.
Go to the top of the page
 
+Quote Post
PBell
posté 3 Feb 2014, 21:29
Message #2


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 264
Inscrit : 7 Dec 2013
Lieu : Ile de France
Membre no 188 169



Bonsoir Chupaps,
Voici un morceau de code testé qui réponds à ta demande :

Code
tell application "Finder"
    set Mon_Dossier to choose folder with prompt "Sélectionner le dossier contenant les vidéos à pivoter"
    set Mes_Videos to every file of folder Mon_Dossier
    set Dest_Dossier to choose folder with prompt "Sélectionner le dossier destination des vidéos"
end tell
set A_Supprimer to {}
tell application "QuickTime Player 7"
    close every window
    repeat with Mon_Fichier in Mes_Videos
        tell application "Finder" to open Mon_Fichier using ((path to applications folder as text) & "Utilities:QuickTime Player 7.app")
        set Nom to name of front document
        flip vertical front document
        flip horizontal front document
        save self contained front document in ((Dest_Dossier as text) & Nom) with replacing
        delay 4
        close front window
        set A_Supprimer to A_Supprimer & {Mon_Fichier}
    end repeat
    tell application "Finder" to delete A_Supprimer
end tell


Attention : il faut vérifier où tu as mis ton application Qt Player 7. La mienne est dans le dossier Utilitaires (Utilities), d'où l'appel à cet endroit.
La raison pour laquelle cette instruction est présente c'est pour éviter que le Finder n'ouvre le fichier avec tout autre application Vidéo ( comme QT standard!).

J'ai ajouté le delay 4 (4 secondes) entre 2 boucles car il arrive, lors des tests, que certains fichiers soient long à enregistrer et génèrent une erreur AS (fichier en cours, erreur E/S,... ou autre !).
Il est possible de déterminer, selon la vitesse de ta machine/disque, ce délai en fonction de la taille du rush Gopro.

Le script demande le dossier source et destination au début. Tu peux aussi mettre ces dossiers en dur si tu le souhaites (j'ai horreur du hard coding !) et éventuellement ajouter un make pour créer le dossier destination.

Enfin, juste un petit conseil de programmation si je puis me permettre : donne des noms clairs et précis à tes variables.... surtout si tu souhaites modifier et faire évoluer ton code plus tard.
Dans ton code actuel, il faut relire à 2 fois pour se souvenir ce que signifient les variables a, b, c et d !

J'espère t'avoir aidé.

Cordialement


--------------------
iiMac 24 M1 16Go/1To 13.5.1
iMac 27 i5 3,1GHz 8Go/1To 10.11.6 / 10.6.8
iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11
Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8
Go to the top of the page
 
+Quote Post
chupaps
posté 5 Feb 2014, 09:12
Message #3


Nouveau Membre


Groupe : Membres
Messages : 7
Inscrit : 18 Sep 2007
Membre no 95 066



Merci je vais tester cela ce soir.
Et merci aussi pour les conseils concernant les variables, ça sera plus clair en effet.

Go to the top of the page
 
+Quote Post
chupaps
posté 6 Feb 2014, 20:16
Message #4


Nouveau Membre


Groupe : Membres
Messages : 7
Inscrit : 18 Sep 2007
Membre no 95 066



salut,
je viens de tester et je me retrouve avec le même problème: tout le process se fait bien mais le fichier enregistré ne conserve pas les modifications effectués par quick time, je le vois pourtant effectuer la rotation.

As-tu une idée d'ou proviendrai l'erreur?
Go to the top of the page
 
+Quote Post
PBell
posté 7 Feb 2014, 07:12
Message #5


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 264
Inscrit : 7 Dec 2013
Lieu : Ile de France
Membre no 188 169



Bonjour,
Le script fonctionne sans problème pour moi, donc cela vient de quelque chose chez toi.

Dans l'éditeur de script, lorsque tu demandes, en bas de la fenêtre, à voir les événements et les réponses, après exécution du script, qu'est-il affiché ?
Si tu vois bien la vidéo tournée, cela ne peux être , à mon avis, que 3 options :
1) le delay n'est pas assez long et le script ferme la fenêtre avec écriture finale (ton mac est lent, ou c'est ton support d'écriture, ou tes vidéo sont longues ou les 3 !)
2) l'événement "save self container" ne peut se produire car le dossier de destination est verrouillé en écriture (autorisations, volume plein,..)
3) Tu as un problème de codec (j'avoue que ne vois pas bien pourquoi !)

Je penche pour le 1).
Regarde bien le résultat en bas de la fenêtre de l'éditeur de script et dis moi ce qui est écrit.
C'est indispensable pour trouver l'erreur. ... et trouver une parade

Bonne journée


--------------------
iiMac 24 M1 16Go/1To 13.5.1
iMac 27 i5 3,1GHz 8Go/1To 10.11.6 / 10.6.8
iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11
Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 23rd April 2024 - 10:27