Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#9564 closed defect (fixed)

Cannot decode xHE-AAC with audiotoolbox (aac_at) on Mac OS Monterey

Reported by: death Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: Audiotoolbox apple
Cc: Christopher Snowhill Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

I'm no longer able to decode xHE-AAC files on Mac OS Monterey using aac_at decoder.
Note that the built-in FFmpeg AAC decoder doesn't support xHE-AAC.
On previous Mac OS versions, these tracks were only possible to decode by explicitly specifying aac_at decoder.

Good output (Mac OS Catalina):
https://www.foobar2000.org/temp/ffmpeg-xheaac/good.txt

Bad output 1 (Mac OS Monterey, ARM64):
https://www.foobar2000.org/temp/ffmpeg-xheaac/bad.txt

Bad output 2 (Mac OS Monterey virtual machine, Intel):
https://www.foobar2000.org/temp/ffmpeg-xheaac/bad2.txt

Example file that I used to produce the above logs:
https://www.foobar2000.org/temp/ffmpeg-xheaac/fear-xheaac.m4a

Thanks.

Change History (4)

comment:1 by Christopher Snowhill, 2 years ago

Cc: Christopher Snowhill added

Here are two patches:

https://gist.github.com/kode54/5c5005be2365ef7c4592f9cbccb898bc

The first patch fixes the bug, the second is just a quality of life enhancement to output all the formats that are likely to be float internally as floating point, instead of outputting as int32 or int16.

comment:2 by death, 2 years ago

Applied Christopher's patches, problem confirmed fixed.

Please merge these patches with mainline FFmpeg.

Thanks.

comment:3 by Christopher Snowhill, 2 years ago

I have also submitted these two patches separately to the ffmpeg-devel mailing list.

comment:4 by Balling, 2 years ago

Resolution: fixed
Status: newclosed

Fixed in 944b8c96c90ae050606e638f77a15d6292209b91.

What about float patches? How can you be sure internal format is float?

Last edited 2 years ago by Balling (previous) (diff)
Note: See TracTickets for help on using tickets.