Module: libav
Branch: master
Commit: 4418aa9cb3b2f0b83748e37d2952560cf84b3611

Author:    Ronald S. Bultje <[email protected]>
Committer: Ronald S. Bultje <[email protected]>
Date:      Mon Oct  3 08:41:51 2011 -0700

h264: correct implicit_weight for field-interlaced pictures.

---

 libavcodec/h264.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index e5d0ed8..3b550cf 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -2158,7 +2158,11 @@ static void implicit_weight_table(H264Context *h, int 
field){
     }
 
     if(field < 0){
-        cur_poc = s->current_picture_ptr->poc;
+        if (s->picture_structure == PICT_FRAME) {
+            cur_poc = s->current_picture_ptr->poc;
+        } else {
+            cur_poc = s->current_picture_ptr->field_poc[s->picture_structure - 
1];
+        }
     if(   h->ref_count[0] == 1 && h->ref_count[1] == 1 && !FRAME_MBAFF
        && h->ref_list[0][0].poc + h->ref_list[1][0].poc == 2*cur_poc){
         h->use_weight= 0;

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

Reply via email to