From bc7d2006e3e1b30499ee5f8c1dd4d950bcb4c348 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Mon, 17 Sep 2012 12:24:30 +0200 Subject: [PATCH] Fix chroma stride for I420 stride/crop conversion --- sys/androidmedia/gstamcvideodec.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/androidmedia/gstamcvideodec.c b/sys/androidmedia/gstamcvideodec.c index 03bf6a2e58..8f58260469 100644 --- a/sys/androidmedia/gstamcvideodec.c +++ b/sys/androidmedia/gstamcvideodec.c @@ -712,12 +712,17 @@ gst_amc_video_dec_fill_buffer (GstAmcVideoDec * self, gint idx, /* Same video format */ if (buffer_info->size == GST_BUFFER_SIZE (outbuf)) { + GST_DEBUG_OBJECT (self, "Buffer sizes equal, doing fast copy"); memcpy (GST_BUFFER_DATA (outbuf), buf->data + buffer_info->offset, buffer_info->size); ret = TRUE; goto done; } + GST_DEBUG_OBJECT (self, + "Sizes not equal (%d vs %d), doing slow line-by-line copying", + buffer_info->size, GST_BUFFER_SIZE (outbuf)); + /* Different video format, try to convert */ switch (self->color_format) { case COLOR_FormatYUV420Planar:{ @@ -736,7 +741,6 @@ gst_amc_video_dec_fill_buffer (GstAmcVideoDec * self, gint idx, dest_stride = GST_VIDEO_INFO_COMP_STRIDE (info, i); } else { src_stride = self->stride / 2; - src_stride = GST_ROUND_UP_16 (src_stride); dest_stride = GST_VIDEO_INFO_COMP_STRIDE (info, i); }