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.
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".