[FFmpeg-trac] #7287(avcodec:new): Audiotoolbox decodes 24-bit ALAC as 16-bit
FFmpeg
trac at avcodec.org
Fri Jun 29 16:19:58 EEST 2018
#7287: Audiotoolbox decodes 24-bit ALAC as 16-bit
--------------------------------------+-----------------------------------
Reporter: macdavis | Owner:
Type: defect | Status: new
Priority: normal | Component: avcodec
Version: git-master | Resolution:
Keywords: Audiotoolbox | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
--------------------------------------+-----------------------------------
Comment (by macdavis):
Replying to [comment:3 bpa]:[[BR]]
I checked the alac atom of the sample that I provided. It does say 16-bit.
Anyway, even for your patched sample, which I also checked being 24-bit,
Audiotoolbox still treats as 16-bit.
{{{
ffmpeg -c:a alac_at -i /Volumes/New\
Volume/Untitledsample_24_bit_alac_patched.m4a -f null -
ffmpeg version 3.4.git Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
configuration: --extra-cflags='-Ofast -march=native -m64 -finline-
functions -funroll-loops -ffunction-sections -fdata-sections -ffp-
contract=fast' --arch=x86_64 --cpu=haswell --disable-ffplay --disable-
runtime-cpudetect --disable-debug --disable-opencl --disable-avdevice
--enable-libfdk-aac --disable-doc --enable-hardcoded-tables
libavutil 56. 18.102 / 56. 18.102
libavcodec 58. 20.104 / 58. 20.104
libavformat 58. 17.101 / 58. 17.101
libavfilter 7. 25.100 / 7. 25.100
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Volumes/New
Volume/Untitledsample_24_bit_alac_patched.m4a':
Metadata:
major_brand : M4A
minor_version : 0
compatible_brands: M4A mp42isom
creation_time : 2018-06-28T17:03:28.000000Z
iTunSMPB : 00000000 00000000 00001000 0000000000190000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Duration: 00:00:37.24, start: 0.000000, bitrate: 219 kb/s
Stream #0:0(eng): Audio: alac (alac / 0x63616C61), 44100 Hz, stereo,
s16, 1246 kb/s (default)
Metadata:
creation_time : 2018-06-28T17:03:28.000000Z
Stream mapping:
Stream #0:0 -> #0:0 (alac (alac_at) -> pcm_s16le (native))
Press [q] to stop, [?] for help
Output #0, null, to 'pipe:':
Metadata:
major_brand : M4A
minor_version : 0
compatible_brands: M4A mp42isom
iTunSMPB : 00000000 00000000 00001000 0000000000190000
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
encoder : Lavf58.17.101
Stream #0:0(eng): Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s
(default)
Metadata:
creation_time : 2018-06-28T17:03:28.000000Z
encoder : Lavc58.20.104 pcm_s16le
size=N/A time=00:00:07.24 bitrate=N/A speed= 129x
video:0kB audio:1248kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: unknown
}}}
> Interesting - AFAICT the sample size in your file is 16 bit in alac atom
of the MPEG4 header. Is that what you see as well ?
>
> I think players can determine the sample size from the audio stream so
can play correctly ignoring MPEG4 ALAC atom details header except to say
it is a ALAC stream.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/7287#comment:4>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list