This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/media_tree.git tree:

Subject: [media] vivi: fix sequence counting
Author:  Hans Verkuil <[email protected]>
Date:    Mon Feb 10 08:08:45 2014 -0300

The sequence counting was not reset to 0 between each streaming run,
and it was increased only every other frame. This is incorrect behavior:
the confusion is with FIELD_ALTERNATE systems where each field is transmitted
separately and only when both fields have been received is the frame
sequence number increased.

Signed-off-by: Hans Verkuil <[email protected]>
Signed-off-by: Mauro Carvalho Chehab <[email protected]>

 drivers/media/platform/vivi.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

---

http://git.linuxtv.org/media_tree.git?a=commitdiff;h=f0af5e8f018daa83a0e8cfe7d406f81be82ae45d

diff --git a/drivers/media/platform/vivi.c b/drivers/media/platform/vivi.c
index 2d4e73b..eb09fe6 100644
--- a/drivers/media/platform/vivi.c
+++ b/drivers/media/platform/vivi.c
@@ -254,7 +254,7 @@ struct vivi_dev {
        struct v4l2_fract          timeperframe;
        unsigned int               width, height;
        struct vb2_queue           vb_vidq;
-       unsigned int               field_count;
+       unsigned int               seq_count;
 
        u8                         bars[9][3];
        u8                         line[MAX_WIDTH * 8] 
__attribute__((__aligned__(4)));
@@ -675,8 +675,7 @@ static void vivi_fillbuff(struct vivi_dev *dev, struct 
vivi_buffer *buf)
        dev->mv_count += 2;
 
        buf->vb.v4l2_buf.field = V4L2_FIELD_INTERLACED;
-       dev->field_count++;
-       buf->vb.v4l2_buf.sequence = dev->field_count >> 1;
+       buf->vb.v4l2_buf.sequence = dev->seq_count++;
        v4l2_get_timestamp(&buf->vb.v4l2_buf.timestamp);
 }
 
@@ -901,7 +900,9 @@ static void buffer_queue(struct vb2_buffer *vb)
 static int start_streaming(struct vb2_queue *vq, unsigned int count)
 {
        struct vivi_dev *dev = vb2_get_drv_priv(vq);
+
        dprintk(dev, 1, "%s\n", __func__);
+       dev->seq_count = 0;
        return vivi_start_generating(dev);
 }
 

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to