Opened 2 years ago

Closed 6 months ago

#4544 closed defect (fixed)

Problem transcoding 5.1 AAC LATM audio streams

Reported by: chq.contact Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: aac latm sbr
Cc: ffmpeg@tmm1.net Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:
I´ve captured some AAC LATM streams that are being broadcasted (DVB-T) here in Brazil and tried to transcode them using FFmpeg. The stereo streams work fine but the 5.1 streams are generating some error messages during transcode.

Besides that, the resulting file is always a little smaller in duration than the original (when there´s music, you can more easily notice that the resulting audio seems to be playing "faster", due to missed samples I guess).

I´ve found some old tickets related to AAC streams (ticket:1694 and ticket:2335) with similar error messages, and testing the samples provided there also got me the same behaviour.

How to reproduce:

% ffmpeg -report -v 9 -loglevel 99 -i problem_transcoding_5dot1_aac_latm_audio.aac out.wav
ffmpeg version N-71959-g9253cc4
built on 2015-05-07

I have uploaded the problem_transcoding_5dot1_aac_latm_audio.aac file to the "incoming" folder of the FTP. I´ve also uploaded the complete report generated by FFmpeg under the name problem_transcoding_5dot1_aac_latm_audio.log.

Here´s is part of the full report:

ffmpeg started on 2015-05-08 at 15:41:24
Report written to "ffmpeg-20150508-154124.log"
Command line:
ffmpeg -report -v 9 -loglevel 99 -i problem_transcoding_5dot1_aac_latm_audio.aac out.wav
ffmpeg version N-71959-g9253cc4 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.2 (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-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma --enable-decklink --enable-zlib
  libavutil      54. 23.101 / 54. 23.101
  libavcodec     56. 37.102 / 56. 37.102
  libavformat    56. 32.100 / 56. 32.100
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 16.101 /  5. 16.101
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
Splitting the commandline.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
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 '-i' ... matched as input file with argument 'problem_transcoding_5dot1_aac_latm_audio.aac'.
Reading option 'out.wav' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Applying option v (set logging level) with argument 9.
Applying option loglevel (set logging level) with argument 99.
Successfully parsed a group of options.
Parsing a group of options: input file problem_transcoding_5dot1_aac_latm_audio.aac.
Successfully parsed a group of options.
Opening an input file: problem_transcoding_5dot1_aac_latm_audio.aac.
[loas @ 0000000002e10200] Format loas probed with size=4096 and score=51
[loas @ 0000000002e10200] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0
[aac_latm @ 0000000002e23000] no decoder config found
[aac_latm @ 0000000002e23000] no decoder config found
[aac_latm @ 0000000002e23000] no decoder config found
[aac_latm @ 0000000002e23000] initializing latmctx
[aac_latm @ 0000000002e23000] channel element 0.2 is not allocated
[aac_latm @ 0000000002e23000] This stream seems to incorrectly report its last channel as LFE[5], mapping to LFE[0]
[aac_latm @ 0000000002e23000] ChannelElement 3.5 missing 
[aac_latm @ 0000000002e23000] ChannelElement 1.2 missing 
[aac_latm @ 0000000002e23000] ChannelElement 1.4 missing 
[loas @ 0000000002e10200] All info found
[loas @ 0000000002e10200] After avformat_find_stream_info() pos: 60416 bytes read:65536 seeks:0 frames:50
Input #0, loas, from 'problem_transcoding_5dot1_aac_latm_audio.aac':
  Duration: N/A, bitrate: N/A
    Stream #0:0, 50, 1/28224000: Audio: aac_latm (HE-AAC), 48000 Hz, 5.1, fltp
Successfully opened the file.
Parsing a group of options: output file out.wav.
Successfully parsed a group of options.
Opening an output file: out.wav.
Successfully opened the file.
detected 8 logical cores
[graph 0 input from stream 0:0 @ 0000000002e2f920] Setting 'time_base' to value '1/48000'
[graph 0 input from stream 0:0 @ 0000000002e2f920] Setting 'sample_rate' to value '48000'
[graph 0 input from stream 0:0 @ 0000000002e2f920] Setting 'sample_fmt' to value 'fltp'
[graph 0 input from stream 0:0 @ 0000000002e2f920] Setting 'channel_layout' to value '0x3f'
[graph 0 input from stream 0:0 @ 0000000002e2f920] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x3f
[audio format for output stream 0:0 @ 0000000002e2eda0] Setting 'sample_fmts' to value 's16'
[audio format for output stream 0:0 @ 0000000002e2eda0] auto-inserting filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and the filter 'audio format for output stream 0:0'
[AVFilterGraph @ 0000000002e336e0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto-inserted resampler 0 @ 00000000055e0720] ch:6 chl:5.1 fmt:fltp r:48000Hz -> ch:6 chl:5.1 fmt:s16 r:48000Hz
Output #0, wav, to 'out.wav':
  Metadata:
    ISFT            : Lavf56.32.100
    Stream #0:0, 0, 1/48000: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz, 5.1, s16, 4608 kb/s
    Metadata:
      encoder         : Lavc56.37.102 pcm_s16le
Stream mapping:
  Stream #0:0 -> #0:0 (aac_latm (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
[aac_latm @ 0000000005956020] This stream seems to incorrectly report its last channel as LFE[5], mapping to LFE[0]
[aac_latm @ 0000000005956020] channel element 0.2 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] channel element 0.2 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] channel element 0.2 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
Guessed Channel Layout for  Input Stream #0.0 : 5.1
Input stream #0:0 frame changed from rate:48000 fmt:fltp ch:6 chl:5.1 to rate:48000 fmt:fltp ch:6 chl:5.1
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'time_base' to value '1/48000'
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'sample_rate' to value '48000'
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'sample_fmt' to value 'fltp'
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'channel_layout' to value '0x3f'
[graph 0 input from stream 0:0 @ 0000000002e2f080] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x3f
[audio format for output stream 0:0 @ 0000000002e2fc00] Setting 'sample_fmts' to value 's16'
[audio format for output stream 0:0 @ 0000000002e2fc00] Setting 'sample_rates' to value '48000'
[audio format for output stream 0:0 @ 0000000002e2fc00] Setting 'channel_layouts' to value '0x3f'
[audio format for output stream 0:0 @ 0000000002e2fc00] auto-inserting filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and the filter 'audio format for output stream 0:0'
[AVFilterGraph @ 0000000002e336e0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto-inserted resampler 0 @ 00000000055e0a00] ch:6 chl:5.1 fmt:fltp r:48000Hz -> ch:6 chl:5.1 fmt:s16 r:48000Hz
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] channel element 0.2 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
Guessed Channel Layout for  Input Stream #0.0 : 5.1
Input stream #0:0 frame changed from rate:48000 fmt:fltp ch:6 chl:5.1 to rate:48000 fmt:fltp ch:6 chl:5.1
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'time_base' to value '1/48000'
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'sample_rate' to value '48000'
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'sample_fmt' to value 'fltp'
[graph 0 input from stream 0:0 @ 0000000002e2f080] Setting 'channel_layout' to value '0x3f'
[graph 0 input from stream 0:0 @ 0000000002e2f080] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x3f
[audio format for output stream 0:0 @ 00000000055e0a00] Setting 'sample_fmts' to value 's16'
[audio format for output stream 0:0 @ 00000000055e0a00] Setting 'sample_rates' to value '48000'
[audio format for output stream 0:0 @ 00000000055e0a00] Setting 'channel_layouts' to value '0x3f'
[audio format for output stream 0:0 @ 00000000055e0a00] auto-inserting filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and the filter 'audio format for output stream 0:0'
[AVFilterGraph @ 0000000002e336e0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto-inserted resampler 0 @ 0000000002e2fc00] ch:6 chl:5.1 fmt:fltp r:48000Hz -> ch:6 chl:5.1 fmt:s16 r:48000Hz
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] channel element 0.2 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
Guessed Channel Layout for  Input Stream #0.0 : 5.1
Input stream #0:0 frame changed from rate:48000 fmt:fltp ch:6 chl:5.1 to rate:48000 fmt:fltp ch:6 chl:5.1
[graph 0 input from stream 0:0 @ 0000000002e2f640] Setting 'time_base' to value '1/48000'
[graph 0 input from stream 0:0 @ 0000000002e2f640] Setting 'sample_rate' to value '48000'
[graph 0 input from stream 0:0 @ 0000000002e2f640] Setting 'sample_fmt' to value 'fltp'
[graph 0 input from stream 0:0 @ 0000000002e2f640] Setting 'channel_layout' to value '0x3f'
[graph 0 input from stream 0:0 @ 0000000002e2f640] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x3f
[audio format for output stream 0:0 @ 00000000055e0a00] Setting 'sample_fmts' to value 's16'
[audio format for output stream 0:0 @ 00000000055e0a00] Setting 'sample_rates' to value '48000'
[audio format for output stream 0:0 @ 00000000055e0a00] Setting 'channel_layouts' to value '0x3f'
[audio format for output stream 0:0 @ 00000000055e0a00] auto-inserting filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and the filter 'audio format for output stream 0:0'
[AVFilterGraph @ 0000000002e336e0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto-inserted resampler 0 @ 0000000002e2fc00] ch:6 chl:5.1 fmt:fltp r:48000Hz -> ch:6 chl:5.1 fmt:s16 r:48000Hz
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
[aac_latm @ 0000000005956020] channel element 0.2 is not allocated
Error while decoding stream #0:0: Invalid data found when processing input
[aac_latm @ 0000000005956020] ChannelElement 3.5 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.2 missing 
[aac_latm @ 0000000005956020] ChannelElement 1.4 missing 
Guessed Channel Layout for  Input Stream #0.0 : 5.1
Input stream #0:0 frame changed from rate:48000 fmt:fltp ch:6 chl:5.1 to rate:48000 fmt:fltp ch:6 chl:5.1
[graph 0 input from stream 0:0 @ 0000000002e2fc00] Setting 'time_base' to value '1/48000'
[graph 0 input from stream 0:0 @ 0000000002e2fc00] Setting 'sample_rate' to value '48000'
[graph 0 input from stream 0:0 @ 0000000002e2fc00] Setting 'sample_fmt' to value 'fltp'
[graph 0 input from stream 0:0 @ 0000000002e2fc00] Setting 'channel_layout' to value '0x3f'
[graph 0 input from stream 0:0 @ 0000000002e2fc00] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x3f
[audio format for output stream 0:0 @ 0000000002e0dec0] Setting 'sample_fmts' to value 's16'
[audio format for output stream 0:0 @ 0000000002e0dec0] Setting 'sample_rates' to value '48000'
[audio format for output stream 0:0 @ 0000000002e0dec0] Setting 'channel_layouts' to value '0x3f'
[audio format for output stream 0:0 @ 0000000002e0dec0] auto-inserting filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and the filter 'audio format for output stream 0:0'
[AVFilterGraph @ 0000000002e336e0] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto-inserted resampler 0 @ 0000000002e0df80] ch:6 chl:5.1 fmt:fltp r:48000Hz -> ch:6 chl:5.1 fmt:s16 r:48000Hz

