Got it. Added to the description. On Tue, Jun 6, 2017 at 6:51 AM, wm4 <nfx...@googlemail.com> wrote:
> On Sat, 3 Jun 2017 19:31:37 -0700 > Sasi Inguva <isasi-at-google....@ffmpeg.org> wrote: > > > > - // Offset the DTS by ctts[0] to make the PTS of the first frame 0 > > > - if (ctts_data_old && ctts_count_old > 0) { > > > - edit_list_dts_entry_end -= ctts_data_old[0].duration; > > > - av_log(mov->fc, AV_LOG_DEBUG, "Offset DTS by > ctts[%d].duration: > > %d\n", 0, ctts_data_old[0].duration); > > > + av_log(mov->fc, AV_LOG_DEBUG, "Shifting DTS by %d because of > > negative CTTS.\n", msc->dts_shift); > > > } > > > > The above lines were the cause of making the first frame PTS of videos > > starting with B-frames negative. If the videos starts with B frame, then > > the minimum composition time as computed by stts + ctts will be non-zero. > > Hence we need to shift the DTS, so that the first pts is zero. This was > the > > intention of that code-block. However it was subtracting by the wrong > > amount. > > For example, for one of the videos in the bug nonFormatted.mp4 we have > > stts: > > sample_count duration > > 960 1001 > > ctts: > > sample_count duration > > 1 3003 > > 2 0 > > 1 3003 > > .... > > > > The resulting composition times are : 3003, 1001, 2002, 6006, ... > > Hence the minimum composition time or PTS is 1001, which should be used > to > > offset DTS. However the code block was wrongly using ctts[0] which is > 3003 > > . Hence the PTS was negative. > > > > About the fate test expectations, fate-suite/h264/twofields_packet.mp4 > is a > > similar file starting with 2 Bframes. Before this change the PTS of first > > two B-frames was -6006 and -3003, and I am guessing one of them got > dropped > > when being decoded and remuxed to the framecrc before, and now it is not > > being dropped but I dont understand why. > > All of this should go into the commit message. > > Can't judge the correctness of the actual code. > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel