如何使用 SILVERSTACK 和 MEDIAVERIFY 建立 ASC MHL 工作流程

在整个电影制作过程中,所有数据传输的完整性和完全性是任何创造性合作的基础。在拍摄现场,DIT 或数据管理员的首要职责是保护和记录所有电影拍摄数据,同时管理 OCF(原始摄影机文件)和其他数据。一旦数据离开拍摄现场,到达接收单位(例如后期制作单位或样片制作单位),数据的责任就移交给后期制作单位。

不同部门通常会使用不同的硬件、软件和工作流程多次复制数据。如果在数字生产管线的某个环节出现问题,可能很难找出错误的根源,甚至无法解决。想想文件损坏或流程中某个步骤的质量控制问题。调查数据问题既费时又费力,这正是您希望避免的。

这也正是 ASC MHL 发挥作用的地方,它为在整个数字电影制作过程中建立安全的数据工作流程提供了可能。在本文中,我们将深入探讨数据安全这一主题,包括解释什么是 ASC MHL 以及如何从工作流程中获益。如果您想立即开始使用 Silverstack 和 MediaVerify 搭建基于 ASC MHL 的工作流程,可以直接跳到 “使用 ASC MHL 从片场到后期对数据进行管理” 部分。

电影制作的安全数据工作流程

“安全”是什么意思?

在使用 “确保数据安全 “这一表述时,我们实际上指的是两个重要方面: 数据完整性和完全性。完整性是指在数据管理过程中,单个文件没有被无意更改,而完全性是指接收到的数据量与发送者预期的相同。数据完整性一般通过特定哈希算法生成的哈希值来检查。如果(传输后)前一个哈希值和计算出的哈希值一致,则认为文件是一致的。在有多个子文件夹的文件夹结构中,完全性包括两个方面: 单个子文件夹(及其包含的所有文件)的完全性和整个根文件夹结构的完全性(或完整性)。[1]

媒体哈希列表(MHL)

著名的媒体哈希列表(经典 MHL)格式的诞生,是媒体行业安全数据工作流程迈向标准化的第一步。它引入了一种简单的 XML 格式,用于存储范围内每个文件的哈希值和其他信息。虽然经典 MHL 可以验证单个文件夹及其文件的完整性和完全性,但它无法确保整个(根)文件夹结构(如摄影机存储卡文件夹集合)的完全性。经典 MHL 的范围仅限于一个文件夹及其内容。因此,如果一个子文件夹(例如,一个摄影机存储卡的子文件夹)连同其经典 MHL 文件一起丢失,就没有任何信息告诉接收者还应该存在一个文件夹。我们在下面的图 1 中直观地展示了这种情况。考虑带有经典 MHL 文件的文件夹结构,如拍摄时管理的文件夹(左)和后期接收的文件夹(右)。如果没有额外的信息,就无法判断文件夹 A005R2VJ 已经丢失了。

图 1:文件夹 A005R2VJ 在传输过程中丢失,无影无踪

考虑到这些缺失的功能,以及创建一个能在整个生命周期内保护数据安全的标准这一总体目标,美国电影摄影师协会(ASC)成立了一个工作小组,以开发经典 MHL 的改进型后续产品: 这就是 ASC MHL!

ASC 媒体哈希列表

ASC MHL 由美国电影摄影师协会(ASC)的动态影像技术委员会(MITC)开发和维护。其目标是实现媒体数据管理的标准化并保留相关信息。相关配套信息存储在被称为 “ASC MHL 清单 “和清单中列出的 “链文件 “中。它们共同构成了 ASC MHL 的文件历史信息。

ASC MHL 的一个重要特点是 “世代 “的概念。每一次数据操作,如传输或验证,都会创建一个新的所谓 “世代”,它代表了 “数据管理之旅 “的一个步骤。创建新世代包括以下步骤: 

  • 创建所有文件的哈希值(例如,媒体文件)
  • 创建新的 ASC MHL 清单(例如,为每一个已存在的历史记录创建新的附加清单)
  • 更新链文件中的引用(例如,为特定世代添加新的序列号)
  • 对所有嵌套历史进行递归更新

这听起来可能很复杂,但最终可以让您了解和回溯从后期到片场的大部分数据管理活动  – 前提是监管链被保留。由于 ASC MHL 历史记录存储了所有世代的哈希值,因此可以将错误定位到特定世代,并最终定位到文件。如前所述,单个文件的哈希值不匹配就表示内容已更改。在这种情况下,文件的状态是 “失败”,而不是 “已验证”。

