From 930dc23c7c9a9221aad19ebf468c3838f86427b3 Mon Sep 17 00:00:00 2001 From: Zebediah Figura Date: Mon, 22 Jun 2020 17:56:03 -0500 Subject: [PATCH] winegstreamer: Prefer YUV formats to RGB ones. Signed-off-by: Zebediah Figura Signed-off-by: Alexandre Julliard --- dlls/winegstreamer/gstdemux.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c index 75ddb3082e6..11ca8f90bb0 100644 --- a/dlls/winegstreamer/gstdemux.c +++ b/dlls/winegstreamer/gstdemux.c @@ -1677,17 +1677,19 @@ static HRESULT gstdecoder_source_get_media_type(struct gstdemux_source *pin, { static const GstVideoFormat video_formats[] = { - /* Roughly ordered by preference from videoflip. */ + /* Try to prefer YUV formats over RGB ones. Most decoders output in the + * YUV color space, and it's generally much less expensive for + * videoconvert to do YUV -> YUV transformations. */ GST_VIDEO_FORMAT_AYUV, - GST_VIDEO_FORMAT_BGRA, - GST_VIDEO_FORMAT_BGRx, - GST_VIDEO_FORMAT_BGR, GST_VIDEO_FORMAT_I420, GST_VIDEO_FORMAT_YV12, GST_VIDEO_FORMAT_YUY2, GST_VIDEO_FORMAT_UYVY, GST_VIDEO_FORMAT_YVYU, GST_VIDEO_FORMAT_NV12, + GST_VIDEO_FORMAT_BGRA, + GST_VIDEO_FORMAT_BGRx, + GST_VIDEO_FORMAT_BGR, }; if (!index)