[FFmpeg-trac] #2686(avcodec:open): Native AAC encoder collapses at high bitrates on some samples

FFmpeg trac at avcodec.org
Sun Jun 30 17:26:18 CEST 2013


#2686: Native AAC encoder collapses at high bitrates on some samples
-------------------------------------+-------------------------------------
             Reporter:  Kamedo2      |                    Owner:
                 Type:  defect       |                   Status:  open
             Priority:  normal       |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  aac          |               Blocked By:
  regression                         |  Reproduced by developer:  1
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by Kamedo2):

 I successfully applied the patch. klaussfreire's repository is in here.
 http://ffmpeg.org/pipermail/ffmpeg-devel/2013-May/143216.html
 Or, you can use https://dl.dropboxusercontent.com/u/81238453/aac.patch
 (Thank you Takuan @K4095) to patch from current git head.

 However, still, it has a distinctive bug. The sound disappears partially
 when the sound is white noise-like.
 The bug #2706 was that the sound warbles when the sound was a sine wave.
 That was solved by this patch, but this creates new problem.

 {{{
 ffmpeg54292 -v 9 -loglevel
 99 -filter_complex "aevalsrc=-0.5+random(0)" -c:a aac -strict experimental
 -ar 4
 4100 -ac 2 -b:a 256k -t 4 "C:\Users\PCC\Documents\ABC-
 HR\whitenoise_256k.mp4"
 ffmpeg version N-54292-g97947d9 Copyright (c) 2000-2013 the FFmpeg
 developers
   built on Jun 30 2013 20:34:13 with gcc 4.8.1 (GCC)
   configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-
 libfdk
 -aac --extra-ldflags=-static --extra-cflags='-march=nocona -mfpmath=sse'
 --optfl
 ags=-O2
   libavutil      52. 38.100 / 52. 38.100
   libavcodec     55. 18.100 / 55. 18.100
   libavformat    55. 10.100 / 55. 10.100
   libavdevice    55.  2.100 / 55.  2.100
   libavfilter     3. 77.101 /  3. 77.101
   libswscale      2.  3.100 /  2.  3.100
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  3.100 / 52.  3.100
 Splitting the commandline.
 Reading option '-v' ... matched as option 'v' (set logging level) with
 argument
 '9'.
 Reading option '-loglevel' ... matched as option 'loglevel' (set logging
 level)
 with argument '99'.
 Reading option '-filter_complex' ... matched as option 'filter_complex'
 (create
 a complex filtergraph) with argument 'aevalsrc=-0.5+random(0)'.
 Reading option '-c:a' ... matched as option 'c' (codec name) with argument
 'aac'
 .
 Reading option '-strict' ... matched as AVOption 'strict' with argument
 'experim
 ental'.
 Reading option '-ar' ... matched as option 'ar' (set audio sampling rate
 (in Hz)
 ) with argument '44100'.
 Reading option '-ac' ... matched as option 'ac' (set number of audio
 channels) w
 ith argument '2'.
 Reading option '-b:a' ... matched as option 'b' (video bitrate (please use
 -b:v)
 ) with argument '256k'.
 Reading option '-t' ... matched as option 't' (record or transcode
 "duration" se
 conds of audio/video) with argument '4'.
 Reading option 'C:\Users\PCC\Documents\ABC-HR\whitenoise_256k.mp4' ...
 matched a
 s output file.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option v (set logging level) with argument 9.
 Applying option filter_complex (create a complex filtergraph) with
 argument aeva
 lsrc=-0.5+random(0).
 Successfully parsed a group of options.
 Parsing a group of options: output file C:\Users\PCC\Documents\ABC-
 HR\whitenoise
 _256k.mp4.
 Applying option c:a (codec name) with argument aac.
 Applying option ar (set audio sampling rate (in Hz)) with argument 44100.
 Applying option ac (set number of audio channels) with argument 2.
 Applying option b:a (video bitrate (please use -b:v)) with argument 256k.
 Applying option t (record or transcode "duration" seconds of audio/video)
 with a
 rgument 4.
 Successfully parsed a group of options.
 Opening an output file: C:\Users\PCC\Documents\ABC-HR\whitenoise_256k.mp4.
 detected 8 logical cores
 [Parsed_aevalsrc_0 @ 0140bea0] compat: called with args=[-0.5+random(0)]
 [Parsed_aevalsrc_0 @ 0140bea0] Setting 'exprs' to value '-0.5+random(0)'
 [audio format for output stream 0:0 @ 01412880] Setting 'sample_fmts' to
 value '
 fltp'
 [audio format for output stream 0:0 @ 01412880] Setting 'sample_rates' to
 value
 '44100'
 [audio format for output stream 0:0 @ 01412880] Setting 'channel_layouts'
 to val
 ue '0x3'
 Successfully opened the file.
 [audio format for output stream 0:0 @ 01412880] auto-inserting filter
 'auto-inse
 rted resampler 0' between the filter 'Parsed_aevalsrc_0' and the filter
 'audio f
 ormat for output stream 0:0'
 [AVFilterGraph @ 0039f3c0] query_formats: 3 queried, 6 merged, 3 already
 done, 0
  delayed
 [Parsed_aevalsrc_0 @ 0140bea0] sample_rate:44100 chlayout:mono
 duration:-1.00000
 0
 [auto-inserted resampler 0 @ 0039f2a0] [SWR @ 00393160] Using double
 precision m
 ode
 0.707107
 0.707107
 [auto-inserted resampler 0 @ 0039f2a0] ch:1 chl:mono fmt:dblp r:44100Hz ->
 ch:2
 chl:stereo fmt:fltp r:44100Hz
 Output #0, mp4, to 'C:\Users\PCC\Documents\ABC-HR\whitenoise_256k.mp4':
   Metadata:
     encoder         : Lavf55.10.100
     Stream #0:0, 0, 1/44100: Audio: aac ([64][0][0][0] / 0x0040), 44100
 Hz, ster
 eo, fltp, 256 kb/s
 Stream mapping:
   aevalsrc -> Stream #0:0 (aac)
 Press [q] to stop, [?] for help
 No more output streams to write to, finishing.
 size=     141kB time=00:00:04.01 bitrate= 288.4kbits/s
 video:0kB audio:140kB subtitle:0 global headers:0kB muxing overhead
 1.001409%
 0 frames successfully decoded, 0 decoding errors
 [AVIOContext @ 0141b640] Statistics: 30 seeks, 197 writeouts
 }}}

 The output mp4 I'm going to post sounds nothing like white noise.

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2686#comment:11>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list