软件更新把工程弄坏了?现在该怎么办
剪辑软件更新后工程打不开或出错?本文讲如何安全回退版本、在项目期间冻结软件版本,以及在下一次更新之前用交换文件做好保险。
如果剪辑软件更新后工程打不开或出了问题,最快且安全的解决办法是:重新安装你开始这个项目时用的版本,打开更新前最后一份工程或备份的副本,在那里继续工作。排查问题期间,不要继续在新版本中保存。很多应用会在第一次保存时升级工程文件,而升级后的文件可能无法再在旧版本中打开。
更长远的解决办法是一套规则:在项目的整个周期内冻结软件版本,在副本上测试更新,并为每个重要序列保留一份中立的交换文件。剪辑师在大多数 NLE 中都遇到过更新带来的回归问题,从崩溃、播放问题,到转录等功能在不同版本之间表现发生变化。你无法控制厂商发布什么,但你可以控制它何时触及你的剪辑。
为什么项目中途更新会出问题
一次更新同时改变三样东西,任何一样都可能让你吃亏。
- 工程格式。 新版本往往会写入更新的工程格式。一旦保存,旧版本可能就不再接受它。这是最让人措手不及的一点,因为按下保存的那一刻,损害就已经造成了。
- 媒体与特效流程。 解码器、GPU 路径、第三方插件和特效的表现都可能不同。昨天还好好的插件,今天可能在加载时崩溃,或者渲染出略有差异的画面。
- 工作流。 面板挪了位置,默认设置变了,你依赖的某个功能被重做了。什么都没坏,但你的肌肉记忆坏了。
在剧情长片或长篇纪录片中,交付前最后几周遇到其中任何一种情况,代价都很高。目标是让更新成为你主动选择的事,而不是降临在你身上的事。
回退而不丢失工作
如果你已经更新了,并且出了问题:
- 停止在新版本中保存。 如果可以,不保存直接关闭工程。
- 找到更新前的最后一个文件。 一个手动另存的版本,或者更新前的自动保存。把它复制到安全的地方。
- 重新安装上一个版本。 Adobe 的 Creative Cloud 应用可以通过高级选项安装 Premiere Pro 的早期版本。Blackmagic 在其支持页面的归档中保留了旧版 Resolve 安装程序。Final Cut Pro 通过 App Store 回退要困难一些,这正是为什么常有人建议 Final Cut 剪辑师在更新前保留一份可用应用的副本。
- 在旧版本中打开副本。 确认它能播放、渲染和导出。
- 抢救更新后完成的工作。 如果你在新版本中做了实际工作,就从新版本把该序列导出为 XML、FCPXML 或 EDL,再导入旧版本。你会丢失特效和部分属性,但剪辑决策能保留下来。
- 重新检查插件。 第三方插件可能也自动更新了。让它们的版本与工程建立时使用的版本一致。
在项目的整个周期内冻结版本
专业人士遵循的最简单规则:用哪个版本开始项目,就用哪个版本完成它。
- 在项目进行期间关闭剪辑软件及其插件的自动更新。 检查应用自身的更新设置和系统的更新设置。
- 记录软件栈。 在工程文件夹里放一份纯文本说明:应用版本、系统版本、插件版本、GPU 或 Mac 型号。一旦有变化,你就知道变了什么。
- 在项目之间更新,而不是项目期间。 把更新安排在交付后的空档。
- 系统更新也要小心。 macOS 更新对驱动和插件的影响可能和应用更新一样大。在项目用机上,同样暂缓系统更新。
- 保留安装程序。 把你正在使用的版本的安装程序和工程归档放在一起,这样多年后你仍然能重新打开它。
用交换文件做保险
最有用的习惯也最枯燥:在每个里程碑,为每个重要序列导出一份中立的时间线文件。
- FCPXML 能承载相当多的结构信息,Final Cut 和很多其他工具都能读取。
- XML(Premiere 导出的 Final Cut Pro 7 风格 XML)仍然得到广泛支持。
- EDL 古老且有限,但几乎所有工具都能读取。它是剪辑决策的最后一道防线。
- OTIO(OpenTimelineIO)是一种开放格式,支持越来越广泛,并且可以作为文本阅读。
这些文件很小、很朴素,而且不依赖版本。如果某次更新让工程无法打开,一份昨天的 XML 就能把一场灾难变成一个重新加特效的下午。把它们和备份放在一起。我们的在 Premiere、Resolve 和 Final Cut 之间迁移剪辑指南解释了每种格式能承载什么、会丢失什么。
先在副本上测试更新
当你确实想要更新时,把它当作一次正式部署来对待。
- 复制一个有代表性的工程,最好是你手头最重的那个。
- 如果可以,在第二台 Mac 或单独的用户账户上安装更新。
- 打开副本,播放最繁忙的段落,渲染,导出母版,并与之前的母版进行比较。
- 检查你依赖的每一个插件和特效。
- 只有这样之后,再更新你的主力机,而且只在项目之间进行。
这需要一个小时。它省下的是那个所有事情同时出错的一周。
cinemaOS 如何对待更新
cinemaOS 的设计让更新永远不会成为意外。更新程序位于 Settings ▸ Updates,它会检查新版本,但绝不静默安装。何时安装由你决定,所以处于交付阶段的项目可以一直停留在它开始时的构建版本上。
工程文件以 .mntm 格式保存,并支持向后兼容解码;当你想在尝试新东西之前留一份后备文件时,Save Compatibility Copy… 会在工程旁边写入一份独立的副本。撤销历史保存在工程中,检查点、版本快照和 Verified Archive 等恢复工具不受版本影响。即使没有有效的许可证,工程也能打开和保存,所以许可证校验永远不会挡在你和你的剪辑之间。
交换功能双向内置。可以从任何序列导出 FCPXML、Premiere XML、EDL、OTIO、ALE 或链接媒体的 AAF,所以上面提到的保险文件只需一个菜单项。导入支持 FCPXML、XML、EDL、OTIO、AAF、Premiere 和 Resolve 时间线,并生成 conform 报告列出未能转换的内容。直接读取 .prproj 仍属实验性,所以从 Premiere 导出 XML 依然是可靠的路径。
这些都不意味着你可以不加思考地在项目中途更新 cinemaOS。同样的冻结与测试纪律适用于每一款工具,包括我们自己的。
常见问题
用新版本保存的工程能在旧版本中打开吗?
通常不能。大多数 NLE 会在保存时升级工程格式。从新版本导出 XML、FCPXML 或 EDL,再导入旧版本,就能把剪辑带过去。
项目期间应该更新剪辑软件吗?
只在你明确需要某个修复时更新,而且要先在副本上测试。否则,就用你开始时的版本完成项目。
保留哪种交换格式最安全?
保留两种:FCPXML 或 XML 用于结构,EDL 作为最低限度的后备。如果你的工具支持,OTIO 是不错的第三选择。
下一步
今天就记下你当前的应用和插件版本,关闭自动更新,并为主序列导出一份交换文件。如果你想要一款更新程序会等你做决定、交换导出属于日常工作一部分的剪辑软件,试试 cinemaOS,60 天免费试用,无需绑定银行卡。如果更新让你的工程卡死或损坏,请先看我们的工程恢复指南。