... snipped

Attachments (2)

problem_transcoding_5dot1_aac_latm_audio.aac (1.6 MB) - added by chq.contact 2 years ago.
problem_transcoding_5dot1_aac_latm_audio.log (393.3 KB) - added by chq.contact 2 years ago.

Download all attachments as: .zip

Change History (12)

Changed 2 years ago by chq.contact

Changed 2 years ago by chq.contact

comment:1 Changed 2 years ago by chq.contact

Hi, I would like to add that other players like VLC and Windows Media Player can play this file without any noticeable problem. There are no glitches or changes in the audio duration that indicate dropped samples.

comment:2 Changed 2 years ago by chq.contact

  • Resolution set to fixed
  • Status changed from new to closed

comment:3 Changed 2 years ago by chq.contact

  • Resolution fixed deleted
  • Status changed from closed to reopened

comment:4 Changed 2 years ago by cehoyos

  • Component changed from undetermined to avcodec
  • Keywords aac latm sbr added
  • Reproduced by developer set
  • Status changed from reopened to open
  • Version changed from unspecified to git-master

The vlc output is around 10 percent longer, both with and without --codec=ffmpeg (the FFmpeg decoder works fine for the given sample in vlc).

comment:5 Changed 2 years ago by cehoyos

Additional samples from ticket #4576 uploaded:
http://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket4544

