[FFmpeg-trac] #431(undetermined:closed): When converting audio to an MP3 using CBR, result is reported VBR

FFmpeg trac at avcodec.org
Wed Sep 21 12:29:39 EEST 2016


#431: When converting audio to an MP3 using CBR, result is reported VBR
-------------------------------------+-------------------------------------
             Reporter:  schtorch     |                    Owner:  michael
                 Type:  defect       |                   Status:  closed
             Priority:  normal       |                Component:
              Version:  git-master   |  undetermined
             Keywords:  CBR mp3      |               Resolution:  fixed
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------

Comment (by volker):

 Seems that the problem is back (or has not been fixed completely). This is
 the offending command line:

 {{{ffmpeg.exe -i infile.mp4 -loglevel error -stats -y -c:v libxvid -b:v
 1750k -c:a libmp3lame -b:a 128k -async 1 outfile.avi}}}

 Here's what ffprobe has to say:

 {{{ffprobe -v error infile.mp4}}}
 ffprobe version N-78197-g5893e87 Copyright (c) 2007-2016 the FFmpeg
 developers
   built with gcc 5.2.0 (GCC)
   configuration: --enable-gpl --enable-version3 --disable-w32threads
 --enable-av
 isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls
 --enab
 le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-
 libcaca --
 enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm
 --enable-l
 ibilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
 --enab
 le-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-
 librtmp --en
 able-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora
 --ena
 ble-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-
 amrwbenc
  --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp
 --enabl
 e-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-
 libzimg --
 enable-lzma --enable-decklink --enable-zlib
   libavutil      55. 16.101 / 55. 16.101
   libavcodec     57. 22.102 / 57. 22.102
   libavformat    57. 23.101 / 57. 23.101
   libavdevice    57.  0.101 / 57.  0.101
   libavfilter     6. 27.100 /  6. 27.100
   libswscale      4.  0.100 /  4.  0.100
   libswresample   2.  0.101 /  2.  0.101
   libpostproc    54.  0.100 / 54.  0.100
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'infile.mp4':
   Metadata:
     major_brand     : mp42
     minor_version   : 0
     compatible_brands: isommp42
     creation_time   : 2016-03-17 10:20:35
   Duration: 00:03:48.74, start: 0.000000, bitrate: 3027 kb/s
     Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
 1280x720
 [SAR 1:1 DAR 16:9], 2833 kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbc (default)
     Metadata:
       handler_name    : VideoHandler
     Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz,
 stereo, flt
 p, 191 kb/s (default)
     Metadata:
       creation_time   : 2016-03-17 10:20:37
       handler_name    : IsoMedia File Produced by Google, 5-11-2011

 {{{ffprobe outfile.avi}}}
 ffprobe version N-78197-g5893e87 Copyright (c) 2007-2016 the FFmpeg
 developers
   built with gcc 5.2.0 (GCC)
   configuration: --enable-gpl --enable-version3 --disable-w32threads
 --enable-av
 isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls
 --enab
 le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-
 libcaca --
 enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm
 --enable-l
 ibilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
 --enab
 le-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-
 librtmp --en
 able-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora
 --ena
 ble-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-
 amrwbenc
  --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp
 --enabl
 e-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-
 libzimg --
 enable-lzma --enable-decklink --enable-zlib
   libavutil      55. 16.101 / 55. 16.101
   libavcodec     57. 22.102 / 57. 22.102
   libavformat    57. 23.101 / 57. 23.101
   libavdevice    57.  0.101 / 57.  0.101
   libavfilter     6. 27.100 /  6. 27.100
   libswscale      4.  0.100 /  4.  0.100
   libswresample   2.  0.101 /  2.  0.101
   libpostproc    54.  0.100 / 54.  0.100
 Input #0, avi, from 'outfile.avi':
   Metadata:
     encoder         : Lavf57.23.101
   Duration: 00:02:35.09, start: 0.000000, bitrate: 1922 kb/s
     Stream #0:0: Video: mpeg4 (Simple Profile) (xvid / 0x64697678),
 yuv420p, 128
 0x720 [SAR 1:1 DAR 16:9], 1788 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc
     Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, stereo, s16p,
 128 k
 b/s

 {{{ffmpeg.exe -version}}}
 ffmpeg version N-78197-g5893e87 Copyright (c) 2000-2016 the FFmpeg
 developers
 built with gcc 5.2.0 (GCC)
 configuration: --enable-gpl --enable-version3 --disable-w32threads
 --enable-avis
 ynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls
 --enable
 -iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-
 libcaca --en
 able-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm
 --enable-lib
 ilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb
 --enable
 -libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp
 --enab
 le-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora
 --enabl
 e-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-
 amrwbenc -
 -enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp
 --enable-
 libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-
 libzimg --en
 able-lzma --enable-decklink --enable-zlib
 libavutil      55. 16.101 / 55. 16.101
 libavcodec     57. 22.102 / 57. 22.102
 libavformat    57. 23.101 / 57. 23.101
 libavdevice    57.  0.101 / 57.  0.101
 libavfilter     6. 27.100 /  6. 27.100
 libswscale      4.  0.100 /  4.  0.100
 libswresample   2.  0.101 /  2.  0.101
 libpostproc    54.  0.100 / 54.  0.100

 Screenshot from VirtualDub attached, it seems that is sees the MP3 stream
 encoded as "VBR" with a bitrate of exactly 128k. Unfortunately, this
 breaks compatibility with some hardware players and contradicts what -c:a
 libmp3lame -b:a 128k is advertised to do.

 Thanks for having a look.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/431#comment:18>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list