交付与交换 / X4 · ALE 列

ALE 每一列的值从哪里来

SlateX 交出的 ALE 是一份制表符分隔的文本清单:文件级头部、列名一行、每条素材一行。这一份里的列并不是同一种来源——有的值是你现场抄进来的,有的是记录里本来就存着的,有的由软件拼出来,还有一类是库里记着却交不出去。缺值在这一件里只有一种长相:空着。接收时先问这一格从哪里来,再决定它能承担什么核对。

同一行里人工录入、派生标识与空格子并存;表格的外观不会替你区分它们。

先看文件级头部,不要把它当逐行字段

头部写分隔符、画面制式、声音制式、全局卷名与帧率。VIDEO_FORMAT 只有在机位分辨率被记到时才落进那一档光栅值;AUDIO_FORMAT 这一行照写、值留空,因为库里没有任何音频采样率的读数——写一个软件的常量就等于替没抄过的素材声明了声音规格。全局 FPS 是从各条记录里声明过的帧率取众数,一台都没声明就空着。全局 TAPE 只在整批素材只对应一张真实卡时写出;多张卡就交给逐行那一格,一张都没抄到就整枚省略。

这些是文件级的单值,不是逐行事实。逐行自己那一格帧率在 FPS 列,两者可以不一致。

身份列:一枚来源,四种形状

Name 是 clip 名,受 31 字符与 ASCII 两把尺;镜名没记到时它退回用这一行的场号、镜号、条号拼一枚确定的名字——同一条每次导出一样,不同条不撞。它是标识,不是文件键。

认源那几格都跟着你抄进来的那枚卡号走,只是形状各不相同:Tape 要的是整枚由 ASCII 字母与数字组成的卡号(合格才统一大写、截到 31;混进中文、空格或标点就整格空,我们不挑字拼号);Camroll 取的也是这一枚卡号,但这一格要整枚 ASCII 才交,卡名里带非拉丁字符就整格空;Reel # 的合同措辞是这一列填数字,所以卡号里只要含字母就整格留空,我们不剥掉前缀去拼一个像数字的号;Soundroll 交的是录音报告那本账上的卷号,吃同一挡闸。卡名混非拉丁时,Tape/Reel #/Camroll 这三格是一起空的——那是一枚来源丢了三格,不是三件独立的事。四格同源=你抄的那一枚,不是四路互相独立的信号。

软件自己数的显示号(机位字母加三位自增)不进这一路:它不对应任何一张物理卡,只活在 CSV 与 PDF 的人读列里。Camera 是机号,取值限在那 26 枚字母里。

时间列:两枚读数都要人抄,跨度由它们算

Start 取这条记着的时码:有入点用入点,没有就用条上那一枚。形状或范围不过关的串一律交空——这一件里不会再出现 00:00:00:00,那串零的毛病是长得合法,让接收方分不清现场真正的零点与被补出来的零点。

End 取库里那枚出点。出点有两路来源:录制链在停机那一下现采当时屏上的读数;条记录的新建页与编辑页也各有一枚「出点」格,让场记照机器屏手抄进去。两路都没走到就是空:我们不由入点加时长去推算它,那是拿算出来的号冒充摄影机屏上的原件读数。这一格空着会在收工差异表上以 TC_OUT_MISSING 露出来,判据=有入点、有 实拍时长、没出点。

这一格只认现场读到的那一下:没读到就没有这一列,而不是给你一个算出来的。

Duration 不再是场记秒表上那个秒数。这一列=起止两枚读数之间的帧精确跨度,含头也含尾,因此它与 End − Start 自洽;两枚缺任何一枚,这一格就交空——跨度是算出来的派生值,要按派生结果复核。同一把跨度在条记录界面上就是只读的 时码跨度;场记自己填的那枚 实拍时长 另走末尾那枚自定义列 SlateX Set Time,与 Duration 并排交出:预卷、打板、导演先开机都算在秒表里,所以两个数不等是现场常态,不是谁记错了;差异表用 DURATION_MISMATCH 提示看一眼,不改值。FPS 只在这一行自己声明过帧率时才有值,没声明就空;内部算术另有兜底的计数基数,那不是这台机器报过的数,不写进列里。TC Mode 只可能出现 DF 一枚,空白意味着没有丢帧声明,不等于非丢帧;只有声明过 DF 的行把 Start、End、Duration 写成分号形,文件头逐字认下那是本家的显示约定。Sound TC 逐字交,只判形状,不裁帧位。

