---
 libavdevice/v4l2.c |   11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/libavdevice/v4l2.c b/libavdevice/v4l2.c
index adb289d..7819143 100644
--- a/libavdevice/v4l2.c
+++ b/libavdevice/v4l2.c
@@ -843,9 +843,14 @@ static int v4l2_read_packet(AVFormatContext *s1, AVPacket 
*pkt)
         return res;
     }
 
-    if (frame && s->interlaced) {
-        frame->interlaced_frame = 1;
-        frame->top_field_first = s->top_field_first;
+    if (frame) {
+        if (s->interlaced) {
+            if (s->top_field_first)
+                frame->field_state = AV_FRAME_INTERLACED_TFF;
+            else
+                frame->field_state = AV_FRAME_INTERLACED_BFF;
+        } else
+            frame->field_state = AV_FRAME_PROGRESSIVE;
     }
 
     return pkt->size;
-- 
1.7.9.5

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to