Files
ffmpeg/libavcodec
Ayoub Nabil 2312ae4d10 avcodec/ac3dec: avoid coefficient truncation in float decoder
The float decoder dequantized spectral coefficients into an int32_t
buffer using mantissa >> exponent. This discarded the fractional part
before conversion to float and substantially raised the dither noise
floor for low-level coefficients.

Store decoded coefficients as INTFLOAT and apply 2^-exponent directly
in the floating-point path. Keep the fixed-point decoder unchanged, and
perform coupling, rematrixing and final scaling in the native type.

This also removes the now-unused fmtconvert dependency. Add a synthetic
FATE test that measures the corrected dither level. Existing PCM
references remain within one sample except fate-ac3-2.0, whose measured
maximum difference is two samples.

Fixes #23684.
2026-08-19 15:29:46 +00:00
..
2026-06-17 17:34:24 +09:00
…
…
…
2026-07-01 21:05:27 +09:00
2026-07-01 21:05:27 +09:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-07-28 17:54:07 +02:00
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
…
…
2026-06-23 19:15:57 +02:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
2026-07-28 17:54:07 +02:00
2026-04-28 14:31:19 +02:00
…
…
…
…
…
…
…
2026-04-28 12:29:37 +00:00
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
…
2026-05-03 16:56:43 +02:00
…
…
2026-08-09 17:26:53 +02:00
…
2026-04-28 12:29:37 +00:00
2025-11-26 15:16:42 +01:00
…
…
…
2026-04-28 12:29:37 +00:00
…
…
…
…
…
2025-11-08 18:48:54 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…
2026-06-03 14:12:50 +09:00
…
2025-08-03 13:19:25 +00:00
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
2025-07-03 20:35:23 +02:00
…
…
…
…
…
…
…
…
2025-10-30 03:41:24 +01:00
2025-06-23 17:16:42 +10:00
…
…
…
…
…
…
2026-01-02 18:39:48 +01:00
2026-01-02 18:39:48 +01:00
2026-01-02 18:39:48 +01:00
…
2025-08-03 13:48:47 +02:00
…
…
2026-06-23 19:15:57 +02:00
…
…
…
…
2026-03-10 13:52:19 +01:00
…
…
…
2025-06-06 17:21:37 +02:00
…
…
…
2025-08-03 13:19:25 +00:00
…
…
…
2026-06-23 19:15:57 +02:00
…
…
2025-07-20 01:05:23 +02:00
…
…
…
…
…
…
2025-12-13 18:45:17 -03:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-05-03 18:23:03 +02:00
…
…
…
…
2026-07-07 17:35:58 +00:00
2026-07-07 17:35:58 +00:00
…
…
…
…
2026-07-28 17:54:07 +02:00
2026-06-13 15:55:40 +00:00
2025-12-30 17:30:45 +00:00
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
2026-03-10 13:52:19 +01:00
…
…
…
…
2026-01-02 18:39:48 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
2026-05-02 21:39:02 +00:00
…
…
2025-08-03 13:48:47 +02:00
…
…
…
2026-06-23 17:15:02 +02:00
…
2026-07-28 17:54:07 +02:00
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
2026-01-10 22:47:22 +01:00
2026-02-04 12:05:35 +08:00
2026-02-04 12:05:35 +08:00
…
…
…
2026-07-01 21:05:27 +09:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-10 13:52:19 +01:00
…
…
2025-07-03 20:34:51 +02:00
…
…
…
2025-08-03 13:48:47 +02:00
…
…
2025-07-03 20:35:23 +02:00
…
…
2026-02-19 22:39:35 +00:00
…
…
…
…
2026-03-28 11:25:38 +01:00
2026-03-28 11:25:38 +01:00
2026-03-28 11:25:38 +01:00
…
…
2025-08-11 11:54:31 +02:00
…
…
…
2026-05-03 18:22:24 +02:00
…
…
…
…
…
…
…
…
…
…
…
2026-03-02 19:01:46 +01:00
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
2026-08-13 13:17:59 +02:00
…
…
…
…
…
…
…
…
…
…
2026-08-09 17:25:23 +02:00
…
2026-08-09 17:25:23 +02:00
2026-08-09 17:25:23 +02:00
2026-08-09 17:25:23 +02:00
2026-08-09 17:25:23 +02:00
2026-08-09 17:25:23 +02:00
…
…
…
…
…
…
…
…
2026-03-10 13:52:18 +01:00
…
…
…
2026-06-23 19:15:57 +02:00
…
2026-04-28 12:29:37 +00:00
…
…
2025-08-03 13:48:47 +02:00
…
2025-06-21 22:08:52 +02:00
2026-04-28 12:29:37 +00:00
…
…
2025-08-03 13:48:47 +02:00
…
…
…
2026-07-28 17:54:07 +02:00
2025-08-20 11:20:14 +02:00
…
…
…
…
…
…
2026-03-10 13:52:19 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-06-23 19:15:57 +02:00
…
…
2026-01-02 18:39:48 +01:00
2026-01-02 18:39:48 +01:00
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
2026-03-16 10:24:33 +00:00
…
…
…
…
…
…
…