[FFmpeg-devel] [PATCH 28/31] avformat/avformat: Move codecpar up in AVStream

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Fri Jan 27 16:05:57 EET 2023


It is the most commonly used field and moving it to the start
e.g. allows to encode the offset in a pointer+offset addressing
mode on one byte on x86.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 libavformat/avformat.h | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 020906c94d..38578a08e4 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -960,6 +960,17 @@ typedef struct AVStream {
      */
     int id;
 
+    /**
+     * Codec parameters associated with this stream. Allocated and freed by
+     * libavformat in avformat_new_stream() and avformat_free_context()
+     * respectively.
+     *
+     * - demuxing: filled by libavformat on stream creation or in
+     *             avformat_find_stream_info()
+     * - muxing: filled by the caller before avformat_write_header()
+     */
+    AVCodecParameters *codecpar;
+
     void *priv_data;
 
     /**
@@ -1095,17 +1106,6 @@ typedef struct AVStream {
      */
     AVRational r_frame_rate;
 
-    /**
-     * Codec parameters associated with this stream. Allocated and freed by
-     * libavformat in avformat_new_stream() and avformat_free_context()
-     * respectively.
-     *
-     * - demuxing: filled by libavformat on stream creation or in
-     *             avformat_find_stream_info()
-     * - muxing: filled by the caller before avformat_write_header()
-     */
-    AVCodecParameters *codecpar;
-
     /**
      * Number of bits in timestamps. Used for wrapping control.
      *
-- 
2.34.1



More information about the ffmpeg-devel mailing list