[FFmpeg-devel] [PATCH 3/3] lavc/encode: combine setting no-delay pts for video/audio
Anton Khirnov
anton at khirnov.net
Wed Sep 28 12:32:13 EEST 2022
---
libavcodec/encode.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/libavcodec/encode.c b/libavcodec/encode.c
index fb3ab0db3c..a1bc10fa3a 100644
--- a/libavcodec/encode.c
+++ b/libavcodec/encode.c
@@ -209,13 +209,13 @@ int ff_encode_encode_cb(AVCodecContext *avctx, AVPacket *avpkt,
av_assert0(avpkt->buf);
}
- if (avctx->codec->type == AVMEDIA_TYPE_VIDEO &&
- !(avctx->codec->capabilities & AV_CODEC_CAP_DELAY))
- avpkt->pts = frame->pts;
+ // set the timestamps for the simple no-delay case
+ // encoders with delay have to set the timestamps themselves
if (!(avctx->codec->capabilities & AV_CODEC_CAP_DELAY)) {
+ if (avpkt->pts == AV_NOPTS_VALUE)
+ avpkt->pts = frame->pts;
+
if (avctx->codec->type == AVMEDIA_TYPE_AUDIO) {
- if (avpkt->pts == AV_NOPTS_VALUE)
- avpkt->pts = frame->pts;
if (!avpkt->duration)
avpkt->duration = ff_samples_to_time_base(avctx,
frame->nb_samples);
--
2.35.1
More information about the ffmpeg-devel
mailing list