Revision 91acf9a8 libavformat/utils.c

View differences:

libavformat/utils.c
641 641
    for(; pktl; pktl= pktl->next){
642 642
        if(pktl->pkt.stream_index != pkt->stream_index)
643 643
            continue;
644
        if(pktl->pkt.pts == pktl->pkt.dts && pktl->pkt.dts == AV_NOPTS_VALUE){
644
        if(pktl->pkt.pts == pktl->pkt.dts && pktl->pkt.dts == AV_NOPTS_VALUE
645
           && !pktl->pkt.duration){
645 646
            pktl->pkt.pts= pktl->pkt.dts= st->cur_dts;
646 647
            st->cur_dts += pkt->duration;
647 648
            pktl->pkt.duration= pkt->duration;
......
666 667
        if (den && num) {
667 668
            pkt->duration = av_rescale(1, num * (int64_t)st->time_base.den, den * (int64_t)st->time_base.num);
668 669

  
669
            if(pkt->dts == AV_NOPTS_VALUE && pkt->pts == AV_NOPTS_VALUE && st->cur_dts == 0)
670
            if(st->cur_dts == 0)
670 671
                update_initial_durations(s, st, pkt);
671 672
        }
672 673
    }

Also available in: Unified diff