diff --git a/libavcodec/vorbisenc.c b/libavcodec/vorbisenc.c index 830e5d184f..10c7932322 100644 --- a/libavcodec/vorbisenc.c +++ b/libavcodec/vorbisenc.c @@ -1091,11 +1091,12 @@ static int vorbis_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, avpkt->size = put_bits_count(&pb) >> 3; avpkt->duration = ff_samples_to_time_base(avctx, avctx->frame_size); - if (frame) + if (frame) { if (frame->pts != AV_NOPTS_VALUE) avpkt->pts = ff_samples_to_time_base(avctx, frame->pts); - else + } else { avpkt->pts = venc->next_pts; + } if (avpkt->pts != AV_NOPTS_VALUE) venc->next_pts = avpkt->pts + avpkt->duration;