diff mbox series

[FFmpeg-devel,02/11] avcodec/encode: Apply intra_only_flag for receive_packet-API, too

Message ID DB6PR0101MB22143A16F962CE22972C40BA8F739@DB6PR0101MB2214.eurprd01.prod.exchangelabs.com
State Accepted
Commit 8e56e6b2be454b7f4f27110793bbf585649f111e
Headers show
Series [FFmpeg-devel,01/11] avcodec/tests/avcodec: Mark frame-thrd encoder incompatible with delay | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Andreas Rheinhardt Aug. 24, 2022, 1:39 a.m. UTC
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/encode.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/libavcodec/encode.c b/libavcodec/encode.c
index bd66f138a3..9f413095e4 100644
--- a/libavcodec/encode.c
+++ b/libavcodec/encode.c
@@ -240,7 +240,6 @@  static int encode_simple_internal(AVCodecContext *avctx, AVPacket *avpkt)
         if (avctx->codec->type == AVMEDIA_TYPE_AUDIO) {
             avpkt->dts = avpkt->pts;
         }
-        avpkt->flags |= avci->intra_only_flag;
     }
 
     if (avci->draining && !got_packet)
@@ -301,6 +300,8 @@  static int encode_receive_packet_internal(AVCodecContext *avctx, AVPacket *avpkt
             av_assert0(!avpkt->data || avpkt->buf);
     } else
         ret = encode_simple_receive_packet(avctx, avpkt);
+    if (ret >= 0)
+        avpkt->flags |= avci->intra_only_flag;
 
     if (ret == AVERROR_EOF)
         avci->draining_done = 1;