接收与验收 / R2 · 交付

拿到 ALE,先核对这些字段

先给答案:ALE 现在交出 28 列,按固定次序排;接收端照着列名行逐格核对。 收工之后的对账,才是一天真正的成本:纸上的条号要重新敲进一张表,末尾还得替明天读它的人理一遍;条号跳一格、时码差一帧,退回重对就落在第二天下午。SlateX 把这一件交成数据行——按机位逐行生成,四台机位四行,一条机位都没记仍出一行;没记到的那格空着,不补一枚看起来合法的数。这篇只按一条标准写:交出去的东西,别人能自己查出对不上在哪。文件头那行声明逐字写着这些约定是谁定的,请把它当边界读,不要当合格证明。

文件能打开只证明语法可读。格式合法,不等于事实正确。

列名与次序:28 列,按文件里实际出现的字符串核对

列位是我们与接收端之间的契约,改任何一列都要同时改数据行,两边不同步就是整份错位。当前交出的 28 列,次序是:Name、Tracks、Start、End、Duration、Scene、Take、Reel #、Soundroll、FPS、SlateX Description、SlateX Comments、Tape、Camera、Camera Notes、VFX_Count、VFX_Type、Director、Sound TC、Source File Name、Source File、Camroll、Shoot date、Unit、Rating、Circled take、TC Mode、SlateX Set Time。最后那一枚是本家的自定义列,装的是场记在条记录上自己填的那枚 “实拍时长”——它与 Duration 不是同一把尺;Duration 那枚跨度在界面上就是只读的 “时码跨度”,时间那一节说清两者怎么并排交。接收方按这些字面核对,不要假定下游会把近义列名自动映射成同一个字段。SlateX Description 与 SlateX Comments 带着产品名前缀,是因为那两格填的是我们自己写的内容,不该冒充别人的标准列语义。

一行是谁:卡号、原样、软件自己数的号是三件事

Tape 交的是现场抄进来的那枚卡号,条件是整枚都由 ASCII 字母与数字组成:合格才统一大写、截到 31 字符;混进别的字符(中文、空格、连字符都算)就整格空着——我们不从卡名里挑字拼出一枚你没写过的号。统一大小写有理由:同一张卡的大小写一分裂,在下游就变成三张,批捕、重捕、剪辑表全线对不上。Camroll 交的也是这一枚卡号,但这一格要整枚 ASCII 才交——卡名里带非拉丁字符时这一格是空的,那一串原话只活在 CSV 与 PDF 里。Reel # 的合同措辞是这一列填数字,所以卡号里只要含字母就整格留空;我们不剥掉前缀去拼一个像数字的号。

还有一枚外观也像编号的东西:软件自己数的显示号,机位字母加三位自增。它与抄进去的卡号在 CSV 里并列成 Reel 与 Camera Card 两栏,分开写就是为了让读者看出哪个是抄来的、哪个是软件排的。派生号不对应任何一张物理卡,因此不能用来找回原素材。

Name 受同样两把尺:31 字符与 ASCII。它取这一行那台机位的“卷号+片段号”拼名;只有这一条一个机位行都没有时,才改用这一条自己已有的名字:镜名记了就用镜名,没记就用场号,场号也没有就用镜号,后面再缀上条号拼一枚确定名——同一行每次交出得到同一枚名字,但它不保证不同行之间不重名:条号是手填的,认身份要按场号、镜号、条号(多机位再带机位)逐项核。它是生成出来的标识,不是你在现场写在纸上的那个名字。

时间位置:入点与出点都只认现场读到的那一次

Start 取这一条记着的那一枚入点时码,没有第二列可回落。End 取库里的出点。出点有两路来源:录制链在停机那一下现采当时屏上的读数;条记录的新建与编辑两页也各有一枚“出点”格,供场记照机器屏手抄。两路都没走到就是空——我们不由入点加时长把它推算出来,那是拿算出来的号冒充摄影机屏上的原件读数。CSV 的出点格同一个来源、同一把尺。空着的那一格会在收工差异表上以 TC_OUT_MISSING 露出来(判据=有入点、没出点),要人回摄影报告或回到机器屏前补抄。

