Opened 9 years ago
Closed 9 years ago
#5233 closed defect (fixed)
ffmpeg native aac encoder does not uses sensible default values to bitrate on multchannel audios
Reported by: | Marcus | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | undetermined |
Version: | unspecified | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | yes |
Description
The native ffmpeg native aac encoder defaults do 128kbps bitrate, regardless of the input audio is stereo or an AC3 / DTS multichannel audio.
The fdk_aac compiled ffmpeg defaults to 489kbps bitrate when the input is a 5.1 channel audio.
It would be nice if the ffmpeg aac native encoder uses 'sensible defaults' like the fdk_aac counterpart.
How to reproduce:
C:\Users\marcu\Downloads\ffmpeg-20160212-git-6973846-win64-static\ffmpeg-20160212-git-6973846-win64-static\bin>ffmpeg -i http://www.mysurround.com/test/TestMySurround-en.dbr.wma audio.mp4
ffmpeg version N-78395-g6973846 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 5.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
libavutil 55. 17.100 / 55. 17.100
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, asf, from 'http://www.mysurround.com/test/TestMySurround-en.dbr.wma':
Metadata:
WMFSDKNeeded : 0.0.0.0000
DeviceConformanceTemplate: M3
WM/WMADRCPeakReference: 32767
WM/WMADRCPeakTarget: 32767
WM/WMADRCAverageReference: 3822
WM/WMADRCAverageTarget: 3822
WMFSDKVersion : 11.0.5721.5145
IsVBR : 1
Duration: 00:00:54.04, start: 0.000000, bitrate: 297 kb/s
Stream #0:0(fre): Audio: wmapro (b[1][0][0] / 0x0162), 48000 Hz, 5.1, fltp, 384 kb/s
Output #0, mp4, to 'audio.mp4':
Metadata:
WMFSDKNeeded : 0.0.0.0000
DeviceConformanceTemplate: M3
WM/WMADRCPeakReference: 32767
WM/WMADRCPeakTarget: 32767
WM/WMADRCAverageReference: 3822
WM/WMADRCAverageTarget: 3822
WMFSDKVersion : 11.0.5721.5145
IsVBR : 1
encoder : Lavf57.25.100
Stream #0:0(fre): Audio: aac (LC) ([64][0][0][0] / 0x0040), 48000 Hz, 5.1, fltp, 128 kb/s
Metadata:
encoder : Lavc57.24.102 aac
Stream mapping:
Press [q] to stop, ? for help
[aac @ 0000020f47e6a8c0] Queue input is backward in timepeed=12.6x
[mp4 @ 0000020f47da4d60] Non-monotonous DTS in output stream 0:0; previous: 1199103, current: 1198080; changing to 1199104. This may result in incorrect timestamps in the output file.
[aac @ 0000020f47e6a8c0] Queue input is backward in timepeed= 9.8x
[mp4 @ 0000020f47da4d60] Non-monotonous DTS in output stream 0:0; previous: 2561007, current: 2559984; changing to 2561008. This may result in incorrect timestamps in the output file.
size= 473kB time=00:00:54.05 bitrate= 71.6kbits/s speed=9.97x
video:0kB audio:461kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.587044%
[aac @ 0000020f47e6a8c0] Qavg: 53019.391
Geral
Nome completo : C:\Users\marcu\Downloads\ffmpeg-20160212-git-6973846-win64-static\ffmpeg-20160212-git-6973846-win64-static\bin\audio.mp4
Formato : MPEG-4
Perfil do Formato : Base Media
ID do Codec : isom
Tamanho do arquivo : 473 KiB
Duração : 54s 80ms
Taxa de Bits Total, Modo : Variável
Taxa de Bits Total : 71.6 Kbps
Programa usado : Lavf57.25.100
Áudio
ID : 1
Formato : AAC
Formato/Informações : Advanced Audio Codec
Perfil do Formato : LC
ID do Codec : 40
Duração : 54s 80ms
Modo da taxa de bits : Variável
Taxa de bits : 69.8 Kbps
Taxa de bits máxima : 128 Kbps
Nº de canais : 2 canais
Channel(s)_Original : 6 canais
Posições dos canais : Front: L C R, Side: L R, LFE
Taxa de amostragem : 48.0 KHz
Tamanho da Faixa : 461 KiB (97%)
Idioma : Francês
Change History (2)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Analyzed by developer: | set |
---|---|
Reproduced by developer: | set |
Resolution: | → fixed |
Status: | new → closed |
Thanks for the report, the encoder will now pick a default bitrate based on the number of channels, type of channels and pairing (which provides a better estimate than libfdk's way of 64000*number_of_channels).
Fixed in git master, commit f0a8212436c4.
You should really never assume that a default bitrate is going to be "good", and instead simply set an appropriate value manually.