3 votes

L'action Start Capture d'Automator ne détecte pas l'arrêt dans Quicktime sous OS X 10.8.2

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 !

1voto

Daniel Points 32917

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.

0voto

Ged Byrne Points 481

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).

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