From 228b25ad9bfef62338417fe607826dd33163ca69 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Fri, 3 Dec 2021 23:26:44 +0100 Subject: [PATCH] avformat/smoothstreamingenc: Move buffers to the end of structs This reduces codesize because the offsets of commonly used elements are now smaller and thus need less bytes to encode in ptr+offset addressing modes (with GCC 11.2 on x64: 0x1b8b -> 0x1a7b). Signed-off-by: Andreas Rheinhardt --- libavformat/smoothstreamingenc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavformat/smoothstreamingenc.c b/libavformat/smoothstreamingenc.c index 6bede7c254..a0ea5b8fa8 100644 --- a/libavformat/smoothstreamingenc.c +++ b/libavformat/smoothstreamingenc.c @@ -40,17 +40,15 @@ #include "libavutil/intreadwrite.h" typedef struct Fragment { - char file[1024]; - char infofile[1024]; int64_t start_time, duration; int n; int64_t start_pos, size; + char file[1024]; + char infofile[1024]; } Fragment; typedef struct OutputStream { AVFormatContext *ctx; - char dirname[1024]; - uint8_t iobuf[32768]; URLContext *out; // Current output stream where all output is written URLContext *out2; // Auxiliary output stream where all output is also written URLContext *tail_out; // The actual main output stream, if we're currently seeked back to write elsewhere @@ -64,6 +62,8 @@ typedef struct OutputStream { char *private_str; int packet_size; int audio_tag; + char dirname[1024]; + uint8_t iobuf[32768]; } OutputStream; typedef struct SmoothStreamingContext {