文本与说明列:压平,再过一道闸

Description 由场次摘要、镜头描述与镜头备注里已有的非空内容用固定分隔符拼成一格;Comments 来自条备注,Camera Notes 来自机位备注,Director 来自这一条所属拍摄日的导演文本。四格同走一条路:先把会撑破行结构的换行与制表符压成空格,再过 ASCII 闸——值里夹着非拉丁字符就整格交空,逐字原文留在 CSV 与 PDF 里。

所以同一格里空着有两种可能:压根没记,或者记了却装不进这一件。差异表不会替你说清后者——它判的是记录里有没有值,那几栏只能对着你自己抄的内容核。

状态列与其他列:档位写在文件里,轨数不是声道图

Rating 交现场档位的文字(Circle、Keep、Hold、N/G 那一族,恒定英文、不随界面语言变),没落档时为空;Circled take 交 TRUE 或 FALSE,那是第二个问题,所以占第二列。Tracks 是三态记号——V 是 MOS 条,A1A2 是野轨,VA1A2 是同期声;一行没有任何声音事实时这一格留空,我们不默认成同期声。它是轨数记号,不是声道映射,也不带采样率。VFX_Type 由机位那四枚旗拼成文本,VFX_Count 这列在、但当前没有录入路径,交空。Shoot Day 写成 Day 7 这样的形状,没归属拍摄日就空着;日期在 Shoot date 自己那一列(yyyy-MM-dd),组别在 Unit。

这份 ALE 带着什么、明确不带什么

带着:源文件名与路径、卡号与声卷、声音时码、档位与圈选旗、场号条号、组别与日期、现场读到的出点(录制链现采或照屏手抄)与场记填的 实拍时长。不带:媒体本身、时码之外的镜头参数(焦段、感光度、光圈、快门、分辨率这些在 App 里有记录,但没有进 ALE 的列)、声道映射、摄影指导那两枚 ASC 栏。它也不带任何镜头与素材之间的对应关系——哪条 take 对应哪个文件,仍然是现场要登记的那件事。

排在末尾的那几列是我们自己的列名:规范里查不到它们,所以别假定任何下游会把它们读成语义字段。列名一律按文件里真正出现的字符串核对,近义列名不保证被映射成同一个字段。

FAQ

Reel # 和 Tape 能互相验证吗?

不能当成两路独立来源。它们同源于你抄进来的那枚卡号,只是各吃各的闸(整枚纯数字/整枚 ASCII 字母数字),两列相符只说明同一枚来源被写了两次。

End 是现场记录的吗?

只有现场读到并记下来才是。出点有两路:录制链在停机那一下现采屏上读数,场记也能在条记录那两页照机器屏手抄;两路都没走到就空着,由差异表以 TC_OUT_MISSING 点名;我们不由入点加时长推算它。有值时它仍是一枚需要与素材对过的读数——本家没做过任何剪辑系统的导入验收。

ALE 里的 Tracks 是声道映射吗?

不是。它是根据记录状态生成的三态轨数记号,不含每条声道对应什么声音来源、采样率或工程侧路由。

为什么接收方还要逐列核对?

因为同一文件里既有人工抄进来的值、也有软件拼出的标识,还有装了那种字符就交不出去的格子;每一栏的取值与闸法都不一样。能打开文件只说明文本可读,不说明每个字段的来源都被验证过。


上海智独教育科技有限公司 — SlateX。以上数字截至 2026-09-24。

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

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

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

support@slateprotocol.com