Application Automator

aCLR

Bisounours
Modérateur
Club iGen
7 Mars 2008
11 530
5 916
Rouen
Salut,

j'ai fais un petit programme via Automator pour lancer une vidéo sous Quick Time Player.
J'ai composé mon app en prenant les actions "Lancer l'application" > Quick Time Player, "Obtenir les éléments du Finder" > le fichier vidéo que je veux voir et l'action "Lire les séquences" dans laquelle j'ai choisi Plein écran et coché Lire en boucle et saisi le nombre de fois voulu.

Le souci est qu'à l'exécution, le programme quitte le plein écran à la fin de la séquence vidéo pour ensuite relancer le plein écran et la lecture. Du coup ça ne boucle pas vraiment, dans le sens où la séquence ne reste pas en plein écran le temps du retour au début.

Je fais cela sous OSX 10.4 avec la version 1.0.5 de Automator.
 
Je ne sais pas si c'est possible avec Automator, c'est le même comportement de 10.4 à 10.9.

Quand QuickTime est lancé via la suite d'action, l'option boucle (cmd+alt+L) n'est pas activée, du coup à la fin de la vidéo la lecture s'arrête et Automator la relance (en incrémentant le compteur au passage).
Ca explique cet effet disgracieux.

Peut-être que c'est faisable en Applescript, aucune idée!
 
Comportement de murde ! :D

J'ai tenté de biaisé Automator en décochant la lecture en boucle pour l'activer via le raccourci ⌘+L dès le lancement de la vidéo. Ça fonctionne mais je ne suis pas sûr que cela tienne sur la durée.

Pour tout dire, cette vidéo est intégrée dans une installation présentée en galerie. Le personnel de ce lieu doit avoir un minimum de manipulations à faire pour démarrer la projection vidéo. Sur le papier, il n'avait qu'à appuyer sur le bouton power du mac pour lancer une session à ouverture automatique et l'application Automator se lançait. Dans les faits, il doit attendre le démarrage de la vidéo pour taper le raccourci clavier afin de boucler la vidéo. C'est un peu plus contraignant.

Je vais jeter un œil du côté d'Applescript.
 
Effectivement l'exécution d'un applescript est la bonne solution grâce à la commande repeat x times.

Faut juste que je trouve comment remplir cette action maintenant.

………

Je n'ai pas compris l'histoire des 3 lectures !? Mon fichier fait 60 secondes et doit tourner une dizaine d'heures maximum.

---------- Nouveau message ajouté à 18h46 ---------- Le message précédent a été envoyé à 18h40 ----------

En bon novice, j'ai rempli les champs input et parameters avec Quicktimeplayer et Play mais ça fonctionne pas

Bloc de code:
on run {QuickTimePlayer, play}
	repeat 600 times
		close
	end repeat
	return QuickTimePlayer
end run


---------- Nouveau message ajouté à 18h47 ---------- Le message précédent a été envoyé à 18h46 ----------

Ça me dit que Play est illégal en tant que paramètre formel

---------- Nouveau message ajouté à 19h05 ---------- Le message précédent a été envoyé à 18h47 ----------

Bon, je suis sur la bonne voie avec ce code

Bloc de code:
on run {input, parameters}
	tell document
		repeat 600 times
		end repeat
	end tell
	return input
end run

Seulement ça ne boucle qu'une fois et ça quitte aussi le plein écran entre deux lectures !?

:(
 
Je n'ai pas compris l'histoire des 3 lectures !? Mon fichier fait 60 secondes et doit tourner une dizaine d'heures maximum

- J'ai mal lu un truc... :x

Sinon, juste avec AppleScript Editor, tu peux l'enregistrer en tant qu'application

Bloc de code:
set unixFile to "/Users/nyxouf/Desktop/bla.mov"
set macFile to POSIX file unixFile
tell application "QuickTime Player"
	open macFile
	play the front document
	set looping of document 1 to true
	set presenting of document 1 to true
end tell

Le problème c'est que ça loop indéfiniment, faudrait un arrêt manuel.
 
- J'ai mal lu un truc... :x

Sinon, juste avec AppleScript Editor, tu peux l'enregistrer en tant qu'application

Bloc de code:
set unixFile to "/Users/nyxouf/Desktop/bla.mov"
set macFile to POSIX file unixFile
tell application "QuickTime Player"
	open macFile
	play the front document
	set looping of document 1 to true
	set presenting of document 1 to true
end tell

Le problème c'est que ça loop indéfiniment, faudrait un arrêt manuel.

Ok je vais tester ça.

Pour l'arrêt manuel, c'est une suite de 4 touches — esc, ctrl + eject, enter — je vais bien voir si elle fonctionne avec ce code.

………

Pour revenir sur le problème de sortie intempestive du plein écran, je crois que dans Automator comme j'appelle le fichier vidéo depuis le Finder et non pas depuis Quicktime, c'est en quelque sorte logique que la vidéo quitte entre deux lectures. Et je n'ai pas trouvé l'action "ouvrir QTP"

---------- Nouveau message ajouté à 14h02 ---------- Le message précédent a été envoyé à 13h50 ----------

Ça fonctionne super, merci ! :cool: