Дія Автоматичного запуску зйомки не виявляє зупинки в Quicktime в OS X 10.8.2


3

Я намагаюся створити додаток Automator, який запустить Quicktime, створить нове захоплення аудіо, запустить це захоплення, а потім збережіть його з певним іменем файлу після натискання кнопки зупинки у вікні захоплення. Хоча мені вдалося це зробити в Леві без особливих труднощів, я все ще відчуваю проблеми з акцією "Початок захоплення" у Гірському Леві. Навіть незважаючи на те, що прапорець "Зачекайте завершення захоплення завершено", дія, схоже, не визначає, коли в Quicktime натискається кнопка зупинки. Будемо дуже вдячні за будь-які рішення, хитрощі або способи вирішення питань, які б спрацювали правильно.

Відповіді:


1

Є багато, що не працює щодо автоматизації QuickTime під Mountain Lion. Це некрасиво, але, схоже, це є вирішенням, яке має ключову честь справді працювати.

У потоці автоматизації використовуйте дію "Запустити AppleScript". Використовуйте це як сценарій:

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

Це не дуже, але це обхід.

Приблизно всі способи скриптування команди збереження у QuickTime через AppleScript, на основі коду, здаються зламаними у Mountain Lion. Я не можу отримати доступ до шляху самого переднього документа. Я не можу експортувати. Я не можу закрити економію. Це все не вдається мовчки або з повідомленням про помилку. Що, здається, працює - це надіслати відповідні натискання клавіш для імітації експорту файлів вручну. Так що я тут зробив.

Я підозрюю, що ви хочете, щоб ваш файл зберігався з ім'ям, відмінним від "конкретного імені файлу" і, можливо, десь іншим, ніж ваш робочий стіл. Зробіть відповідні заміни в сценарії, щоб це могло статися. Файл буде там на диску; наступні дії у вашому робочому процесі можуть скористатися цим.

Зауважте, що якщо ваш файл вже існує, ви отримаєте діалогове вікно підтвердження в команді збереження QT, і сценарій не обробляє це автоматично.


0

Замість того, щоб використовувати вбудовані дії для запуску, скористайтеся діями AppleScript як тригером для запуску запису (і дочекайтеся його припинення), а потім передайте отриманий файл в Automator, щоб зробити все, що вам потрібно з ним.

Я трохи змінив сценарій Деніела Лоусона :

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

Я видалив експортні рядки 1 і змінив посилання зі змінної на просто front document(що дозволяє уникнути помилок, якщо запис короткий, що я зіткнувся під час мого тестування). Нарешті, я додав твердження про повернення із шляху POSIX до файлу, що виходить, який Automator може приймати як вхід для подальших дій.

Помістіть це в дії AppleScript, і отриманий файл буде належним чином переданий будь-яким іншим діям (наприклад, переміщенню / перейменуванню або повторному кодуванню).

Примітки

1 Функції програвача QuickTime Player saveта exportAppleScript розбиті до того, що вони є марними. Моя теорія полягає в тому, що це сталося, коли 10.7 запроваджував автоматичне збереження, оскільки всі записи автоматично зберігаються у вашому ~/Moviesкаталозі, а налаштування якості потрібно заздалегідь коригувати вручну (вони не піддаються AppleScript).


Ви перевірили це в ML? Ідея мені дуже подобається, але я отримую такий самий збій, як і в першій версії мого сценарію.
Даниїл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.