[SCM] libav/experimental: fix temporal offet of ipbb sequences, simplification welcome

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:36:42 UTC 2013


The following commit has been merged in the experimental branch:
commit a4397fa911b79bd04f90e1a49dab5ef15226baab
Author: Baptiste Coudurier <baptiste.coudurier at gmail.com>
Date:   Mon Feb 2 10:41:43 2009 +0000

    fix temporal offet of ipbb sequences, simplification welcome
    
    Originally committed as revision 16940 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c
index eaaece3..b615e46 100644
--- a/libavformat/mxfenc.c
+++ b/libavformat/mxfenc.c
@@ -894,9 +894,13 @@ static int mxf_write_index_table_segment(AVFormatContext *s)
             for (j = i+1; j < mxf->edit_units_count; j++) {
                 temporal_offset++;
                 if (mxf->index_entries[j].flags & 0x10) { // backward prediction
-                     // next is not b, so is reordered
-                    if (!(mxf->index_entries[i+1].flags & 0x10))
-                        temporal_offset = -temporal_offset;
+                    // next is not b, so is reordered
+                    if (!(mxf->index_entries[i+1].flags & 0x10)) {
+                        if ((mxf->index_entries[i].flags & 0x11) == 0) // i frame
+                            temporal_offset = 0;
+                        else
+                            temporal_offset = -temporal_offset;
+                    }
                     break;
                 }
             }

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list