>
← 返回首页下面这张表是日常打包最常用的一批参数,收藏这一页就够用了。后面几节再逐条解释「为什么是这个值」以及踩过的坑。
| 项目 | 标准值 | 说明 |
|---|---|---|
| 视频分辨率 | 2K Flat:1998×1080 2K Scope:2048×858 4K Flat:3996×2160 4K Scope:4096×1716 |
DCI 标准只有这四种,不是 1920×1080 |
| 帧率 | 24 fps | DCI 影院标准;SMPTE DCP 可支持 25/30 |
| 视频编码 | JPEG 2000(J2K),逐帧无间编码 | 不能用 H.264 / H.265 |
| 视频码率 | 2K:约 35 Mbps 起 4K:100 Mbps 起 |
动态画面要加码率,最高可到 250 Mbps |
| 容器格式 | MXF | 影院服务器只认这个 |
| 音频采样率 | 48 kHz | 不能是 44.1 kHz |
| 音频位深 | 24 bit | 别用 16 bit 交付 |
| 音频声道 | 2.0 / 5.1 / 7.1 / 14(全景声 IAB) | 5.1 = L R C LFE Ls Rs |
| 音频响度 | 影院:-27 LUFS 短片广告:-22 LUFS 全景声:-23 LUFS |
按交付标准二选一,别混用 |
| 字幕格式 | Interop:PNG 位图 SMPTE:TTML / IMSC |
两种不能混装进一个 DCP |
| 色彩空间 | Rec.709(SDR) | 交付前确认客户要的是 SDR 还是 HDR |
一句话记住三个最常错的:分辨率是 1998×1080 或 2048×858(不是 1920×1080)、帧率必须是 24、响度必须对齐。这三个错一个,影院就放不出来。
素材画幅和 DCP 规格不是一回事。DCP 只有 Flat 和 Scope 两个画幅,素材却可能是 16:9、4:3、2.39:1 甚至方形,所以第一步永远是判断素材原始比例。
| 素材原始比例 | 对应 DCP 规格 | 分辨率 | 处理方式 |
|---|---|---|---|
| 2.39:1 | 2K Scope | 2048×858 | 直接铺满,不用加边 |
| 1.85:1 | 2K Flat | 1998×1080 | 直接铺满 |
| 1.78:1(16:9) | 2K Flat | 1998×1080 | 上下加黑边,别拉伸 |
| 1.33:1(4:3) | 2K Flat | 1998×1080 | 上下加黑边,或按客户要求裁切 |
| 2.39:1 高码率母版 | 4K Scope | 4096×1716 | 母版够清晰才值得做 4K |
三条原则:一不拉伸、二不加裁切、三黑边要黑得彻底。16:9 素材塞进 Flat,正确做法是上下补黑边到 1080 高,而不是把画面横向拉扁;拉伸会让圆形变椭圆,客户一眼就看出来。
另外注意 Scope 的 858 高度不是随便凑的:2.39:1 的画面在 2048 宽下对应 858 高,剩下的空间就是上下黑边,这是 DCI 规定好的,不要去动它。
DCI 规范规定影院放映帧率是 24 fps。客户素材却五花八门:25、30、50、60 都有。转 24 的时候有一个特别容易翻车的细节。
用 fps=24 滤镜转帧率,不要用 -r 24 输出参数。
-r 24 会按输出时间戳重新采样,导致时长对不上(多出的半帧、少掉的一帧);fps=24 是逐帧滤镜,时长严格保持不变。
实测过一条 120 秒的片子,用错参数转完变成 120.05 秒,影院服务器直接报「JSON 文件校验失败:文件时长不一致」。
其他几个要点:
DCP 要求 JPEG 2000 编码,跟 H.264 的区别不只是压缩算法不同,思路都不一样:H.264 是帧间编码(靠前后帧预测省码率),JPEG 2000 是逐帧独立编码。影院服务器可以随意跳播任意一帧,所以必须这样。这也是为什么 DCP 文件比同画质 MP4 大好几倍——没办法,标准就是这样的。
码率怎么给:
一个反直觉的提醒:码率给高了不占「画质」名额,DCP 不像流媒体那样卡码率,多给码率只会让文件变大、放映更稳,不会被判不合格。真正的问题是给低了。
视频参数错了顶多画面难看,音频参数错了经常是「影院直接拒收」或「放出来没声」。这里有几个真实踩过的坑:
标准 5.1 是:L(左)R(右)C(中)LFE(低频)Ls(左环绕)Rs(右环绕)。顺序错了,人声会跑到后面去。7.1 则是再加 Lrs(左后环绕)Rrs(右后环绕)。
有些打包流程不强制转码,直接把源音频丢进 DCP-o-matic,遇到 EAC3 源会出现生成出来完全没声音的情况。稳妥做法是在预处理阶段强制转一次音频格式(转成 AAC 或 AC3 都行),别赌工具的自动识别。
我们实测遇到过:用 AAC 5.1 的 MKV 做输入,DCP-o-matic 处理后 MXF 里的 PCM 只有 FL/FR 两个声道有声,FC/LFE/BL/BR 四个声道静音——直接换成 AC3 5.1 打包,六个声道全部正常。
所以做 5.1 交付时,优先用 AC3 5.1,别赌 AAC 多声道兼容性。
| 交付场景 | 目标响度 | 依据 |
|---|---|---|
| 影院通用 DCP | -27 LUFS | 影院传统标准 |
| 短片 / 映前广告 | -22 LUFS | EBU R128,比影院标准响 |
| 杜比全景声 | -23 LUFS | ATSC A/85,比影院标准稍严 |
做法是用 FFmpeg 的 loudnorm 滤镜做两遍归一化(两遍比一遍准得多),别手工在软件里拉音量。响度不对的后果是:太响影院会投诉甚至强制压低,太轻观众听不清对白。
Atmos DCP 用的是 14 声道 IAB,并且只能走 SMPTE DCP(Interop 不支持 IAB)。它的母版不是普通音频文件,而是 Dolby Atmos 渲染后的 IMF IAB,走的是 Dolby 自己那条渲染链,跟本文说的常规 5.1/7.1 打包完全是两套流程。
两种字幕方案不能混装进同一个 DCP,选错了影院可能不显示或者显示错位:
中文要注意的三件事:字体(影院机器字体库不一定全,用常见黑体)、简繁体(按客户要求,默认简体)、安全区位置(字幕别压到画面最底部或最上角,不同影院投影遮幅不一样)。一条 DCP 里可以放多语字幕,对应不同的 Subtitle_ID。
发包之前,把这张表逐条打勾,比事后返工省时间得多:
| 检查项 | 标准 | 怎么查 |
|---|---|---|
| 分辨率 | 1998×1080 或 2048×858 | ffprobe 看宽高 |
| 帧率 | 24.000 fps | ffprobe 看 r_frame_rate |
| 时长一致 | 与 CPL 声明一致,误差 < 1 帧 | ffprobe 对比 CPL |
| 音频采样率 | 48000 Hz | ffprobe 看 sample_rate |
| 音频位深 | 24 bit | ffprobe 看 bits_per_raw_sample |
| 声道数 | 与规格一致(5.1 要是真的 6 声道且都有声) | ffprobe 看 channels / 用软件监听 |
| 响度 | -27 / -22 / -23 LUFS(按场景) | ebur128 或 loudnorm 测量 |
| 黑边 | 无拉伸、上下纯黑 | 抽帧目视 |
| 字幕 | 位置安全、字体正常 | 用播放器实放一遍 |
| 包结构 | ASSETMAP / VOLINDEX / CPL 齐全 | 打包工具自带校验 |
| 报错现象 | 根本原因 | 解决办法 |
|---|---|---|
| JSON 文件校验失败:文件时长不一致 | 转帧率时用错参数导致时长漂移,或 CPL 用了素材时长 | 改用 fps=24 滤镜;CPL 用帧数 ÷ 24 算 Duration |
| 影院提示分辨率不合法 | 用了 1920×1080 这类非 DCI 分辨率 | 重新输出到 1998×1080 或 2048×858 |
| 播放中没声音 | EAC3/AC3 源没强制转码,或多声道 AAC 丢声道 | 强制转码;5.1 优先用 AC3 |
| 播放到一半卡住 | 采样率识别成 44.1kHz,或码率超出服务器解码能力 | 强制 48kHz;2K 别超 100 Mbps 以上 |
| 字幕不显示 | Interop / SMPTE 混装,或字体缺失 | 统一方案;换通用字体 |
| 画面比例不对 | 黑边位置错误或画面被拉伸 | 按素材比例选规格,保持等比填充 |
客户需求:30 秒映前广告,16:9 素材,横版,投本地影院。
DCP 打包看着是「把视频变成另一种格式」,实际上核心是把一整套影院规范翻译成一组具体参数。参数对齐了,剩下的就是工具操作;参数没对齐,工具再好也白搭。
把这张表存下来,下次接活的时候照着填,能省掉大半的返工时间。
有 DCP 打包的具体问题,或者需要现场帮忙看素材规格,微信咨询:okdcp789