diff --git a/gst/colorspace/colorspace.c b/gst/colorspace/colorspace.c index b949fe28f3..d98ad20d7b 100644 --- a/gst/colorspace/colorspace.c +++ b/gst/colorspace/colorspace.c @@ -588,7 +588,8 @@ getline_Y41B (ColorspaceConvert * convert, guint8 * dest, const guint8 * src, { cogorc_getline_YUV9 (dest, FRAME_GET_LINE (src, 0, j), - FRAME_GET_LINE (src, 1, j), FRAME_GET_LINE (src, 2, j), convert->width); + FRAME_GET_LINE (src, 1, j), FRAME_GET_LINE (src, 2, j), + convert->width / 2); } static void @@ -1053,7 +1054,7 @@ getline_YUV9 (ColorspaceConvert * convert, guint8 * dest, const guint8 * src, cogorc_getline_YUV9 (dest, FRAME_GET_LINE (src, 0, j), FRAME_GET_LINE (src, 1, j >> 2), - FRAME_GET_LINE (src, 2, j >> 2), convert->width); + FRAME_GET_LINE (src, 2, j >> 2), convert->width / 2); } static void diff --git a/gst/colorspace/gstcolorspace.c b/gst/colorspace/gstcolorspace.c index 350b6c23ea..84c9af956d 100644 --- a/gst/colorspace/gstcolorspace.c +++ b/gst/colorspace/gstcolorspace.c @@ -49,7 +49,7 @@ GST_DEBUG_CATEGORY (colorspace_performance); #define CSP_VIDEO_CAPS \ "video/x-raw-yuv, width = "GST_VIDEO_SIZE_RANGE" , " \ "height="GST_VIDEO_SIZE_RANGE",framerate="GST_VIDEO_FPS_RANGE"," \ - "format= (fourcc) { I420 , NV12 , NV21 , YV12 , YUY2 , Y42B , Y444 , YUV9 , YVU9 , Y41B , Y800 , Y8 , GREY , Y16 , UYVY , YVYU , IYU1 , v308 , AYUV, v210, A420, AY64 } ;" \ + "format= (fourcc) { I420 , NV12 , NV21 , YV12 , YUY2 , Y42B , Y444 , YUV9 , YVU9 , Y41B , Y800 , Y8 , GREY , Y16 , UYVY , YVYU , IYU1 , v308 , AYUV, v210, v216, A420, AY64 } ;" \ GST_VIDEO_CAPS_RGB";" \ GST_VIDEO_CAPS_BGR";" \ GST_VIDEO_CAPS_RGBx";" \ diff --git a/gst/colorspace/gstcolorspaceorc.orc b/gst/colorspace/gstcolorspaceorc.orc index 263992dd4e..086990e15e 100644 --- a/gst/colorspace/gstcolorspaceorc.orc +++ b/gst/colorspace/gstcolorspaceorc.orc @@ -1384,7 +1384,8 @@ x2 mergewl ayuv, ayay, uvuv .temp 4 ayay .temp 4 uvuv -x2 splitwb yy, uv, uyvy +x2 splitwb uv, yy, uyvy +swapw uv, uv x2 mergebw ayay, c255, yy mergewl uvuv, uv, uv x2 mergewl ayuv, ayay, uvuv