Duration 不是场记报的那个秒数。这一列=起止两枚读数之间的帧精确跨度,不含尾帧,所以它等于 End − Start;两枚里缺任何一枚,这一格就交空。场记自己填的那枚 “实拍时长”——拍这一条实际演了多久,预卷、打板、导演先开机都算在里面——另走末尾的 SlateX Set Time,与 Duration 并排交出去。两个数对不上不是错,是现场常态:它们量的本来就不是同一段时间。差异表把这种情况用 DURATION_MISMATCH 标出来,只请人看一眼,不改任何一格的值。FPS 只在这一行自己带帧率声明时才有值,没声明就没有数;这一列不会出现这台机器没有报过的帧率。

分号只跟着声明走。TC Mode 这一列只可能出现 DF 一枚,空白意味着没有丢帧声明,不等于非丢帧。只有声明了 DF 的行,Start、End、Duration 写成分号形。这是 SlateX 自己的显示约定,文件头逐字这么写着,它不是任何标准的要求,所以别把分号当成“这一行是丢帧”的通用暗号。声音时码逐字交,只判形状,不裁帧位。

这一份 ALE 里,缺值只有一种长相:空着

时码没记到、字符串形状或范围不过关的格子,都交空串。这份文件里不会再出现 00:00:00:00。那串零的毛病不是错,是长得合法:它让接收方没法区分现场真正的零点与被补出来的零点,所以这条路整个撤掉了。缺值就是空;而空要分清两件事——是没记到,还是记着的不是 ASCII。自由文本那几栏正是后一种落脚的地方。

Source File Name 与 Source File 两栏在列里,值要么由现场抄进来,要么在从文件导入素材那一趟由软件自动落进同一格(那一格已有手抄值时不覆盖);两条都没走到就是空,我们不猜路径。VFX_Count 同样是列在、但没有手填格:只有随包演示项目带进来的值,现场新建的条为空。Soundroll 交录音报告那本账上的卷号,走的是 Tape 那一档闸:整枚都由 ASCII 字母与数字组成才交,缺就空,不拿软件自己数的号顶上。整份 ALE 只吃 ASCII,但那是两档判据,不是一把尺。给人读的自由文本——描述、条备注、机位备注、导演、组别——先把只换了字形的那批排版符无损折成 ASCII(重音、弯引号、破折号、全角标点都折,落笔前的换行与制表符压成空格),折完仍是非拉丁字符才整格交空。认源的索引格——卡号、场号、文件名、路径——永不参与折形:那一格要的是你抄进去的原物,非 ASCII 就交空。所以一条中文备注在这一件里是一格空白,而一条带重音的德文备注折得出去;两样的逐字原文都留在 CSV 与 PDF。

这一行是什么状态,文件里写着

Rating 交现场档位文本——Circle、Keep、Hold、N/G 那一族,一条没落档时这一格为空;Circled take 交 TRUE 或 FALSE。接收方因此能从 ALE 本身读出某条被标成了哪一档、有没有被圈选,不必回头问场记。

Tracks 是四形,而不是“非 MOS 即同期声”:V 是 MOS 条,A1A2 是野轨,VA1A2 是同期声;一行没有任何声音事实时这一格留空,我们不默认成同期声;字面逐字连写,不存在带空格的 V A1 A2。

收工差异表是什么、不是什么

