[FFmpeg-trac] #9544(undetermined:new): adding empty channels while downsampling with dithering leads to noise on new channels
FFmpeg
trac at avcodec.org
Thu Dec 2 12:42:04 EET 2021
#9544: adding empty channels while downsampling with dithering leads to noise on
new channels
-------------------------------------+-------------------------------------
Reporter: Harald | Type: defect
Linden |
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
1. Starting with a mono, 24bit, 48kHz audio file.
2. Adding 3 new channels leads to 3 additional, silent channels.
3. Downsampling the output to 16 bit with dithering leads to 1 channel
with signal and 3 silent channels.
4. Doing step 2 and 3 at once needs to accumulating noise on the silent
channels.
How to reproduce:
{{{
./ffmpeg --version
ffmpeg version N-104730-gbdc920574d Copyright (c) 2000-2021 the FFmpeg
developers built with gcc 11 (Debian 11.2.0-12)
ffmpeg -f lavfi -i "sine=frequency=1000:duration=1200" -c:a pcm_s24le
sine_mono_24bit.wav
ffmpeg -i sine_mono_24bit.wav -ac 4 sine_4c_24bit.wav
ffmpeg -i sine_4c_24bit.wav -af
aresample=osf=s16:dither_method=rectangular
./sine_4c_16bit_dither_noremap.wav
ffmpeg -i sine_mono_24bit.wav -af
aresample=osf=s16:dither_method=rectangular -ac 4
./sine_4c_16bit_dither_remap.wav
}}}
sine_4c_16bit_dither_noremap.wav will have one channel with signal and
three silent ones.
sine_4c_16bit_dither_remap.wav should be the same, but will have
accumulating noise on the silent channels.
I discovered this while reencoding a combined 24-bit/5.1/2.0 source to
16-bit/5.1/5.1. The result had accumulating noise on the second audio
stream.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9544>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list