为了更好地理解这一点,让我们来看看下面的图示。图 2 显示了 MacOS 文件系统(左侧)和 MediaVerify 文件历史视图(右侧)的合成图。MediaVerify 从 ASC MHL 清单中提取信息,并在用户界面上显示生成的信息(蓝线)。文件 A001C001_160205_R2VJ.mov(红色方框)的验证在第三代(橙色方框)失败,这意味着文件内容在第二代和第三代之间发生了变化。

图 2:不同世代文件的成功和失败的验证结果

最重要的是,ASC MHL 还通过将 ASC MHL 历史记录与文件夹结构嵌套在一起的方式,解决了上述顶层完整性缺失的问题。这意味着可以创建额外的顶层历史记录,存储对子目录中所有子历史记录的引用,从而可以识别特定子目录中缺失的文件夹,最终解决完整性问题。

让我们再次快速浏览一下图示。图 3 显示了这种嵌套历史的一个例子: 红色箭头表示引用文件的清单。橙色箭头表示引用清单的链文件。蓝色箭头是从顶层 “根 “历史记录到最新一个世代历史记录的引用。由于文件夹结构包含两个清单,因此历史记录包含两个世代。

图 3:嵌套 ASC MHL 历史示例

使用 ASC MHL 从片场到后期对数据进行管理

ASC MHL 是一种免费开源格式。这意味着任何软件都可以实施 ASC MHL,或采用同样免费和开源的参考实施方案。您可以在任何支持该标准的软件中使用 ASC MHL。在 Pomfort 生态系统中,Silverstack Lab、Silverstack/XT 和 Offload Manager  允许您创建、验证和延续 ASC MHL 历史记录。Pomfort MediaVerify 可补充后期制作方面的工作流程,并验证之前使用 ASC MHL 管理的任何数据。那么,让我们来详细了解一下从拍摄到后期制作的工作流程!下面的图示概述了从拍摄到后期制作的典型数据管理工作流程。在接下来的章节中,我们将逐一介绍每个步骤。

图 4:从片场到后期的典型数据管理工作流程

装载

为了简单起见,我们只解释处理原始摄影机素材的流程。当然,该流程也适用于录音、报告或转码样片等其他数据。首先,您需要在 Silverstack 中启用 ASC MHL。如下图 5 所示,打开设置,在拷贝和工作选项卡中将哈希清单从 “Classic MHL “更改为 “ASC MHL”。这也会在下拉菜单旁边显示一个新的省略号图标(三个点),它将带你进入 ASC MHL 设置。如图 6 所示,在这里你可以调整创建者信息或设置自定义忽略模式。

图 6:在 ASC MHL 设置中调整创建者信息或设置自定义忽略模式

从片场到后期的典型场景包括以下基本步骤:

  1. 将多张摄影机卡装载/备份到旅行硬盘或现场 RAID 阵列上
  2. 创建拍摄日文件夹结构
  3. 转码样片
  4. 备份整个拍摄日文件夹

在某些情况下,ASC MHL 历史记录需要初始化。这可能发生在摄影机内,也可能发生在第一次装载时。如果历史记录是在卸载过程中初始化的,Silverstack 会创建第一代文件,计算每个文件的初始哈希值,并将它们标记为 “原始文件”。假设历史记录已经在拍摄过程中生成,那么装载将创建第二代文件,并将文件标记为 “已验证” – 因为装载是通过哈希值比较进行验证的。

如果您在装载向导中打开带有预先存在的 ASC MHL 历史记录的数据,Silverstack 会通过比较文件系统中的数据和历史记录中的数据来通知您历史记录的状态。这包括有关丢失、新增或忽略的文件和错误(如不完整的历史记录)的信息。Silverstack 的装载向导会通知您 ASC MHL 历史记录的任何问题(标记为黄色栏)。这在下面的图 7 中可以直观地看到。正如您所看到的,日志包含有关问题的更多信息 – 在本例中,Silverstack 检测到缺少一个素材片段。

图 7:一个问题在 Silverstack 的装载向导中被标记出来了

此外,您还可以选择特定的校验方式,并决定是继续还是从头开始创建历史记录(复选框:”启动新的 ASC MHL 历史记录”)。此外,创建历史记录时还会自动考虑级联复制等功能。

