Я пытаюсь написать сценарий автоматизации JavaScript для записи экрана на моем Mac. Я обнаружил, что API не работает в строке doc.close()
. QuickTime просто зависает, и в конце концов мой редактор сценариев завершается с ошибкой тайм-аута.
var QuickTime = Application("QuickTime Player");
var doc = QuickTime.newScreenRecording();
doc.start();
delay(2);
doc.close();
В конце концов мне пришлось выйти из QuickTime из командной строки со следующим:
$ killall QuickTime\ Player
Затем я снова открываю QuickTime и нахожу свое видео, ожидающее меня там. Тогда я решил добавить аргументы методу close, и теперь мой скрипт выглядит так:
var QuickTime = Application("QuickTime Player");
var doc = QuickTime.newScreenRecording();
doc.start();
delay(2);
doc.close("yes",Path("/Users/myuser/Desktop/movie.mov"));
QuickTime.quit();
Result:
Error -2700: Script too silly to execute.
Error on line 5: Error: Named parameters must be passed as an object.
Я не вижу достаточно документации, чтобы полностью понять, когда меня здесь спрашивают. Как правильно написать этот скрипт, который записывает запись экрана и сохраняет этот документ/файл на моем рабочем столе?