[FFmpeg-trac] #11138(undetermined:new): FFmpeg audio dither creates unwanted DC offset

FFmpeg trac at avcodec.org
Tue Aug 13 07:24:56 EEST 2024


#11138: FFmpeg audio dither creates unwanted DC offset
-------------------------------------+-------------------------------------
             Reporter:  mstgrv       |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:  7.0
  undetermined                       |
             Keywords:  audio        |               Blocked By:
  dithering                          |
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 I ran a test of FFmpeg's audio dithering and I noticed that it creates a
 DC offset in the resulting audio file, which shouldn't be there. Doing the
 same dithering process with other tools produces no DC offset in the
 resulting audio.

 Here's what I did:

 1. Create a silent WAV file (44.1khz, 32-bit floating point) using iZotope
 RX.
 2. Convert that file to 16-bit with triangular dither, using iZotope RX
 3. Convert the same file to 16-bit with triangular dither, using FFmpeg.
 The command I used was:
 {{{
 ffmpeg -i input.wav -c:a pcm_s16le -dither_method triangular output.wav
 }}}

 Because the file in step 1 is completely silent, the files created in
 steps 2 & 3 contain just the dither by itself.

 FFmpeg's conversion results in a file with DC offset, but iZotope RX's
 conversion has none. The expected result is no DC offset.

 I have attached all the WAV files, plus screenshots of the analysis of
 each file (using iZotope RX) which shows the DC offset result.
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/11138>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list