[FFmpeg-devel] [PATCH 2/2] fftools/ffprobe: 240M matrix is not the same as BT.601
Marton Balint
cus at passwd.hu
Sun Jun 6 11:28:19 EEST 2021
On Sun, 6 Jun 2021, Valerii Zapodovnikov wrote:
> I am sorry, what? It converts to 420 always? Wow? But you are right.
Yes, because ffplay uses the default SDL renderer (may it be
opengl/directx or anything else), and ffplay queries the hardware
acccelerated pixel formats supported by that renderer (which usually is
YUV420 and RGB, and SDL has a very limited list of pixel formats in
the first place). -loglevel verbose shows you the texture format ffplay is
using.
> is a problem that colors are wrong after YUV444 - > YUV420 -> RGB. It
> selects BT.709 matrix even if BT.601 matrix is requested,
YUV444 -> YUV420 happens in swscale. YUV420 -> RGB happens in SDL using
hardware acceleration. If swscale passes the orignial color matrix info
properly to the YUV420 frame, then I am not sure where the bug can be,
because ffplay directly checks AVFrame->color_range for setting the SDL
conversion mode.
Regards,
Marton
> this can be fixed
> by "ffplay -vf scale=in_color_matrix=auto,format=gbrp" or just by using
> mpv. Maybe I need to further test VUI vs -movflags +write_colr vs what my
> samples use.
More information about the ffmpeg-devel
mailing list