V4L/DVB (5973): ivtv: attach yuv field order to each frame
authorIan Armstrong <ian@iarmst.demon.co.uk>
Fri, 3 Aug 2007 13:01:39 +0000 (10:01 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Wed, 10 Oct 2007 01:04:29 +0000 (22:04 -0300)
commitbfd7beacff2b5c811badb587a74c3dfbf7f98721
tree47628dfa13bc221e2a5466934830ca54a6f46bc0
parent943e8910db31e36d945f2bf7d4c273ca5fa01f6e
V4L/DVB (5973): ivtv: attach yuv field order to each frame

In the current driver, the field order is global. As soon as it's changed it
takes immediate effect. This is a problem when the video changes order mid
stream. Although it mostly works okay, the video may judder / flicker.

This patch attaches the field order to the frame, so that any buffered frames
will not be displayed until the correct field. In the event that the field
order is changed mid stream, the driver will ensure that the previous frame
is displayed for a minimum of 3 fields. These are the two original fields the
frame should have occupied, plus the one extra since the new frame still has
to wait for the correct field.

Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/video/ivtv/ivtv-driver.h
drivers/media/video/ivtv/ivtv-irq.c
drivers/media/video/ivtv/ivtv-yuv.c