【FFmpeg如何判断HDR视频,SDR视频】

时间:2025-02-08 21:41:44

1. hdr视频判断规则

判断的方法:

ffprobe -v error -select_streams v -show_streams 'input.mp4' | grep -E "color_primaries|color_transfer" 

hdr视频满足下面两个条件

1. color_primaries=bt2020
2. color_transfer=arib-std-b67 或者 color_transfer=smpte2084

2. 前几帧是sdr、后面的帧是hdr视频(sdr和hdr混合视频)的检测方法

ffmpeg -hide_banner -i  'i.mp4' -vf showinfo -frames:v 25 -f null /dev/null  2>&1
  • 此命令会打印每帧的color_primaries(色域)和color_trc(传输函数)信息。

hdr的帧需满足下面两个条件

1. color_primaries=bt2020
2. color_trc=arib-std-b67 或者 color_trc=smpte2084

如果存在hdr帧和非hdr帧则为sdr和hdr混合的视频