Opened 5 years ago

Last modified 20 months ago

#8411 new enhancement

Support USAC / xHE-AAC

Reported by: Carl Eugen Hoyos Owned by:
Priority: wish Component: avcodec
Version: git-master Keywords: aac
Cc: ccom@randomderp.com, andrew.david.strong@gmail.com, yanjiew Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

xHE-AAC is currently not supported by FFmpeg, a sample stream is http://stream.radioh.no:443/rh.x16

$ ffmpeg -i rh.x16 
ffmpeg version N-95955-g12bbfc4cca Copyright (c) 2000-2019 the FFmpeg developers
  built with clang version 8.0.1 (tags/RELEASE_801/final 366581)
  configuration: --cc=clang --enable-gpl --enable-gnutls --enable-libxml2 --enable-libx264 --enable-libx265 --enable-libvpx --enable-libaom
  libavutil      56. 36.101 / 56. 36.101
  libavcodec     58. 64.101 / 58. 64.101
  libavformat    58. 35.101 / 58. 35.101
  libavdevice    58.  9.101 / 58.  9.101
  libavfilter     7. 67.100 /  7. 67.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
[aac_latm @ 0x3278800] Audio object type 42 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.                                                                                                 
[aac_latm @ 0x3278800] Audio object type 42 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.                                                                                                 

...

...

[aac_latm @ 0x3278800] Audio object type 42 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.
[aac_latm @ 0x3278800] Audio object type 42 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.
[loas @ 0x3276e40] decoding for stream 0 failed
[loas @ 0x3276e40] Could not find codec parameters for stream 0 (Audio: aac_latm, 0 channels, fltp): unspecified sample rate
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, loas, from 'rh.x16':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Audio: aac_latm, 0 channels, fltp
At least one output file must be specified

Attachments (1)

rh.x16 (561.9 KB ) - added by Carl Eugen Hoyos 5 years ago.

Download all attachments as: .zip

Change History (12)

by Carl Eugen Hoyos, 5 years ago

Attachment: rh.x16 added

comment:1 by Carl Eugen Hoyos, 5 years ago

Priority: normalwish

comment:2 by andrew46, 5 years ago

If it adds any weight to this enhancement request for FFmpeg to support USAC / xHE-AAC there is now (as of early 2020) an Open Source encoder available:

exhale
https://gitlab.com/ecodis/exhale

This will doubtless result in more xHE-AAC sample files circulating in 'the wild' and a greater interest in encoding and decoding xHE-AAC (USAC) files...

comment:3 by Elon Musk, 5 years ago

I deeply doubt that.

comment:4 by Christopher Degawa, 4 years ago

Cc: ccom@randomderp.com added

comment:5 by andrew46, 4 years ago

Cc: andrew.david.strong@gmail.com added

comment:6 by Alex-Frst, 4 years ago

At least it makes sence to automaticaly switch to libfdk_aac decoder (if it's present) to decode xHE-AAC (USAC) now.

comment:8 by Ronak Patel, 3 years ago

Hi, is there any update on when this support would be made available?

in reply to:  6 comment:9 by Balling, 2 years ago

Replying to Ajaja:

At least it makes sence to automaticaly switch to libfdk_aac decoder (if it's present) to decode xHE-AAC (USAC) now.

libfdk_aac is not compatible (or more accurately does not allow redistribution) with ffmpeg's license (with GPL, not LGPL compilation), just like openssl. So it does not make sense to make it default. We cannot.

Last edited 21 months ago by Balling (previous) (diff)

comment:10 by yanjiew, 21 months ago

Cc: yanjiew added

comment:11 by rafael2k, 20 months ago

I added another sample here:
http://abradig.org.br/xaac-sample/xaac-sample.mp4

I really think showing "Audio object type 42 is not implemented." is not a nice way to deal with the problem, as we most likely we will not have a xHE-AAC decoder in ffmpeg anytime soon... why not use the fdk-aac one?

Note: See TracTickets for help on using tickets.