diff mbox series

[FFmpeg-devel,18/18] fftools/ffmpeg_enc: set AV_PKT_FLAG_TRUSTED on encoded packets

Message ID 20240306110319.17339-18-anton@khirnov.net
State Accepted
Commit 8996945d459cee6623eacb5952fc685134a97c3f
Headers show
Series [FFmpeg-devel,01/18] fftools/cmdutils: fix printing group name in split_commandline() | 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

Anton Khirnov March 6, 2024, 11:03 a.m. UTC
This allows using WRAPPED_AVFRAME encoders with loopback decoders in
order to connect multiple filtergraphs together.

Clear the flag in muxers, since lavf does not need it for anything and
it would change the results of framecrc FATE tests.
---
 fftools/ffmpeg_enc.c | 2 ++
 fftools/ffmpeg_mux.c | 1 +
 2 files changed, 3 insertions(+)
diff mbox series

Patch

diff --git a/fftools/ffmpeg_enc.c b/fftools/ffmpeg_enc.c
index d1dae558e1..c9a12af139 100644
--- a/fftools/ffmpeg_enc.c
+++ b/fftools/ffmpeg_enc.c
@@ -706,6 +706,8 @@  static int encode_frame(OutputFile *of, OutputStream *ost, AVFrame *frame,
                 return ret;
         }
 
+        pkt->flags |= AV_PKT_FLAG_TRUSTED;
+
         if (enc->codec_type == AVMEDIA_TYPE_VIDEO) {
             ret = update_video_stats(ost, pkt, !!vstats_filename);
             if (ret < 0)
diff --git a/fftools/ffmpeg_mux.c b/fftools/ffmpeg_mux.c
index 59befefab2..e8e5c677b8 100644
--- a/fftools/ffmpeg_mux.c
+++ b/fftools/ffmpeg_mux.c
@@ -433,6 +433,7 @@  int muxer_thread(void *arg)
 
         ost = of->streams[mux->sch_stream_idx[stream_idx]];
         mt.pkt->stream_index = ost->index;
+        mt.pkt->flags       &= ~AV_PKT_FLAG_TRUSTED;
 
         ret = mux_packet_filter(mux, &mt, ost, ret < 0 ? NULL : mt.pkt, &stream_eof);
         av_packet_unref(mt.pkt);