You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AppleScript批量转MTS为1080P MOV报错:无法将文件转为«class fsrf»

解决QuickTime Player AppleScript批量导出MTS到1080p MOV的错误问题

你遇到的错误提示里的«class fsrf»是QuickTime内部的“文件引用”类型,报错说明脚本里的文件路径处理逻辑出了问题——要么是源MTS文件没被QuickTime正确识别,要么是输出路径格式不对,导致QuickTime无法生成有效的目标文件引用。

我帮你写了一个修正后的完整脚本,同时拆解关键细节帮你理解问题所在:

-- 让用户选择源文件夹(存放MTS文件的目录)
set sourceFolder to choose folder with prompt "请选择包含MTS文件的文件夹"
-- 让用户选择输出文件夹(保存导出MOV的目录)
set outputFolder to choose folder with prompt "请选择保存导出MOV文件的文件夹"

-- 从源文件夹筛选所有MTS文件(不区分大小写)
tell application "Finder"
    set mtsFiles to every file of sourceFolder whose name extension is in {"mts", "MTS"}
end tell

-- 遍历每个MTS文件执行导出
repeat with aFile in mtsFiles
    -- 获取不带扩展名的文件名,用于生成输出文件名
    tell application "Finder" to set baseName to text 1 thru -5 of (name of aFile)
    -- 拼接输出文件的完整路径,再转为AppleScript的file对象(关键!)
    set outputFilePath to (outputFolder as text) & baseName & ".mov"
    set outputFile to file outputFilePath
    
    -- 调用QuickTime完成导出
    tell application "QuickTime Player"
        activate
        -- 打开源MTS文件(必须先打开才能导出)
        set theMovie to open aFile
        -- 使用QuickTime内置的1080p预设导出,避免手动配置编码
        export theMovie to outputFile using settings preset "1080p"
        -- 关闭原文件,不保存(因为已经导出了目标文件)
        close theMovie saving no
    end tell
end repeat

-- 导出完成提示
display dialog "批量导出已完成!" buttons {"确定"} default button 1

关键修正点(对应你原脚本的问题):

  • 用文件对象而非字符串路径:QuickTime的export命令需要接收AppleScript原生的file对象,而非纯文本路径。原脚本可能直接传了字符串路径,导致QuickTime无法解析为有效的文件引用(也就是报错里的«class fsrf»)。
  • 通过Finder获取源文件:用Finder筛选MTS文件,能确保拿到正确的文件对象,避免路径拼写错误。
  • 使用内置预设:直接用"1080p"预设,不用手动设置分辨率、编码等参数,既简化脚本也避免配置错误。
  • 明确的文件生命周期:打开文件→导出→关闭不保存,避免QuickTime残留大量窗口或进程。

额外调试建议:

  1. 先测试单个文件的导出逻辑,确认路径和权限没问题
  2. 确保输出文件夹有写入权限(比如不要选系统只读目录)
  3. 如果部分MTS文件导出失败,可能是编码特殊导致QuickTime无法直接处理,这种情况可以先手动用QuickTime打开测试是否能正常播放/导出

内容的提问来源于stack exchange,提问作者JSV

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 09:11:17