Decoding a 24 bit TAK file with ffmpeg git:
ffmpeg -i foo.tak bar.wav
ffmpeg version git-2013-01-08-ff6b340 Copyright © 2000-2013 the FFmpeg developers
built on Jan 8 2013 14:04:24 with gcc 4.7.2 (GCC)
configuration: --prefix=/usr --enable-gpl --enable-libass --enable-libfaac --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-nonfree --enable-x11grab
libavutil 52. 13.100 / 52. 13.100
libavcodec 54. 86.100 / 54. 86.100
libavformat 54. 59.106 / 54. 59.106
libavdevice 54. 3.102 / 54. 3.102
libavfilter 3. 32.100 / 3. 32.100
libswscale 2. 1.103 / 2. 1.103
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
[tak @ 0x1807740] max_analyze_duration 5000000 reached at 5124535
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, tak, from 'foo.tak':
Duration: 00:00:28.33, start: 0.000000, bitrate: 891 kb/s
Stream #0:0: Audio: tak, 44100 Hz, stereo, s32p
Output #0, wav, to 'bar.wav':
Metadata:
ISFT : Lavf54.59.106
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, stereo, s16, 1411 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (tak -> pcm_s16le)
Press [q] to stop, [?] for help
size= 4881kB time=00:00:28.33 bitrate=1411.2kbits/s
video:0kB audio:4881kB subtitle:0 global headers:0kB muxing overhead 0.001601%
The result is a 16 bit WAV file. The same used to be true with their FLAC decoder in ffmpeg version 1.0.