我有一个用于从视频创建图像序列的小程序。它非常适合用我的尼康相机拍摄的电影。它为我的佳能相机拍摄的电影创建了一堆纯绿色图像。奇怪的是,如果我使用 quicktime 手动导出图像序列,它工作正常(没有绿色图像)。只有当通过脚本运行时,quicktime 才会创建绿框(顺便说一下,所有绿框)。
下面是代码:
#set vFile to (choose file with prompt "Select a video file:")
on open of finderObjects -- "open" handler triggered by drag'n'drop launches
repeat with vFile in (finderObjects) -- in case multiple objects dropped on applet
tell application "Finder"
list folder ":Library:QuickTime:Presets"
set theList to result
set qSet to (choose from list theList)
set vBase to the name of vFile
end tell
tell application "Finder"
if (folder ((path to movies folder as string) & "TLTemp") exists) then
delete folder ((path to movies folder as string) & "TLTemp")
end if
if not (folder ((path to movies folder as string) & "TLTemp") exists) then
set TLDir to make new folder at (path to movies folder as string) with properties ¬
{name:"TLTemp"}
end if
end tell
#tell application "QuickTime Player 7" to open vFile
tell application "QuickTime Player 7"
open vFile
set settings_file to (":Library:QuickTime:Presets:" & qSet)
set TLtemp to ((path to movies folder as string) & "TLTemp:" & vBase)
with timeout of 500 seconds
export document 1 to TLtemp as image sequence using settings settings_file
end timeout
#export document 1 to TLtemp as image sequence
close document 1
end tell
set the item_list to list folder ((path to movies folder as string) & "TLTemp:") without invisibles
set pictureFile to ((path to movies folder as string) & "TLTemp:" & item 1 of item_list)
tell application "QuickTime Player 7"
activate
open image sequence pictureFile frames per second 30
set the looping of document 1 to true
play document 1
end tell
end repeat
end open