From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 7CD864C267 for ; Sun, 8 Feb 2026 03:49:58 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'G7Ak5LZO+iENJ081SBgt8TuP3U0J1DmYTBI7UAs9iEI=', expected b'xiyZZL1Xpc6YzSyvjyP1dr0dOL2rWSuGUpblJfO7C4U=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1770522591; h=mime-version : to : date : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=G7Ak5LZO+iENJ081SBgt8TuP3U0J1DmYTBI7UAs9iEI=; b=BRHIBcUQB0NCqwWI8e6eMWHpNgYIOMA6dGZihfo71o182UBzAPnksN/GDrFsJrFn8T0LU Db5FV2DE6/YBLb+j5jMnRrX42wniDfEz271xebLcu3cWL2J0Zgpcc+IHhvrTOu6Xy09RvCq WIF7KS2KMhgWCJmMtB406e5sVX36bRzKn6sM/rPFA9yaHQWOFDEmk5Q00BZKQgxhmLZ+NGb S0JQeyrgIxnXfjX/uDYbw4GqHMr1Xk3l9lT753i0NoMLvnhysAsxiyPH8xX7x3rFF/mC7sB q9/8VmcmNPV9H72cTttmjA8uPuQ/fb5hKCWuyggm5rf5ZBVxMo13I5aOGZwQ== Received: from [172.20.0.4] (unknown [172.20.0.4]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id C4ABF690EDC; Sun, 8 Feb 2026 05:49:51 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1770522575; b=VCtK28Ry3DhMY8zumxSO2iAF/DLJV/pBabUH538IwKxX0P1pSBVbX4svIfjU2T2Z4QcNN gAQM4PdfolhOhy/ajQXkXPNzfco7nNxbRyQBmVIwu/9nvkG5K1FqEcRKps5WEQ8c9Jr72a2 GKLQJN45amtpqSMXdet51Fz6L0Lfg08VyejIheFPkFammbC1HnyYmgahExloWMbxNJLUa/M FHr3IsqXsrF04iH5xtqGHIuspUv73fl+y2aBameYDwQlw50PsWcXGeBmB9Zbhzcj2kHPhkc 5pnWJDlZcFPEXLAoZD/8D0cMA5R7l12LeJNLu8uJ5nyYKSRgxHJ1yl8CXYCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1770522575; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=hdYkc84bnrODPTFHIFjOMs2cMWA4zwU/nxEU/YUmkZM=; b=OSp6mxskgeZoYb/xUYTO6vZgA7s3kfm5Kw0maQ+ESt5n2RV6R3Fi24PqCxADAdoxqOwxT u6GzA7G7/4Whtvk0ysJTB+G4W+88VgKFfkqmvy16T7sO6oCcO5/oFEshxzxRtwoYtoU4dIc XpLksbywI82EAcYYZHVxvZmkit+1jlrUuuV7zqqhgs2VXe/xHH7DNtsFjDZhCsoYmaoUucm B5YcFNWZu7jiv7fepuYgVPOiUGnBsFSsDhZyYDyeYHYFSdqialCFEkcGYLs6E/kNBTkqU7N 8rE7ovSYlww5g1X4L1+n/UKuwB+JR7qGrglELZqnfE7qM1YXPWf4WLwrEIYw== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=pass header.from=ffmpeg.org policy.dmarc=quarantine Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=ffmpeg.org policy.dmarc=quarantine DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1770522566; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : date : from; bh=xiyZZL1Xpc6YzSyvjyP1dr0dOL2rWSuGUpblJfO7C4U=; b=GTpDDW5rVzT+BDYp5rHWTwA/r2joYP5H30k1b6vfLvda7rcDZpsubXPMb8pEnEb4Djcux PnHSMCLuXryOp3Zwb414pw9aOPfDrBP733CBjvfo/rrVTntLl/t72Ganobwg9qhcGq+ikXs zdlsub9XYw3eVLPaz/7KHRb9X9MlC1xtXhzY1jHoV4q7Q7oaNGhlICETCvtpfQIzTxBNRku TCsHM07uoQrhPwujBygaC6CxjNBF0Mn8v0ab4eT4JJ50Y0OaNRRV3rYthtqJ6qLKyofIslj M1D0gCTCvd+OwZdvhdILNV+bJbNiDYxzzF7h0xe7eGAPzug3dHOlOy43o/oA== Received: from c8d966988b92 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id CBF7568F4CC for ; Sun, 8 Feb 2026 05:49:26 +0200 (EET) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Date: Sun, 08 Feb 2026 03:49:26 -0000 Message-ID: <177052256696.25.5089883281226044614@4457048688e7> Message-ID-Hash: 2VGYSKWQ43MOCXGOQDHONMRV5VMI2XJV X-Message-ID-Hash: 2VGYSKWQ43MOCXGOQDHONMRV5VMI2XJV X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PR] avcodec/adpcm: handle ADPCM_IMA_MAGIX like other similar codecs (PR #21682) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: michaelni via ffmpeg-devel Cc: michaelni Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #21682 opened by michaelni URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21682 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21682.patch Fixes: out of array access Fixes: 471509958/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ADPCM_IMA_MAGIX_DEC_fuzzer-4847227777646592 We ask for a mono sample because the implementation for mono is incomplete Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer >>From 8a8c4b9ec301dcfd626f41bd567b8f0336062dc1 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Sun, 8 Feb 2026 01:28:16 +0100 Subject: [PATCH] avcodec/adpcm: handle ADPCM_IMA_MAGIX like other similar codecs Fixes: out of array access Fixes: 471509958/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ADPCM_IMA_MAGIX_DEC_fuzzer-4847227777646592 We ask for a mono sample because the implementation for mono is incomplete Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer --- libavcodec/adpcm.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c index 31340af677..380e4a5df5 100644 --- a/libavcodec/adpcm.c +++ b/libavcodec/adpcm.c @@ -1216,7 +1216,6 @@ static int get_nb_samples(AVCodecContext *avctx, GetByteContext *gb, case AV_CODEC_ID_ADPCM_AGM: case AV_CODEC_ID_ADPCM_IMA_ACORN: case AV_CODEC_ID_ADPCM_IMA_DAT4: - case AV_CODEC_ID_ADPCM_IMA_MAGIX: case AV_CODEC_ID_ADPCM_IMA_MOFLEX: case AV_CODEC_ID_ADPCM_IMA_ISS: header_size = 4 * ch; break; case AV_CODEC_ID_ADPCM_IMA_SMJPEG: header_size = 4 * ch; break; @@ -1313,6 +1312,15 @@ static int get_nb_samples(AVCodecContext *avctx, GetByteContext *gb, buf_size = FFMIN(buf_size, avctx->block_align); nb_samples = (buf_size - 4 * ch) * 2 / ch; break; + case AV_CODEC_ID_ADPCM_IMA_MAGIX: + if (avctx->block_align > 0) + buf_size = FFMIN(buf_size, avctx->block_align); + nb_samples = (buf_size - 4 * ch) * 2 / ch; + if (ch == 1) { + avpriv_request_sample(avctx, "mono ADPCM Magix"); + return AVERROR_PATCHWELCOME; + } + break; CASE(ADPCM_IMA_WAV, int bsize = ff_adpcm_ima_block_sizes[avctx->bits_per_coded_sample - 2]; int bsamples = ff_adpcm_ima_block_samples[avctx->bits_per_coded_sample - 2]; @@ -1797,7 +1805,7 @@ static int adpcm_decode_frame(AVCodecContext *avctx, AVFrame *frame, } } - for (int m = 0; m < avctx->block_align-8; m += 8) { + for (int m = 0; m < channels*nb_samples/16; m ++) { uint32_t v0 = bytestream2_get_le32u(&gb); uint32_t v1 = bytestream2_get_le32u(&gb); -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org