comment:6 Changed 7 months ago by tmm1

  • Cc ffmpeg@tmm1.net added

comment:7 Changed 7 months ago by tmm1

DVB-T streams in Brazil and Singapore use AAC SSR (Scalable Sample Rate), and cannot be decoded by ffmpeg. On ffmpeg master, I see the following message:

[aac_latm @ 0x7fe396001c00] SSR is not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.

According to https://lists.libav.org/pipermail/ffmpeg-devel/2008-July/049282.html, there was an implementation of SSR that never made it to master:

The code for LTP and SSR is still in the Summer of Code repository for anyone who is interested in working on either of those features in the future.

And according to https://en.wikipedia.org/wiki/MPEG-4_Part_3#AAC-SSR:

MPEG-4 AAC-SSR is very similar to ATRAC and ATRAC-3.

So the existing atrac and atrac3 decoders might be useful as well.

comment:8 Changed 7 months ago by tmm1

The SoC repo mentioned is available via:

svn co svn://svn.mplayerhq.hu/soc
cd aac

The SSR implementation is behind a -DAAC_SSR compile flag, and disabled by default with the following comment:

AAC SSR (Scalable Sample Rate) is currently not working, and therefore
not compiled in. SSR files play without crashing but produce audible
artifacts that seem to be related to EIGHT_SHORT_SEQUENCE windows.

It seems mostly complete, though it will definitely take some work to port the changes over to master.

comment:9 Changed 7 months ago by tmm1

Sorry, it looks like I am mistaken and the Brazil DVB-T issue is not related to SSR. Appears to be a separate issue in the AAC decoder. With ffmpeg master and the original sample from this ticket, I see the following errors:

[aac_latm @ 0x7ff246000c00] channel element 0.2 is not allocated
Error while decoding stream #0:4: Invalid data found when processing input
[aac_latm @ 0x7ff246000c00] element type mismatch 1 != 0
Last message repeated 1 times
Guessed Channel Layout for Input Stream #0.4 : 5.1
Input stream #0:4 frame changed from rate:48000 fmt:fltp ch:6 chl:5.1 to rate:48000 fmt:fltp ch:6 chl:5.1

There is no mention of SSR. Sorry for hijacking this ticket.

comment:10 Changed 6 months ago by richardpl

  • Resolution set to fixed
  • Status changed from open to closed
Note: See TracTickets for help on using tickets.