[FFmpeg-cvslog] avformat: Add internal flags for AV(In|Out)putFormat

Andreas Rheinhardt git at videolan.org
Thu Jul 8 16:43:55 EEST 2021


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Tue Jun 15 15:55:42 2021 +0200| [0f6b34bfeca799ffdeefa10581563a329f1915ef] | committer: Andreas Rheinhardt

avformat: Add internal flags for AV(In|Out)putFormat

Both AVInputFormat and AVOutputFormat currently lack an equivalent to
AVCodec's caps_internal. E.g. if reading a header fails, each demuxer
is currently required to clean up manually, which often means to just
call the demuxer's read_close function. This could (and will) be done
generically via an equivalent of FF_CODEC_CAP_INIT_CLEANUP.

Because of the unholy ABI-relationship between libavdevice and
libavformat adding such a flag is only possible when the ABI is open
(despite the flag not being part of the public API), such as now.
Therefore such a flag is also added to AVOutputFormat, despite there
being no immediate use for it.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0f6b34bfeca799ffdeefa10581563a329f1915ef
---

 libavformat/avformat.h | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index cd7b0d941c..81d2ac38d0 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -535,6 +535,11 @@ typedef struct AVOutputFormat {
      */
     int priv_data_size;
 
+    /**
+     * Internal flags. See FF_FMT_FLAG_* in internal.h.
+     */
+    int flags_internal;
+
     int (*write_header)(struct AVFormatContext *);
     /**
      * Write a packet. If AVFMT_ALLOW_FLUSH is set in flags,
@@ -674,6 +679,11 @@ typedef struct AVInputFormat {
      */
     int priv_data_size;
 
+    /**
+     * Internal flags. See FF_FMT_FLAG_* in internal.h.
+     */
+    int flags_internal;
+
     /**
      * Tell if a given file has a chance of being parsed as this format.
      * The buffer provided is guaranteed to be AVPROBE_PADDING_SIZE bytes



More information about the ffmpeg-cvslog mailing list