]> git.sesse.net Git - ffmpeg/commitdiff
Merge commit '72f801619a1ae91969fee9a7d72519422433c998'
authorMichael Niedermayer <michaelni@gmx.at>
Sun, 12 Oct 2014 20:37:33 +0000 (22:37 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 12 Oct 2014 20:39:17 +0000 (22:39 +0200)
* commit '72f801619a1ae91969fee9a7d72519422433c998':
  movenc: Adjust edit lists to trim out parts of tracks with negative pts

Conflicts:
libavformat/movenc.c

See: 66b45d8f7a1bfba1065286361ab571cb9cfd87c6
See: 14fd34d73bb0bcb227b62506fb51d63751c9b190
Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavformat/movenc.c

index 529b9d1b98f667f097d13c16ef2b31c0f26782b5,4017a56158d3cac95f57da09eac1d5c96e00d1d1..c7fc12da82b54a5deec609aff1d3b34ec6b17eb0
@@@ -2220,8 -1629,11 +2220,12 @@@ static int mov_write_edts_tag(AVIOConte
          }
          avio_wb32(pb, 0x00010000);
      } else {
-         start_ct  = -FFMIN(track->cluster[0].dts, 0); //FFMIN needed due to rounding
+         /* Avoid accidentally ending up with start_ct = -1 which has got a
+          * special meaning. Normally start_ct should end up positive or zero
+          * here, but use FFMIN in case dts is a a small positive integer
+          * rounded to 0 when represented in MOV_TIMESCALE units. */
 +        av_assert0(av_rescale_rnd(track->cluster[0].dts, MOV_TIMESCALE, track->timescale, AV_ROUND_DOWN) <= 0);
+         start_ct  = -FFMIN(track->cluster[0].dts, 0);
          duration += delay;
      }