单日导出可以随件带一张 Reconcile_*.csv。这张表只判我方这一页:缺了什么、自己跟自己撞了什么。十四枚代号各说一件事——CARD_MISSING、SOURCE_MISSING、SOURCE_DUP、SOUND_ROLL_MISSING、SOUND_TC_MISSING、MOS_VS_SOUND、MOS_VS_WILD、TC_MODE_UNDECLARED、TC_SOURCE_UNDECLARED、TC_EPOCH_MIXED、DURATION_MISMATCH、TC_IN_MISSING、TC_OUT_MISSING、DAY_MISSING。其中 SOURCE_DUP、MOS_VS_SOUND、MOS_VS_WILD、DURATION_MISMATCH、TC_EPOCH_MIXED 把整行抬到“冲突”,其余落在“缺失”,两者都没有才写“一致”。DURATION_MISMATCH 比的是 “实拍时长” 与 “时码跨度” 这两把尺不等,不判谁记错了。表只标记,不动任何一行的值,也不拿谁的数去覆盖谁。

表上那句“一致”只有一个读法:我方这套判据没发现问题。它不表示两个部门确认过一致。

它的边界要说死:这张表不读摄影报告,也不读录音报告。表头有“摄影报告卡号”与“录音卷号”两列,那两格的值来自你抄进我们软件的那条记录,不是两个部门的原始报告。DAY_MISSING 说的是这条记录当下不归属任何拍摄日:条没有丢,在整项包里照旧交出,只是日号、日期、组别、导演那四格没有值,靠这一枚露出来。代价是当天那份收工件补不出来,不是数据没了。有一件缺它不会点名:因为文字不是 ASCII 而被清空的格子——记录里记着值,所以没有代号会亮起,那几栏只能对着你自己抄的内容核。

接收方应按自己的导入模板核对

上面是一份核对清单,不是行业标准,也不预测任何接收系统会怎样解释每一列。它的目的只有一个:把可检查的地方摆出来,让接收方知道哪里需要回源。交出去之前,接收方应先按自己的导入模板把记录逐项核一遍——检查权在读者手里。

核对不过时,三种处置不要混在一起

退回。身份或时间字段与素材、现场记录冲突,而原始记录可追溯时,退回生成方改源重出——接收端就不留一个手工改过、又没有来源说明的版本。

手工补。只在缺口小、来源明确、每一处修改都能指回具体素材或记录时补,并把依据留在旁边。不要用猜测去填一个空格,也不要给空着的 End 造一个数。

只当参考。出处确认不了,或者下游怎么处理这份文件你还没有验证过,就把它限定在参考用途,不让它承担需要精确匹配的决定。

FAQ

00:00:00:00 能不能当成真实零点?

不会再见到那串零。缺值都交空串:格子空着先按没记到读——只有自由文本那几栏例外,值是记着的,只因不是 ASCII 而交不出去,原文在 CSV 里。

同一条为什么有多行?

ALE 按机位逐行生成。同一个 Scene 与 Take 挂了四台机位就是四行,按 Camera 分开核对,别拿总行数当条数。一条机位信息都没记时仍然出一行。

能拿 End 去对片吗?

先看它有没有值。出点记的是现场那一下读到的值:录制链停机时机器现采,场记也能照屏手抄;读到才有值,两路都没走到就是空,也不由入点加时长推算。就算有值,它仍是一枚需要与素材对过的读数,请按你们自己的导入模板核对实际文件;这篇不写“导入即可对位”那一类承诺。

分号时码就是丢帧的通用记号吗?

不是。只有 TC Mode 写着 DF 的行才用分号形,那是 SlateX 自己的显示约定。空白意味着没有丢帧声明,不等于非丢帧。

表上写“一致”,是不是两边部门对上了?

不是。这张表只读我们自己那一页,“一致”就是我方这套判据没发现问题。摄影报告与录音报告不在它的读取范围里。


上海智独教育科技有限公司 — SlateX

网站备案号:沪ICP备2026001245号-1 App 备案号:沪ICP备2026001245号-3A

上海智独教育科技有限公司

上海市嘉定区澄浏公路52号39幢2楼J

support@slateprotocol.com