You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用FFmpeg将ACEScg色彩空间的EXR序列直接转成H.264视频?

直接用FFmpeg转换ACEScg色彩空间的EXR序列到H.264

FFmpeg 4.4及以上版本已原生支持OCIO色彩管理,可以直接完成ACEScg EXR序列到H.264的转换,无需中间转码步骤。以下是具体实现方案:

基础转换命令(转为Rec.709 SDR)

ffmpeg -framerate 24 -i input_%04d.exr -colorspace aces -color_trc linear -color_primaries aces -vf "colorspace=all=bt709:format=yuv420p" -c:v libx264 -crf 18 -preset medium output.mp4

参数解释

  • -framerate 24:匹配你的EXR序列帧率,按需调整(如25、30)
  • -i input_%04d.exr:输入序列的文件名模板,%04d代表4位数字序号(根据实际命名规则修改)
  • -colorspace aces -color_trc linear -color_primaries aces:告知FFmpeg输入为ACEScg色彩空间(线性传递函数+ACES原色)
  • -vf "colorspace=all=bt709:format=yuv420p":通过滤镜直接将ACEScg转换为Rec.709色彩空间,同时输出H.264兼容的YUV420p像素格式
  • -c:v libx264:指定使用H.264编码器
  • -crf 18:控制输出质量,18-23为常用区间(值越小质量越高,文件越大)
  • -preset medium:平衡编码速度与压缩效率,可选fast(更快)或slower(更小文件)

自定义OCIO配置文件的情况

如果你的序列使用项目自定义的OCIO配置,通过-ocio参数指定配置文件路径即可:

ffmpeg -framerate 24 -i input_%04d.exr -ocio ./path/to/your/config.ocio -vf "colorspace=all=bt709:format=yuv420p" -c:v libx264 -crf 18 -preset medium output.mp4

输出HDR H.264(HLG标准)

若需保留高动态范围信息,可转为HLG标准的H.264视频:

ffmpeg -framerate 24 -i input_%04d.exr -colorspace aces -color_trc linear -color_primaries aces -vf "colorspace=all=bt2020nc:trc=hlg:format=yuv420p10le" -c:v libx264 -crf 18 -preset medium -x264-params "colorprim=bt2020:transfer=hlg:colormatrix=bt2020nc" output_hdr.mp4

关键注意点

  • 必须使用FFmpeg 4.4或更新版本,旧版本缺乏完整的OCIO色彩转换支持
  • 运行前确认FFmpeg编译时已启用--enable-openh264或--enable-libx264(大部分预编译包默认包含)

内容的提问来源于stack exchange,提问作者Michael B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 12:28:20