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 0EF2A4AF97 for ; Thu, 22 Jan 2026 19:03:57 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'MEzUqGWfhOAqtHnMPggVQrRfuTjfA+OYxpQeQEY7eHw=', expected b'fECB8HHYx5nq1KySOCPVDjOsmJp+JTVJAx37zl+HX5E=')) 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=1769108629; 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=MEzUqGWfhOAqtHnMPggVQrRfuTjfA+OYxpQeQEY7eHw=; b=OjW3gnQHp7u/TCIwVzeZdBhNlRbdijSnuFp3bj66/Whcp+bCrc4xKXWi4X539zbKeshyU 9wiqkl0ZCWIvyjPY9INQPWiERAYUNZiagl1rTAeRQSOpwlVWlqpp1k9/v9gT/HH2QntTUrC kzruZoh359d2IwDyO+1s3OTM0MJhxeZQz7g7b1iQYl6ZuWlz8nEORw+Wx3Jr8Uj5xT2oXPa 9xlhIO44qz0LBciEP43DnGCJ5Z9jCwPru5cKFZ5JKvhOl3N9UQWMAdvl9mQ084/GEpimCPp Br54zvTwOsW96fpAODdcuWtwJfcX+6vz/e2g0+5CnNmSEAUmn0yQAfnbwv/A== Received: from [172.20.0.4] (unknown [172.20.0.4]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id A149F6910DF; Thu, 22 Jan 2026 21:03:49 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1769108614; b=o1JT9ttD4mC2cLrtYB8svCNbtjoJ3al6YEgK4+XYqo6d7jZYy021XKk/1AtCtUno1q6hZ +qQ3Ia3IzgXOZ/JxSw82Ovn/bekdWXToLgUzx4G6GJPTapLZSl2FLSi8TMGAcUnznfk0zvx scSzZgneqhq0iLlQg0dWalFAwNba4X/UioUC7BfhZRGsJPVlVxShsSSdOnILhuOsqml8npV C1rNIhoHX13VHfKZb/+E6m2xJPkZzxT0GvPSLxuF1K3Isi8Ek0J+lVTT3Ay4CLp/F4qFOWA ABr2BPeg1CSt46Tg3WQhGlrn2V4Z9BmtzBcY35uYooc3xcO9QYa6G/kB0bOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1769108614; 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=cHjcwjHVm63UOE0khDRPy5zq3LTVDozb+RACMMaz6Sw=; b=Iuhw1pEaZsvQLUdn2SXpXFI9H/rSs27pnYrbcR1eQfGO/J6tvGIeTkSWj4Mqv7PeT52ZB nXrRru0XWaY3aHT6HcDB0LIN8cfzRyPmZoBXi359KxoTxxK+JtSoCfNUiaEmP2hl2Rcg/tJ h9TmZ9REoC2md4E4CCz8rOsDAXdrCb/eOYZbSYgUD9bbqENoFHAW72VPaFFyiQlBoiz9vdL SEbs2U5kYOE7eA3HhetaVPiyCxDjFmUCoqVC892gdKxfDnvvEkJ6mEtae9axg2MNcOA290/ ibxZkJiyuZ7vclZAUWKfjc2ESxUtxCcSlFTi1JV8ZYYRPUowU/K08dWb1BwQ== 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=1769108606; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : date : from; bh=fECB8HHYx5nq1KySOCPVDjOsmJp+JTVJAx37zl+HX5E=; b=U8QWKnLxbdbbIZqYkzdkTpRRuHxAVHc1AY857si+rsHLeYVwUmRmCxpkPF22q48jyxgcD 14d1gP2aDhTdj/+gAoVW+0bkSRgjorFEdcQi2rn3D/zBCjcBmHesnbwNB72KiAV8eFeeVn4 1Xe/JtciSVrfRF2ngHncPBsqHqFVlaXOJgZn1QBosOH3MtpII1w8fCZKHWIyOE9592rvf4G D0a+ZtJC5kWB88Ih5CKFx/3LzaXW9QLfb4Kop46rJQagNI4TvMVOgpkjQDpIHH8CscIFHWh I9rMbhZDaovUwvfQnEs2b1F4KJl5D/UfyFbvSb7rc2d663Q0s/2T/vTUC6NA== Received: from 69dab402ede7 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 869A56910C9 for ; Thu, 22 Jan 2026 21:03:26 +0200 (EET) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Date: Thu, 22 Jan 2026 19:03:26 -0000 Message-ID: <176910860668.25.2125869130031570562@4457048688e7> Message-ID-Hash: 5VLMSB2HSXZHQXZ722HMAP4MSGWW2L2T X-Message-ID-Hash: 5VLMSB2HSXZHQXZ722HMAP4MSGWW2L2T 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] aacsbr_template: fix SBR USAC coupling (PR #21548) 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: Lynne via ffmpeg-devel Cc: Lynne Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #21548 opened by Lynne URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21548 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21548.patch This issue hid under the radar since the codebooks between coupling modes very often result in identical bit counts regardless of the encoded data, leading to no frame-level bitstream desyncs except in rare cases. AAC Mps212 data is parsed immediately after the SBR data, where a loss of sync in SBR will result in Mps212 being wildly different. >>From 82b768cfae1a1f69cb5ae927496083b935ce3837 Mon Sep 17 00:00:00 2001 From: Lynne Date: Thu, 22 Jan 2026 19:58:31 +0100 Subject: [PATCH] aacsbr_template: fix SBR USAC coupling This issue hid under the radar since the codebooks between coupling modes very often result in identical bit counts regardless of the encoded data, leading to no frame-level bitstream desyncs except in rare cases. AAC Mps212 data is parsed immediately after the SBR data, where a loss of sync in SBR will result in Mps212 being wildly different. --- libavcodec/aacsbr_template.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavcodec/aacsbr_template.c b/libavcodec/aacsbr_template.c index 3c39da509d..dd9340ff2c 100644 --- a/libavcodec/aacsbr_template.c +++ b/libavcodec/aacsbr_template.c @@ -1287,6 +1287,8 @@ int ff_aac_sbr_decode_usac_data(AACDecContext *ac, ChannelElement *che, if ((sbr->data[0].bs_add_harmonic_flag = get_bits1(gb))) get_bits1_vector(gb, sbr->data[0].bs_add_harmonic, sbr->n[1]); } else if (get_bits1(gb)) { /* bs_coupling == 1 */ + sbr->coupling = 1; + /* if (harmonicSBR) ... */ if (read_sbr_grid(ac, sbr, gb, &sbr->data[0])) @@ -1317,7 +1319,10 @@ int ff_aac_sbr_decode_usac_data(AACDecContext *ac, ChannelElement *che, if ((sbr->data[1].bs_add_harmonic_flag = get_bits1(gb))) get_bits1_vector(gb, sbr->data[1].bs_add_harmonic, sbr->n[1]); } else { /* bs_coupling == 0 */ + sbr->coupling = 0; + /* if (harmonicSBR) ... */ + if (read_sbr_grid(ac, sbr, gb, &sbr->data[0])) return -1; if (read_sbr_grid(ac, sbr, gb, &sbr->data[1])) -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org