GNOME Bugzilla – Bug 726270
Deinterlacing does not work on v4l2src supplied buffers
Last modified: 2014-08-25 08:08:45 UTC
gstreamer-vaapi does not copy over the buffer flags when copying to VA-API memory, which means that interlaced buffers in interlace-mode=mixed form from elements that supplied their own buffer pool are mistakenly flagged as progressive. I'll attach a patch that fixes this.
Created attachment 271779 [details] [review] [PATCH] base: Copy buffer flags when copying a buffer When we copy a buffer because we're moving it into VA-API memory, we need to copy flags. Otherwise, interlaced YUV buffers from a capture source (e.g. V4L2) don't get flagged as interlaced. Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk> --- gst/vaapi/gstvaapipluginbase.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Review of attachment 271779 [details] [review]: Sorry for missing this one. OK.
commit 406aa37373e2b9917714eccd2834a45d18b61fd1 Author: Simon Farnsworth <simon.farnsworth@onelan.co.uk> Date: Thu Mar 13 18:38:33 2014 +0000 vaapipostproc: fix deinterlacing from non VA memory buffers. When we copy a buffer because we're moving it into VA-API memory, we need to copy flags. Otherwise, interlaced YUV buffers from a capture source (e.g. V4L2) don't get flagged as interlaced. https://bugzilla.gnome.org/show_bug.cgi?id=726270 Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk> [reversed order of gst_buffer_copy_into() flags to match <1.0 code] Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>