Ffmpeg 将.exr序列转换为.mp4时获得暗输出

Ffmpeg 将.exr序列转换为.mp4时获得暗输出,ffmpeg,Ffmpeg,我有一个RGB颜色空间中的16位.exr图像序列。当我使用以下命令将其转换为.mp4时: ffmpeg -start_frame 1100 -i input.$04d.exr output.mp4 生成的.mp4文件非常暗。 我尝试将其导入视频合成软件(如NUKE)并应用线性lut,它看起来是正确的。如何使用ffmpeg做同样的事情?EXR解码器有一个参数来分配颜色传输特性 对于sRGB,它是 ffmpeg -apply_trc iec61966_2_1 -start_number 1100

我有一个RGB颜色空间中的16位.exr图像序列。当我使用以下命令将其转换为.mp4时:

ffmpeg -start_frame 1100 -i input.$04d.exr output.mp4
生成的.mp4文件非常暗。
我尝试将其导入视频合成软件(如NUKE)并应用线性lut,它看起来是正确的。如何使用ffmpeg做同样的事情?

EXR解码器有一个参数来分配颜色传输特性

对于sRGB,它是

ffmpeg -apply_trc iec61966_2_1 -start_number 1100 -i input%04d.exr output.mp4
其他可用值包括

 bt709                        .D.V.... BT.709
 gamma                        .D.V.... gamma
 gamma22                      .D.V.... BT.470 M
 gamma28                      .D.V.... BT.470 BG
 smpte170m                    .D.V.... SMPTE 170 M
 smpte240m                    .D.V.... SMPTE 240 M
 linear                       .D.V.... Linear
 log                          .D.V.... Log
 log_sqrt                     .D.V.... Log square root
 iec61966_2_4                 .D.V.... IEC 61966-2-4
 bt1361                       .D.V.... BT.1361
 iec61966_2_1                 .D.V.... IEC 61966-2-1
 bt2020_10bit                 .D.V.... BT.2020 - 10 bit
 bt2020_12bit                 .D.V.... BT.2020 - 12 bit
 smpte2084                    .D.V.... SMPTE ST 2084
 smpte428_1                   .D.V.... SMPTE ST 428-1

使用最新版本的ffmpeg(版本git-2020-03-24):

  • 开始帧被开始帧替换为开始帧编号
  • $04d被%04d替换
我必须添加-vcodec参数才能得到预期的结果

ffmpeg -y -apply_trc iec61966_2_1 -start_number 1 -i input.%04d.exr  -vcodec mpeg4 output.mp4

我得到了为输出文件指定的编解码器AVOption apply#u trc(要应用于EXR线性输入的颜色传输特性)#0(output.mp4)不是编码选项。太完美了,这样更好!然而,我在视频中的纯黑色区域中出现了一些瑕疵。你知道可能是什么问题吗?请尝试使用
bt709
。给我相同的结果:/ffmpeg的旧版本。旁注,每个ffmpeg文档,-start\u帧应该是-start\u编号。请参阅:是否有方法通过编程实现相同的结果?