Je travaille sur un projet qui nécessite l'enregistrement d'un grand nombre de clips audio de 20 secondes (le format du fichier est sans importance, pour autant que je sache). J'aimerais pouvoir le faire sans appuyer sur un bouton pour arrêter chaque enregistrement. En d'autres termes, j'espère qu'il existe un moyen d'utiliser une minuterie pour arrêter automatiquement l'enregistrement chaque fois que les 20 secondes sont écoulées. Puis-je gérer cela dans QuickTime ? Si non, je suis ouvert à toute suggestion de la communauté. Merci d'avance.
Réponse
Trop de publicités?Voici un exemple de script pour essayer de répondre aux besoins/souhaits que vous avez exprimés. Tel qu'il est codé, il va faire 3 enregistrements de cinq secondes sur votre bureau nommés "Enregistrement_n.m4a" lorsque le 'n' dans le nom sera incrémenté automatiquement de 1 à 3, par exemple "Enregistrement_1.m4a", "Enregistrement_2.m4a" etc. jusqu'à n'importe quoi. combien de fois est réglé sur.
Ouvrir scriptÉditeur et copiez et collez le code ci-dessous et appuyez sur le bouton "Compiler".
set howMany to 3 -- The number of recordings to make.
set recordingNumber to 1 -- 'recordingNumber' is used to increment the recording number in the filename when exporting.
tell application "QuickTime Player"
activate
close (every document whose name contains "Untitled") saving no -- I set this just to have no other Untitled windows open when starting the recordings, especially if having broken out of the repeat loop.
repeat howMany times
set savePath to (the path to the desktop folder as text) & "Recording_" & recordingNumber & ".m4a"
set recording to new audio recording
start recording
delay 6 -- Add an additional second to the wanted value, e.g. for 20 second recording set delay to 21.
stop recording
export document "Untitled" in file savePath using settings preset "Audio Only"
delay 2 -- Set appropraite delay to allow export to complete.
close (every document whose name contains "Untitled") saving no
set recordingNumber to recordingNumber + 1 -- Increments recording number by one.
-- Close "Export Progress" window.
tell application "System Events" to click menu item "Hide Export Progress" of menu "Window" of menu bar 1 of process "QuickTime Player"
display dialog "Click OK or press Enter to start next recording."
end repeat
end tell
Exécutez le script tel quel une fois ou deux pour voir ce qu'il fait et ensuite vous pouvez changer la valeur de combien de fois au nombre d'enregistrements que vous voulez/devez faire, modifiez la valeur du premier paramètre de l'option retarder de "6" à "21" pour un enregistrement de 20 secondes et la valeur de la seconde retarder de "2" à "5", par exemple. La valeur du deuxième retarder que vous devrez déterminer à l'avance en définissant la valeur de l'attribut combien de fois à 1 ou 2 et la valeur de la première retarder de '6' à '21' pour avoir un enregistrement de 20 secondes et voir combien de secondes il faut pour exporter. Cette valeur (de la seconde retarder ) peut être plus élevé que ce qui est réellement nécessaire, par exemple si vous souhaitez faire une petite pause entre les enregistrements pour reprendre votre souffle et rassembler vos idées pour l'enregistrement suivant, bien qu'il existe un autre contrôle sous la forme d'une boîte de dialogue entre chaque enregistrement.
Notez la ligne display dialog "Click OK or press Enter to start next recording."
il est là comme un mécanisme de contrôle pour commencer l'enregistrement suivant ou pour sortir de l'écran. répéter boucle. Il existe de nombreuses manières différentes de coder et d'accomplir une tâche comme celle-ci et ceci est juste destiné à vous donner un cadre de départ sur lequel vous pourrez vous appuyer si vous souhaitez utiliser AppleScript pour accomplir une tâche automatisée comme celle que vous avez mentionnée.
Il n'y a pas de contrôle d'erreur écrit dans ce script tel quel, ce qui signifie que si le script est exécuté une deuxième fois, il écrasera par exemple "Enregistrement_1.m4a", "Enregistrement_2.m4a", etc. Donc, si vous avez besoin de sortir du répéter boucle en cliquant sur "Annuler" dans la boîte de dialogue ou sur "Arrêter" dans l'éditeur script, assurez-vous d'avoir défini les paramètres de la boucle. recordingNumber
au numéro approprié, qui serait le numéro utilisé du dernier fichier exporté + 1. De même, le premier close (every document whose name contains "Untitled") saving no
fermera tout fichier ouvert dans QuickTime Player dont le nom contient "Untitled" sans l'enregistrer ou demander à être enregistré. Elle peut être commentée en plaçant --
devant si vous le souhaitez, bien que si vous vous libérez de la répéter loop vous devrez nettoyer manuellement avant de redémarrer, vous pouvez donc le laisser tel quel. Juste quand vous utilisez ce script n'utilisez que QuickTime Player pour la tâche à accomplir si vous ne comprenez pas pourquoi je l'ai codé de cette façon.