Hi, ----- Mail original ----- > On Wed, Jul 16, 2014 at 05:40:35PM +0200, Benoit Fouet wrote: > > > > > > ----- Mail original ----- > > > Hi, > > > > > > I had a look at https://trac.ffmpeg.org/ticket/3052. > > > The issue is that the last frame duration is lost. Is there any > > > reason why the packet duration is not transmitted from the > > > demuxer > > > to the muxer? > > > Attached is a dumb patch, just to understand a bit more why > > > things > > > are done the way they are... > > > > > > > e.g., by dumb, I mean that the duration should be corrected with > > the right timebase... But I just want to get feedback on the > > forwarding part. > > pkt_duration and pkt_timebase where primarly intended for the decoder > side, they could be used for encoder too but i guess filters dont > update them currently >
I'll try to address the filter case as a separate issue anyway, so this shouldn't be an issue; at least for now. > that is: > > @@ -2063,6 +2063,10 @@ FF_ENABLE_DEPRECATION_WARNINGS > avpkt->size = 0; > else if (!(avctx->codec->capabilities & CODEC_CAP_DELAY)) > avpkt->pts = avpkt->dts = frame->pts; > + if (frame && av_codec_get_pkt_timebase(avctx).num) > + avpkt->duration = > av_rescale_q(av_frame_get_pkt_duration(frame), > + > av_codec_get_pkt_timebase(avctx), > + avctx->time_base); > > if (needs_realloc && avpkt->data) { > ret = av_buffer_realloc(&avpkt->buf, avpkt->size + > FF_INPUT_BUFFER_PADDING_SIZE); > I'll try to add the time_base in the AVFrame then, so that the information is there with the duration. I should post a patch soon to do this, and test it on the GIF issue from issue 3052 -- Ben _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel