尝试开始屏幕录制,等待几秒钟,停止录制并将保存的录制内容导出到磁盘。
版本
的AppleScript
set filePath to "" & (path to desktop)
tell application "QuickTime Player"
set newMovieRecording to new movie recording
tell newMovieRecording
start
delay 2 --(seconds)
stop
export newMovieRecording in (filePath & "movie") using settings preset "25 fps"
end tell
end tell
stop和start命令正常工作但export
命令失败并出现此错误:
movie_record.scpt:215:294: execution error: QuickTime Player got an error: Can’t get document "Movie Recording". (-1728)
答案 0 :(得分:4)
请注意,在发出停止命令后,文档名称会发生变化...
set filePath to (path to desktop as text) & "movie.mov"
tell application "QuickTime Player"
set newMovieRecording to new movie recording
set windowID to id of first window whose name = "Movie Recording"
tell newMovieRecording
start
delay 2 --(seconds)
stop
end tell
set newMovieRecordingDoc to first document whose name = (get name of first window whose id = windowID)
tell newMovieRecordingDoc to export in filePath using settings preset "iPod"
--tell newMovieRecordingDoc to export in filePath using settings preset "25 fps"
end tell
答案 1 :(得分:2)
找到解决方案。请注意,从调用脚本到录制实际开始之间有一点延迟(约2秒)。
(*********************************************
Record a Single `QuickTime` Movie
Args:
1. name: The name of the movie.
2. seconds: The length of the movie you want to record in seconds.
Usage:
> osascript movie_record.scpt 'name.mov' 5
> osascript movie_record.scpt <file_name> <seconds>
**********************************************)
on run argv
set movieName to item 1 of argv
set delaySeconds to item 2 of argv
set filePath to (path to desktop as text) & movieName
set f to a reference to file filePath
tell application "QuickTime Player"
set newMovieRecording to new movie recording
tell newMovieRecording
start
delay delaySeconds
pause
save newMovieRecording in f
stop
close newMovieRecording
end tell
end tell
end run