Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: "Kacper Michajłow via ffmpeg-devel" <ffmpeg-devel@ffmpeg.org>
To: ffmpeg-devel@ffmpeg.org
Cc: "Kacper Michajłow" <code@ffmpeg.org>
Subject: [FFmpeg-devel] [PATCH] Few MSVC warnings fixes (PR #20619)
Date: Sat, 27 Sep 2025 01:26:36 -0000
Message-ID: <175893639759.25.16791329611015138325@bf249f23a2c8> (raw)

PR #20619 opened by Kacper Michajłow (kasper93)
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20619
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/20619.patch


From b1792e40e5fe5c67e9777e28c6b2284a0582413e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:19:33 +0200
Subject: [PATCH 1/8] fftools/ffmpeg: use enum VideoSyncMethod instead of int
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 fftools/ffmpeg.h     | 2 +-
 fftools/ffmpeg_opt.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h
index c479a0351d..63da1d14df 100644
--- a/fftools/ffmpeg.h
+++ b/fftools/ffmpeg.h
@@ -771,7 +771,7 @@ int check_avoptions_used(const AVDictionary *opts, const AVDictionary *opts_used
 int assert_file_overwrite(const char *filename);
 int find_codec(void *logctx, const char *name,
                enum AVMediaType type, int encoder, const AVCodec **codec);
-int parse_and_set_vsync(const char *arg, int *vsync_var, int file_idx, int st_idx, int is_global);
+int parse_and_set_vsync(const char *arg, enum VideoSyncMethod *vsync_var, int file_idx, int st_idx, int is_global);
 
 int filtergraph_is_simple(const FilterGraph *fg);
 int fg_create_simple(FilterGraph **pfg,
diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c
index 926a8bda00..e2fdfaa821 100644
--- a/fftools/ffmpeg_opt.c
+++ b/fftools/ffmpeg_opt.c
@@ -295,7 +295,7 @@ int view_specifier_parse(const char **pspec, ViewSpecifier *vs)
     return 0;
 }
 
-int parse_and_set_vsync(const char *arg, int *vsync_var, int file_idx, int st_idx, int is_global)
+int parse_and_set_vsync(const char *arg, enum VideoSyncMethod *vsync_var, int file_idx, int st_idx, int is_global)
 {
     if      (!av_strcasecmp(arg, "cfr"))         *vsync_var = VSYNC_CFR;
     else if (!av_strcasecmp(arg, "vfr"))         *vsync_var = VSYNC_VFR;
-- 
2.49.1


From 99914ae766bdf38a5551040c568eeb5bcc95438d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:21:53 +0200
Subject: [PATCH 2/8] avcodec/aacpsdsp: add restrict to function pointers to
 match declarations
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 libavcodec/aacpsdsp.h          | 10 +++++-----
 libavcodec/x86/aacpsdsp_init.c | 16 ++++++++--------
 2 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/libavcodec/aacpsdsp.h b/libavcodec/aacpsdsp.h
index 1491212250..daeb0a698e 100644
--- a/libavcodec/aacpsdsp.h
+++ b/libavcodec/aacpsdsp.h
@@ -30,15 +30,15 @@
 #define PS_MAX_AP_DELAY 5
 
 typedef struct PSDSPContext {
-    void (*add_squares)(INTFLOAT *dst, const INTFLOAT (*src)[2], int n);
-    void (*mul_pair_single)(INTFLOAT (*dst)[2], INTFLOAT (*src0)[2], INTFLOAT *src1,
+    void (*add_squares)(INTFLOAT *restrict dst, const INTFLOAT (*src)[2], int n);
+    void (*mul_pair_single)(INTFLOAT (*restrict dst)[2], INTFLOAT (*src0)[2], INTFLOAT *src1,
                             int n);
-    void (*hybrid_analysis)(INTFLOAT (*out)[2], INTFLOAT (*in)[2],
+    void (*hybrid_analysis)(INTFLOAT (*restrict out)[2], INTFLOAT (*in)[2],
                             const INTFLOAT (*filter)[8][2],
                             ptrdiff_t stride, int n);
-    void (*hybrid_analysis_ileave)(INTFLOAT (*out)[32][2], INTFLOAT L[2][38][64],
+    void (*hybrid_analysis_ileave)(INTFLOAT (*restrict out)[32][2], INTFLOAT L[2][38][64],
                                    int i, int len);
-    void (*hybrid_synthesis_deint)(INTFLOAT out[2][38][64], INTFLOAT (*in)[32][2],
+    void (*hybrid_synthesis_deint)(INTFLOAT out[2][38][64], INTFLOAT (*restrict in)[32][2],
                                    int i, int len);
     void (*decorrelate)(INTFLOAT (*out)[2], INTFLOAT (*delay)[2],
                         INTFLOAT (*ap_delay)[PS_QMF_TIME_SLOTS+PS_MAX_AP_DELAY][2],
diff --git a/libavcodec/x86/aacpsdsp_init.c b/libavcodec/x86/aacpsdsp_init.c
index 0b0ee07db4..221fe71bc7 100644
--- a/libavcodec/x86/aacpsdsp_init.c
+++ b/libavcodec/x86/aacpsdsp_init.c
@@ -26,14 +26,14 @@
 #include "libavutil/attributes.h"
 #include "libavcodec/aacpsdsp.h"
 
-void ff_ps_add_squares_sse  (float *dst, const float (*src)[2], int n);
-void ff_ps_add_squares_sse3 (float *dst, const float (*src)[2], int n);
-void ff_ps_mul_pair_single_sse (float (*dst)[2], float (*src0)[2],
+void ff_ps_add_squares_sse  (float *restrict dst, const float (*src)[2], int n);
+void ff_ps_add_squares_sse3 (float *restrict dst, const float (*src)[2], int n);
+void ff_ps_mul_pair_single_sse (float (*restrict dst)[2], float (*src0)[2],
                                 float *src1, int n);
-void ff_ps_hybrid_analysis_sse (float (*out)[2], float (*in)[2],
+void ff_ps_hybrid_analysis_sse (float (*restrict out)[2], float (*in)[2],
                                 const float (*filter)[8][2],
                                 ptrdiff_t stride, int n);
-void ff_ps_hybrid_analysis_fma3(float (*out)[2], float (*in)[2],
+void ff_ps_hybrid_analysis_fma3(float (*restrict out)[2], float (*in)[2],
                                 const float (*filter)[8][2],
                                 ptrdiff_t stride, int n);
 void ff_ps_stereo_interpolate_sse3(float (*l)[2], float (*r)[2],
@@ -42,11 +42,11 @@ void ff_ps_stereo_interpolate_sse3(float (*l)[2], float (*r)[2],
 void ff_ps_stereo_interpolate_ipdopd_sse3(float (*l)[2], float (*r)[2],
                                           float h[2][4], float h_step[2][4],
                                           int len);
-void ff_ps_hybrid_synthesis_deint_sse(float out[2][38][64], float (*in)[32][2],
+void ff_ps_hybrid_synthesis_deint_sse(float out[2][38][64], float (*restrict in)[32][2],
                                       int i, int len);
-void ff_ps_hybrid_synthesis_deint_sse4(float out[2][38][64], float (*in)[32][2],
+void ff_ps_hybrid_synthesis_deint_sse4(float out[2][38][64], float (*restrict in)[32][2],
                                        int i, int len);
-void ff_ps_hybrid_analysis_ileave_sse(float (*out)[32][2], float L[2][38][64],
+void ff_ps_hybrid_analysis_ileave_sse(float (*restrict out)[32][2], float L[2][38][64],
                                       int i, int len);
 
 av_cold void ff_psdsp_init_x86(PSDSPContext *s)
-- 
2.49.1


From 9dac374b14c3162ec53adf2c07efb93bc8c17b96 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:34:21 +0200
Subject: [PATCH 3/8] avcodec/pixblockdsp: be consistent about restrict use in
 ff_{get,diff}_pixels
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Suppresses warnings about function pointer mismatch.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 libavcodec/aarch64/pixblockdsp_init_aarch64.c |  4 ++--
 libavcodec/arm/pixblockdsp_init_arm.c         | 12 ++++++------
 libavcodec/dvenc.c                            |  2 +-
 libavcodec/riscv/pixblockdsp_init.c           | 12 ++++++------
 libavcodec/x86/dnxhdenc_init.c                |  2 +-
 libavcodec/x86/pixblockdsp_init.c             |  4 ++--
 6 files changed, 18 insertions(+), 18 deletions(-)

diff --git a/libavcodec/aarch64/pixblockdsp_init_aarch64.c b/libavcodec/aarch64/pixblockdsp_init_aarch64.c
index 404f3680a6..5f0bf477a5 100644
--- a/libavcodec/aarch64/pixblockdsp_init_aarch64.c
+++ b/libavcodec/aarch64/pixblockdsp_init_aarch64.c
@@ -23,9 +23,9 @@
 #include "libavutil/aarch64/cpu.h"
 #include "libavcodec/pixblockdsp.h"
 
-void ff_get_pixels_neon(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_neon(int16_t *restrict block, const uint8_t *pixels,
                         ptrdiff_t stride);
-void ff_diff_pixels_neon(int16_t *block, const uint8_t *s1,
+void ff_diff_pixels_neon(int16_t *restrict block, const uint8_t *s1,
                          const uint8_t *s2, ptrdiff_t stride);
 
 av_cold void ff_pixblockdsp_init_aarch64(PixblockDSPContext *c,
diff --git a/libavcodec/arm/pixblockdsp_init_arm.c b/libavcodec/arm/pixblockdsp_init_arm.c
index 121338ad0c..9d817e400d 100644
--- a/libavcodec/arm/pixblockdsp_init_arm.c
+++ b/libavcodec/arm/pixblockdsp_init_arm.c
@@ -23,18 +23,18 @@
 #include "libavutil/arm/cpu.h"
 #include "libavcodec/pixblockdsp.h"
 
-void ff_get_pixels_armv6(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_armv6(int16_t *restrict block, const uint8_t *pixels,
                          ptrdiff_t stride);
-void ff_diff_pixels_armv6(int16_t *block, const uint8_t *s1,
+void ff_diff_pixels_armv6(int16_t *restrict block, const uint8_t *s1,
                           const uint8_t *s2, ptrdiff_t stride);
 
-void ff_get_pixels_neon(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_neon(int16_t *restrict block, const uint8_t *pixels,
                         ptrdiff_t stride);
-void ff_get_pixels_unaligned_neon(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_unaligned_neon(int16_t *restrict block, const uint8_t *pixels,
                                   ptrdiff_t stride);
-void ff_diff_pixels_neon(int16_t *block, const uint8_t *s1,
+void ff_diff_pixels_neon(int16_t *restrict block, const uint8_t *s1,
                          const uint8_t *s2, ptrdiff_t stride);
-void ff_diff_pixels_unaligned_neon(int16_t *block, const uint8_t *s1,
+void ff_diff_pixels_unaligned_neon(int16_t *restrict block, const uint8_t *s1,
                                    const uint8_t *s2, ptrdiff_t stride);
 
 av_cold void ff_pixblockdsp_init_arm(PixblockDSPContext *c,
diff --git a/libavcodec/dvenc.c b/libavcodec/dvenc.c
index a477b84261..f25c3ddfee 100644
--- a/libavcodec/dvenc.c
+++ b/libavcodec/dvenc.c
@@ -56,7 +56,7 @@ typedef struct DVEncContext {
     AVCodecContext    *avctx;
     uint8_t           *buf;
 
-    void (*get_pixels)(int16_t *block, const uint8_t *pixels, ptrdiff_t linesize);
+    void (*get_pixels)(int16_t *restrict block, const uint8_t *pixels, ptrdiff_t linesize);
     void (*fdct[2])(int16_t *block);
 
     me_cmp_func  ildct_cmp;
diff --git a/libavcodec/riscv/pixblockdsp_init.c b/libavcodec/riscv/pixblockdsp_init.c
index e59fba63cc..083873c0b0 100644
--- a/libavcodec/riscv/pixblockdsp_init.c
+++ b/libavcodec/riscv/pixblockdsp_init.c
@@ -26,18 +26,18 @@
 #include "libavutil/riscv/cpu.h"
 #include "libavcodec/pixblockdsp.h"
 
-void ff_get_pixels_8_rvi(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_8_rvi(int16_t *restrict block, const uint8_t *pixels,
                          ptrdiff_t stride);
-void ff_get_pixels_16_rvi(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_16_rvi(int16_t *restrict block, const uint8_t *pixels,
                           ptrdiff_t stride);
 
-void ff_get_pixels_8_rvv(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_8_rvv(int16_t *restrict block, const uint8_t *pixels,
                          ptrdiff_t stride);
-void ff_get_pixels_unaligned_8_rvv(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_unaligned_8_rvv(int16_t *restrict block, const uint8_t *pixels,
                                    ptrdiff_t stride);
-void ff_diff_pixels_rvv(int16_t *block, const uint8_t *s1,
+void ff_diff_pixels_rvv(int16_t *restrict block, const uint8_t *s1,
                         const uint8_t *s2, ptrdiff_t stride);
-void ff_diff_pixels_unaligned_rvv(int16_t *block, const uint8_t *s1,
+void ff_diff_pixels_unaligned_rvv(int16_t *restrict block, const uint8_t *s1,
                                   const uint8_t *s2, ptrdiff_t stride);
 
 av_cold void ff_pixblockdsp_init_riscv(PixblockDSPContext *c,
diff --git a/libavcodec/x86/dnxhdenc_init.c b/libavcodec/x86/dnxhdenc_init.c
index fd6f15005a..3010986b3e 100644
--- a/libavcodec/x86/dnxhdenc_init.c
+++ b/libavcodec/x86/dnxhdenc_init.c
@@ -25,7 +25,7 @@
 #include "libavutil/x86/cpu.h"
 #include "libavcodec/dnxhdenc.h"
 
-void ff_get_pixels_8x4_sym_sse2(int16_t *block, const uint8_t *pixels,
+void ff_get_pixels_8x4_sym_sse2(int16_t *restrict block, const uint8_t *pixels,
                                 ptrdiff_t line_size);
 
 av_cold void ff_dnxhdenc_init_x86(DNXHDEncContext *ctx)
diff --git a/libavcodec/x86/pixblockdsp_init.c b/libavcodec/x86/pixblockdsp_init.c
index f105775c2b..650a0eb4f6 100644
--- a/libavcodec/x86/pixblockdsp_init.c
+++ b/libavcodec/x86/pixblockdsp_init.c
@@ -23,8 +23,8 @@
 #include "libavutil/x86/cpu.h"
 #include "libavcodec/pixblockdsp.h"
 
-void ff_get_pixels_sse2(int16_t *block, const uint8_t *pixels, ptrdiff_t stride);
-void ff_diff_pixels_sse2(int16_t *block, const uint8_t *s1, const uint8_t *s2,
+void ff_get_pixels_sse2(int16_t *restrict block, const uint8_t *pixels, ptrdiff_t stride);
+void ff_diff_pixels_sse2(int16_t *restrict block, const uint8_t *s1, const uint8_t *s2,
                          ptrdiff_t stride);
 
 av_cold void ff_pixblockdsp_init_x86(PixblockDSPContext *c,
-- 
2.49.1


From 123a821d7f02dda49a21612008c546bf6b7aa5f6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:36:33 +0200
Subject: [PATCH 4/8] avcodec/cbs*: remove redundant const, it's already in
 typedef
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 libavcodec/cbs.c          | 14 +++++++-------
 libavcodec/cbs_apv.c      |  2 +-
 libavcodec/cbs_av1.c      |  2 +-
 libavcodec/cbs_h2645.c    |  6 +++---
 libavcodec/cbs_internal.h |  2 +-
 libavcodec/cbs_jpeg.c     |  2 +-
 libavcodec/cbs_mpeg2.c    |  2 +-
 libavcodec/cbs_vp8.c      |  2 +-
 libavcodec/cbs_vp9.c      |  2 +-
 9 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/libavcodec/cbs.c b/libavcodec/cbs.c
index 0f54c407f3..cea6e6db21 100644
--- a/libavcodec/cbs.c
+++ b/libavcodec/cbs.c
@@ -891,7 +891,7 @@ void CBS_FUNC(delete_unit)(CodedBitstreamFragment *frag,
 
 static void cbs_default_free_unit_content(AVRefStructOpaque opaque, void *content)
 {
-    const CodedBitstreamUnitTypeDescriptor *desc = opaque.c;
+    CodedBitstreamUnitTypeDescriptor *desc = opaque.c;
 
     for (int i = 0; i < desc->type.ref.nb_offsets; i++) {
         void **ptr = (void**)((char*)content + desc->type.ref.offsets[i]);
@@ -899,11 +899,11 @@ static void cbs_default_free_unit_content(AVRefStructOpaque opaque, void *conten
     }
 }
 
-static const CodedBitstreamUnitTypeDescriptor
+static CodedBitstreamUnitTypeDescriptor
     *cbs_find_unit_type_desc(CodedBitstreamContext *ctx,
                              CodedBitstreamUnit *unit)
 {
-    const CodedBitstreamUnitTypeDescriptor *desc;
+    CodedBitstreamUnitTypeDescriptor *desc;
     int i, j;
 
     if (!ctx->codec->unit_types)
@@ -927,7 +927,7 @@ static const CodedBitstreamUnitTypeDescriptor
     return NULL;
 }
 
-static void *cbs_alloc_content(const CodedBitstreamUnitTypeDescriptor *desc)
+static void *cbs_alloc_content(CodedBitstreamUnitTypeDescriptor *desc)
 {
     return av_refstruct_alloc_ext_c(desc->content_size, 0,
                                     (AVRefStructOpaque){ .c = desc },
@@ -939,7 +939,7 @@ static void *cbs_alloc_content(const CodedBitstreamUnitTypeDescriptor *desc)
 int CBS_FUNC(alloc_unit_content)(CodedBitstreamContext *ctx,
                               CodedBitstreamUnit *unit)
 {
-    const CodedBitstreamUnitTypeDescriptor *desc;
+    CodedBitstreamUnitTypeDescriptor *desc;
 
     av_assert0(!unit->content && !unit->content_ref);
 
@@ -957,7 +957,7 @@ int CBS_FUNC(alloc_unit_content)(CodedBitstreamContext *ctx,
 
 static int cbs_clone_noncomplex_unit_content(void **clonep,
                                              const CodedBitstreamUnit *unit,
-                                             const CodedBitstreamUnitTypeDescriptor *desc)
+                                             CodedBitstreamUnitTypeDescriptor *desc)
 {
     const uint8_t *src;
     uint8_t *copy;
@@ -1017,7 +1017,7 @@ fail:
 static int cbs_clone_unit_content(CodedBitstreamContext *ctx,
                                   CodedBitstreamUnit *unit)
 {
-    const CodedBitstreamUnitTypeDescriptor *desc;
+    CodedBitstreamUnitTypeDescriptor *desc;
     void *new_content;
     int err;
 
diff --git a/libavcodec/cbs_apv.c b/libavcodec/cbs_apv.c
index fdc9042939..a1e546c92e 100644
--- a/libavcodec/cbs_apv.c
+++ b/libavcodec/cbs_apv.c
@@ -421,7 +421,7 @@ static void cbs_apv_free_metadata(AVRefStructOpaque unused, void *content)
     }
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_apv_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_apv_unit_types[] = {
     {
         .nb_unit_types   = CBS_UNIT_TYPE_RANGE,
         .unit_type.range = {
diff --git a/libavcodec/cbs_av1.c b/libavcodec/cbs_av1.c
index 90e29ed0d8..75601c934b 100644
--- a/libavcodec/cbs_av1.c
+++ b/libavcodec/cbs_av1.c
@@ -1312,7 +1312,7 @@ static void cbs_av1_free_metadata(AVRefStructOpaque unused, void *content)
 }
 #endif
 
-static const CodedBitstreamUnitTypeDescriptor cbs_av1_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_av1_unit_types[] = {
     CBS_UNIT_TYPE_POD(AV1_OBU_SEQUENCE_HEADER,        AV1RawOBU),
     CBS_UNIT_TYPE_POD(AV1_OBU_TEMPORAL_DELIMITER,     AV1RawOBU),
     CBS_UNIT_TYPE_POD(AV1_OBU_FRAME_HEADER,           AV1RawOBU),
diff --git a/libavcodec/cbs_h2645.c b/libavcodec/cbs_h2645.c
index 75784b03a9..1a3d3d649f 100644
--- a/libavcodec/cbs_h2645.c
+++ b/libavcodec/cbs_h2645.c
@@ -1990,7 +1990,7 @@ static void cbs_h264_free_sei(AVRefStructOpaque unused, void *content)
     ff_cbs_sei_free_message_list(&sei->message_list);
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_h264_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_h264_unit_types[] = {
     CBS_UNIT_TYPE_POD(H264_NAL_SPS,     H264RawSPS),
     CBS_UNIT_TYPE_POD(H264_NAL_SPS_EXT, H264RawSPSExtension),
 
@@ -2016,7 +2016,7 @@ static void cbs_h265_free_sei(AVRefStructOpaque unused, void *content)
     ff_cbs_sei_free_message_list(&sei->message_list);
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_h265_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_h265_unit_types[] = {
     CBS_UNIT_TYPE_INTERNAL_REF(HEVC_NAL_VPS, H265RawVPS, extension_data.data),
     CBS_UNIT_TYPE_INTERNAL_REF(HEVC_NAL_SPS, H265RawSPS, extension_data.data),
     CBS_UNIT_TYPE_INTERNAL_REF(HEVC_NAL_PPS, H265RawPPS, extension_data.data),
@@ -2043,7 +2043,7 @@ static void cbs_h266_free_sei(AVRefStructOpaque unused, void *content)
     ff_cbs_sei_free_message_list(&sei->message_list);
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_h266_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_h266_unit_types[] = {
     CBS_UNIT_TYPE_INTERNAL_REF(VVC_DCI_NUT, H266RawDCI, extension_data.data),
     CBS_UNIT_TYPE_INTERNAL_REF(VVC_OPI_NUT, H266RawOPI, extension_data.data),
     CBS_UNIT_TYPE_INTERNAL_REF(VVC_VPS_NUT, H266RawVPS, extension_data.data),
diff --git a/libavcodec/cbs_internal.h b/libavcodec/cbs_internal.h
index 37398ef416..8ca53ff3ce 100644
--- a/libavcodec/cbs_internal.h
+++ b/libavcodec/cbs_internal.h
@@ -151,7 +151,7 @@ typedef struct CodedBitstreamType {
 
     // List of unit type descriptors for this codec.
     // Terminated by a descriptor with nb_unit_types equal to zero.
-    const CodedBitstreamUnitTypeDescriptor *unit_types;
+    CodedBitstreamUnitTypeDescriptor *unit_types;
 
     // Split frag->data into coded bitstream units, creating the
     // frag->units array.  Fill data but not content on each unit.
diff --git a/libavcodec/cbs_jpeg.c b/libavcodec/cbs_jpeg.c
index 406147c082..d64e2baec0 100644
--- a/libavcodec/cbs_jpeg.c
+++ b/libavcodec/cbs_jpeg.c
@@ -417,7 +417,7 @@ static int cbs_jpeg_assemble_fragment(CodedBitstreamContext *ctx,
     return 0;
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_jpeg_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_jpeg_unit_types[] = {
     CBS_UNIT_RANGE_POD(JPEG_MARKER_SOF0, JPEG_MARKER_SOF3, JPEGRawFrameHeader),
 
     CBS_UNIT_RANGE_INTERNAL_REF(JPEG_MARKER_APPN, JPEG_MARKER_APPN + 15,
diff --git a/libavcodec/cbs_mpeg2.c b/libavcodec/cbs_mpeg2.c
index 37fc28a4e6..87401d1543 100644
--- a/libavcodec/cbs_mpeg2.c
+++ b/libavcodec/cbs_mpeg2.c
@@ -397,7 +397,7 @@ static int cbs_mpeg2_assemble_fragment(CodedBitstreamContext *ctx,
     return 0;
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_mpeg2_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_mpeg2_unit_types[] = {
     CBS_UNIT_TYPE_INTERNAL_REF(MPEG2_START_PICTURE, MPEG2RawPictureHeader,
                                extra_information_picture.extra_information),
 
diff --git a/libavcodec/cbs_vp8.c b/libavcodec/cbs_vp8.c
index 1f80f34faf..7724cb3d7a 100644
--- a/libavcodec/cbs_vp8.c
+++ b/libavcodec/cbs_vp8.c
@@ -366,7 +366,7 @@ static int cbs_vp8_assemble_fragment(CodedBitstreamContext *ctx,
     return AVERROR_PATCHWELCOME;
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_vp8_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_vp8_unit_types[] = {
     CBS_UNIT_TYPE_INTERNAL_REF(0, VP8RawFrame, data),
     CBS_UNIT_TYPE_END_OF_LIST,
 };
diff --git a/libavcodec/cbs_vp9.c b/libavcodec/cbs_vp9.c
index 9a97b0532c..9e9b37e527 100644
--- a/libavcodec/cbs_vp9.c
+++ b/libavcodec/cbs_vp9.c
@@ -594,7 +594,7 @@ static av_cold void cbs_vp9_flush(CodedBitstreamContext *ctx)
     memset(vp9->ref, 0, sizeof(vp9->ref));
 }
 
-static const CodedBitstreamUnitTypeDescriptor cbs_vp9_unit_types[] = {
+static CodedBitstreamUnitTypeDescriptor cbs_vp9_unit_types[] = {
     CBS_UNIT_TYPE_INTERNAL_REF(0, VP9RawFrame, data),
     CBS_UNIT_TYPE_END_OF_LIST
 };
-- 
2.49.1


From fb8ecf3774689317e7402c7fa7b18c6ff719d95f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:37:44 +0200
Subject: [PATCH 5/8] avcodec/intrax8: cast const away before for memset call
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Suppresses warnings on MSVC.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 libavcodec/intrax8.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/intrax8.c b/libavcodec/intrax8.c
index 89b70e5902..d3a48cf76e 100644
--- a/libavcodec/intrax8.c
+++ b/libavcodec/intrax8.c
@@ -87,8 +87,8 @@ static av_cold void x8_vlc_init(void)
 
 static void x8_reset_vlc_tables(IntraX8Context *w)
 {
-    memset(w->j_dc_vlc_table, 0, sizeof(w->j_dc_vlc_table));
-    memset(w->j_ac_vlc_table, 0, sizeof(w->j_ac_vlc_table));
+    memset((void *)w->j_dc_vlc_table, 0, sizeof(w->j_dc_vlc_table));
+    memset((void *)w->j_ac_vlc_table, 0, sizeof(w->j_ac_vlc_table));
     w->j_orient_vlc_table = NULL;
 }
 
-- 
2.49.1


From d6d9abc2c3db9f6c556f168972fc8e9900ef638c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:42:49 +0200
Subject: [PATCH 6/8] avcodec/put_bits: use UINT64_C instead UL, not all
 platform has 64-bit long
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

To suppress warnings on MSVC about shift cast.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 libavcodec/put_bits.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/put_bits.h b/libavcodec/put_bits.h
index 7eb2f2fed4..8e55b55dd1 100644
--- a/libavcodec/put_bits.h
+++ b/libavcodec/put_bits.h
@@ -256,7 +256,7 @@ static inline void put_bits_no_assert(PutBitContext *s, int n, BitBuf value)
  */
 static inline void put_bits(PutBitContext *s, int n, BitBuf value)
 {
-    av_assert2(n <= 31 && value < (1UL << n));
+    av_assert2(n <= 31 && value < (UINT64_C(1) << n));
     put_bits_no_assert(s, n, value);
 }
 
@@ -265,7 +265,7 @@ static inline void put_bits_le(PutBitContext *s, int n, BitBuf value)
     BitBuf bit_buf;
     int bit_left;
 
-    av_assert2(n <= 31 && value < (1UL << n));
+    av_assert2(n <= 31 && value < (UINT64_C(1) << n));
 
     bit_buf  = s->bit_buf;
     bit_left = s->bit_left;
-- 
2.49.1


From 1c1179c4a9b063aa8ceb2e4aa5ff6d6c84cd28b8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:44:17 +0200
Subject: [PATCH 7/8] avcodec/rectangle: use intptr_t for integer pointer type
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 libavcodec/rectangle.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/rectangle.h b/libavcodec/rectangle.h
index df7c18a4e2..b3499bb96f 100644
--- a/libavcodec/rectangle.h
+++ b/libavcodec/rectangle.h
@@ -46,7 +46,7 @@ static av_always_inline void fill_rectangle(void *vp, int w, int h, int stride,
     w      *= size;
     stride *= size;
 
-    av_assert2((((long)vp)&(FFMIN(w, 8<<(HAVE_NEON|ARCH_PPC|HAVE_MMX))-1)) == 0);
+    av_assert2((((intptr_t)vp)&(FFMIN(w, 8<<(HAVE_NEON|ARCH_PPC|HAVE_MMX))-1)) == 0);
     av_assert2((stride&(w-1))==0);
     if(w==2){
         const uint16_t v= size==4 ? val : val*0x0101;
-- 
2.49.1


From 205a6b672e693eab53a72ad3c45ec1c044c4c8a6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Sat, 27 Sep 2025 02:46:33 +0200
Subject: [PATCH 8/8] avcodec/x86/idctdsp: add restrict to match function
 pointer types
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
---
 libavcodec/x86/idctdsp.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavcodec/x86/idctdsp.h b/libavcodec/x86/idctdsp.h
index 738e4e36e4..9e8474cacd 100644
--- a/libavcodec/x86/idctdsp.h
+++ b/libavcodec/x86/idctdsp.h
@@ -22,11 +22,11 @@
 #include <stddef.h>
 #include <stdint.h>
 
-void ff_add_pixels_clamped_sse2(const int16_t *block, uint8_t *pixels,
+void ff_add_pixels_clamped_sse2(const int16_t *block, uint8_t *restrict pixels,
                                 ptrdiff_t line_size);
-void ff_put_pixels_clamped_sse2(const int16_t *block, uint8_t *pixels,
+void ff_put_pixels_clamped_sse2(const int16_t *block, uint8_t *restrict pixels,
                                 ptrdiff_t line_size);
-void ff_put_signed_pixels_clamped_sse2(const int16_t *block, uint8_t *pixels,
+void ff_put_signed_pixels_clamped_sse2(const int16_t *block, uint8_t *restrict pixels,
                                        ptrdiff_t line_size);
 
 
-- 
2.49.1

_______________________________________________
ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org
To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org

                 reply	other threads:[~2025-09-27  1:27 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=175893639759.25.16791329611015138325@bf249f23a2c8 \
    --to=ffmpeg-devel@ffmpeg.org \
    --cc=code@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ http://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git