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