summaryrefslogtreecommitdiff
path: root/drivers/media/usb/usbtv/usbtv.h
diff options
context:
space:
mode:
authorNikola Forró <nikola.forro@gmail.com>2015-12-20 14:57:17 +0300
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>2016-02-01 12:35:59 +0300
commit80fa4f07fd6d33500b26275a5405d5b49cf2ff6a (patch)
treeb571c1bfff785242f14d3a1f8d54c4450126a63a /drivers/media/usb/usbtv/usbtv.h
parent9f1830206d5e2c6fc85185de4d22c5188ff00232 (diff)
downloadlinux-80fa4f07fd6d33500b26275a5405d5b49cf2ff6a.tar.xz
[media] usbtv: discard redundant video fields
There are many dropped fields with some sources, leading to many redundant fields without counterparts. When this redundant field is odd, a new frame is pushed containing this odd field interleaved with whatever was left in the buffer, causing video artifacts. Do not push a new frame after processing every odd field, but do it only after those which come after an even field. Signed-off-by: Nikola Forró <nikola.forro@gmail.com> Acked-by: Lubomir Rintel <lkundrak@v3.sk> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Diffstat (limited to 'drivers/media/usb/usbtv/usbtv.h')
-rw-r--r--drivers/media/usb/usbtv/usbtv.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/usb/usbtv/usbtv.h b/drivers/media/usb/usbtv/usbtv.h
index 19cb8bf7c4e9..161b38d5cfa0 100644
--- a/drivers/media/usb/usbtv/usbtv.h
+++ b/drivers/media/usb/usbtv/usbtv.h
@@ -95,6 +95,7 @@ struct usbtv {
int width, height;
int n_chunks;
int iso_size;
+ int last_odd;
unsigned int sequence;
struct urb *isoc_urbs[USBTV_ISOC_TRANSFERS];