From 629cac4cadf7ed600c1abb67eb78e4c9f477c487 Mon Sep 17 00:00:00 2001 From: David Schleef Date: Wed, 23 Mar 2011 23:10:51 -0700 Subject: [PATCH] video: Fix height calculation for YUV9/YVU9 --- gst-libs/gst/video/video.c | 4 ++-- tests/check/libs/video.c | 8 -------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/gst-libs/gst/video/video.c b/gst-libs/gst/video/video.c index fd265a13e6..efb2e9f051 100644 --- a/gst-libs/gst/video/video.c +++ b/gst-libs/gst/video/video.c @@ -1926,9 +1926,9 @@ gst_video_format_get_component_offset (GstVideoFormat format, if (component == 0) return 0; if (component == 1) - return GST_ROUND_UP_4 (width) * GST_ROUND_UP_2 (height); + return GST_ROUND_UP_4 (width) * height; if (component == 2) { - return GST_ROUND_UP_4 (width) * GST_ROUND_UP_2 (height) + + return GST_ROUND_UP_4 (width) * height + GST_ROUND_UP_4 (GST_ROUND_UP_4 (width) / 4) * (GST_ROUND_UP_4 (height) / 4); } diff --git a/tests/check/libs/video.c b/tests/check/libs/video.c index 34d28e049a..dc5ef88546 100644 --- a/tests/check/libs/video.c +++ b/tests/check/libs/video.c @@ -424,14 +424,6 @@ GST_START_TEST (test_video_formats) off1 = gst_video_format_get_component_offset (fmt, 1, w, h); off2 = gst_video_format_get_component_offset (fmt, 2, w, h); - /* FIXME: for YUV9/YVU9 old videotestsrc code disagrees with new code - * - figure out which is right */ - if (fmt == GST_VIDEO_FORMAT_YUV9 || fmt == GST_VIDEO_FORMAT_YVU9) { - if (w == 1 && h == 1) - GST_ERROR ("FIXME: fix GST_VIDEO_FORMAT_YUV9/YVU9 size checks"); - goto skip_check; - } - fail_unless_equals_int (size, (unsigned long) paintinfo.endptr); fail_unless_equals_int (off0, (unsigned long) paintinfo.yp); fail_unless_equals_int (off1, (unsigned long) paintinfo.up);