J'essaie de créer une application Automator qui lancera Quicktime, créera une nouvelle capture audio, démarrera cette capture, puis l'enregistrera avec un nom de fichier spécifique après avoir cliqué sur le bouton d'arrêt dans la fenêtre de capture. Bien que j'aie pu le faire dans Lion sans aucune difficulté, je continue à rencontrer des problèmes avec l'action Start Capture dans Mountain Lion. Bien que la case "Attendre la fin de la capture" soit cochée, l'action ne semble pas détecter le moment où le bouton d'arrêt est cliqué dans Quicktime. Toute solution, astuce ou solution de contournement qui permettrait de faire fonctionner cette action correctement serait très appréciée !
Réponses
Trop de publicités?Il y a beaucoup de choses qui ne fonctionnent pas en ce qui concerne l'automatisation de QuickTime sous Mountain Lion. C'est laid, mais cela semble être une solution de contournement qui a la vertu clé de fonctionner réellement.
Dans votre flux Automator, utilisez l'action "Exécuter AppleScript". Utilisez ceci comme le script :
tell application "QuickTime Player"
activate
set x to new audio recording
tell x to start
delay 1
set lastLength to duration of x
delay 1
set newLength to duration of x
try
repeat while lastLength is not equal to newLength
delay 1
set lastLength to newLength
set newLength to duration of x
end repeat
end try
-- display alert name of document 1
set v to file of front document
set thePath to POSIX path of (path to desktop)
tell x to activate
delay 1
tell application "System Events"
keystroke "S" using {command down, shift down}
delay 1
keystroke thePath
delay 1
keystroke return
delay 1
keystroke "specific file name"
keystroke return
end tell
end tell
Ce n'est pas joli, mais c'est une solution de rechange.
Presque toutes les méthodes basées sur le code pour script la commande d'enregistrement dans QuickTime via AppleScript semblent être cassées dans Mountain Lion. Je ne peux pas accéder au chemin du document le plus en avant. Je ne peux pas exporter. Je ne peux pas fermer l'enregistrement. Tout échoue, soit silencieusement, soit avec un message d'erreur. Ce qui semble fonctionner, c'est d'envoyer les touches appropriées pour simuler une exportation manuelle de fichier. C'est donc ce que j'ai fait ici.
Je soupçonne que vous voulez que votre fichier soit enregistré sous un nom différent de "nom de fichier spécifique" et peut-être ailleurs que sur votre bureau. Faites les substitutions appropriées dans le script pour que cela puisse se produire. Le fichier sera alors présent sur le disque ; les actions ultérieures de votre flux de travail pourront en tirer parti.
Notez que si votre fichier existe déjà, vous obtiendrez un dialogue de confirmation dans la commande de sauvegarde de QT, et le script ne gère pas cela automatiquement.
Plutôt que d'utiliser les actions de capture intégrées, utilisez une action AppleScript comme déclencheur pour lancer l'enregistrement (et attendre qu'il s'arrête), puis transmettez le fichier résultant à Automator pour qu'il fasse ce dont vous avez besoin.
J'ai modifié Le script de Daniel Lawson légèrement :
tell application "QuickTime Player"
activate
new audio recording
tell front document to start
delay 1
set lastLength to duration of front document
delay 1
set newLength to duration of front document
try
repeat while lastLength is not equal to newLength
delay 1
set lastLength to newLength
set newLength to duration of x
end repeat
end try
set theFile to file of front document
return POSIX path of theFile
end tell
J'ai supprimé les lignes d'exportation 1 et a changé les références d'une variable à simplement l'icône front document
(ce qui évite certaines erreurs si l'enregistrement est court, ce que j'ai rencontré lors de mes tests). Enfin, j'ai ajouté une déclaration de retour avec le chemin POSIX du fichier résultant, qu'Automator peut prendre comme entrée pour les actions suivantes.
Placez cela dans une action AppleScript, et le fichier résultant sera correctement transmis à toute autre action que vous avez (comme le déplacer/renommer, ou le réencoder).
Notes
1 Le lecteur QuickTime save
et export
Les fonctions AppleScript sont cassées au point d'être inutiles. Ma théorie est que cela s'est produit lorsque 10.7 a introduit la sauvegarde automatique, car tous les enregistrements sont automatiquement sauvegardés sur votre disque dur. ~/Movies
et les paramètres de qualité doivent être réglés manuellement au préalable (ils ne sont pas exposés à AppleScript).