[FFmpeg-devel] [PATCH 1/4] avformat/(mpeg|mpegts|mxf|sup)enc: Use const uint8_t* to access pkt data

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Mon Jul 4 13:58:02 EEST 2022


The packets muxers receive are not guaranteed to be writable,
so they must not be modified. Ergo only access the packet's data
via a const uint8_t*.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
 libavformat/mpegenc.c   | 2 +-
 libavformat/mpegtsenc.c | 2 +-
 libavformat/mxfenc.c    | 4 ++--
 libavformat/supenc.c    | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/libavformat/mpegenc.c b/libavformat/mpegenc.c
index 62692bfcd1..3ab4bd3f9b 100644
--- a/libavformat/mpegenc.c
+++ b/libavformat/mpegenc.c
@@ -1145,7 +1145,7 @@ static int mpeg_mux_write_packet(AVFormatContext *ctx, AVPacket *pkt)
 {
     int stream_index = pkt->stream_index;
     int size         = pkt->size;
-    uint8_t *buf     = pkt->data;
+    const uint8_t *buf = pkt->data;
     MpegMuxContext *s = ctx->priv_data;
     AVStream *st      = ctx->streams[stream_index];
     StreamInfo *stream = st->priv_data;
diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index 18e8f7e45f..c964d58c8e 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -1836,7 +1836,7 @@ static int mpegts_write_packet_internal(AVFormatContext *s, AVPacket *pkt)
 {
     AVStream *st = s->streams[pkt->stream_index];
     int size = pkt->size;
-    uint8_t *buf = pkt->data;
+    const uint8_t *buf = pkt->data;
     uint8_t *data = NULL;
     MpegTSWrite *ts = s->priv_data;
     MpegTSWriteStream *ts_st = st->priv_data;
diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c
index 7041659143..2d08dd6d40 100644
--- a/libavformat/mxfenc.c
+++ b/libavformat/mxfenc.c
@@ -2806,8 +2806,8 @@ static void mxf_write_d10_audio_packet(AVFormatContext *s, AVStream *st, AVPacke
     MXFContext *mxf = s->priv_data;
     AVIOContext *pb = s->pb;
     int frame_size = pkt->size / st->codecpar->block_align;
-    uint8_t *samples = pkt->data;
-    uint8_t *end = pkt->data + pkt->size;
+    const uint8_t *samples = pkt->data;
+    const uint8_t *const end = pkt->data + pkt->size;
     int i;
 
     klv_encode_ber4_length(pb, 4 + frame_size*4*8);
diff --git a/libavformat/supenc.c b/libavformat/supenc.c
index 1ca19fa161..c45d8a5321 100644
--- a/libavformat/supenc.c
+++ b/libavformat/supenc.c
@@ -27,7 +27,7 @@
 
 static int sup_write_packet(AVFormatContext *s, AVPacket *pkt)
 {
-    uint8_t *data = pkt->data;
+    const uint8_t *data = pkt->data;
     size_t size = pkt->size;
     uint32_t pts = 0, dts = 0;
 
-- 
2.34.1



More information about the ffmpeg-devel mailing list