备份

在一天的拍摄过程中,数据卡会被装载,拍摄日文件夹结构会被建立,样片也会被转码。这听起来可能显而易见,但请注意,仅在转码过程中,不会创建任何 ASC MHL 历史记录,因此,样片(还不是)历史记录的一部分。要包含样片和当天创建的所有其他数据,您需要备份整个拍摄日文件夹。这将创建一个嵌套的 ASC MHL 历史记录: 所有之前存在的历史记录都将作为新一代文件继续保存,而所有新文件都将作为第一代文件包含,并标记为 “原始”。通常情况下,该备份应该是拍摄日结束时的最后一步,它代表了数据包被认为是完整的,可以被用于后期制作单位的使用。

在后期制作时的数据验证

作为后期制作主管,在将数据交给整个团队进行进一步处理之前,必须确保数据完整并经过验证。最糟糕的情况是在几周后发现文件损坏,让所有人都等着解决问题。

然而,当数据使用 ASC MHL 管理时,使用 Pomfort MediaVerify(我们的增强型免费验证软件)可以轻松完成后期验证。该软件易于使用,专门为数据验证过程定制,并提供足够的自定义功能,以适应各种数据管线。

MediaVerify 的验证过程包括两个步骤,简单明了。第一步是自动文件扫描,通过将文件夹结构与 ASC MHL 历史记录中的文件列表进行比较,识别磁盘上的实际内容与历史记录中录制内容之间的差异。这一步只识别丢失的文件或新增文件,并提供快速的首次完整性检查。该步骤可在短时间内(即几秒钟)完成,几乎可以立即反馈可能无法通过验证的明显问题。在实际验证步骤中(也会在历史记录中创建新的一个世代),MediaVerify 会为所有文件创建哈希值,并将其与 ASC MHL 清单中的哈希值进行比较。因此,所有文件也会进行完整性检查。

图 8:MediaVerify 可以快速检测文件是否丢失(红色)或新增(橙色)。

核查必须满足以下方面的要求才算成功: 

  •  ASC MHL 历史记录已完成。
  • 所有文件都可用。
  • 所有哈希值均匹配。

你可能无意中发现了第一个要点,因为我们还没有讨论过它。在某种程度上,ASC MHL 历史记录会自我监控,并通过上述列出所有 ASC MHL 清单的 “链文件 “检测是否缺少某些内容。如果出现内容缺失的情况,历史记录将被视为不完整,无法进行验证。

验证完成后,MediaVerify 会显示验证结果,并提供全面的大纲来深入评估历史记录和文件。此外,保存日志和报告文件的功能有助于记录您的工作。这些报告可以被发送到现场拍摄组,以确认数据传输是否成功。由于验证为历史记录添加了新一世代的内容,因此 “监管链 “得以延续。

图 9:MediaVerify 成功验证了数据集

展望

在本文中,我们讨论了 ASC MHL 的优势及它在监控和检查数据方面的更多可能性。在对该规范有了大致了解后,我们概述了使用 Silverstack 和 MediaVerify 进行从片场拍摄到后期制作的正确数据管理工作流程。在整个拍摄流程中,ASC MHL 可以帮助您对数据状态充满信心,因为它允许您在各部门和设备之间建立安全可靠的数据工作流程。作为一项不断发展的行业标准,ASC MHL 正被越来越多的制造商所采用(例如,RED 为特定摄影机实施了机内 ASC MHL)。此外,ASC MHL 还能提供一些有价值的功能,例如检测重命名文件(并将新文件名存储在 ASC MHL 历史记录中)或通过创建者信息包含相关联系信息,而无需额外费用。因此,如果您正在管理重要的拍摄数据,我们建议您考虑使用它。有关 ASC MHL 的更多信息和详情,请查看我们的知识库

[1] 我们假定您具备有关数据完整性和完全性主题的常规技术知识。请注意,他的文章侧重于描述传输完整且一致的数据方面的数据安全性。ASC MHL 不能取代在多个备份存储设备上使用经过验证的数据副本这种普遍使用的合理备份策略。

About the Author
Elwin 是我们媒体资产管理系列产品的产品经理。他对后期制作有着广泛的了解,加上现场拍摄经验,使他能够深入研究技术课题,并不断研发更好的媒体工作流程。