]> git.tue.mpg.de Git - paraslash.git/commit
New audio formats: 32 bit float (little and big endian).
authorAndre Noll <maan@tuebingen.mpg.de>
Sat, 8 Sep 2018 10:11:33 +0000 (12:11 +0200)
committerAndre Noll <maan@tuebingen.mpg.de>
Sun, 15 Sep 2024 16:26:44 +0000 (18:26 +0200)
commit70c8a6a47190c1e92b61f2f1a1ecf7aa5093b9c8
treeaebd15037b35d1b12695912d8d4dadecfb1fd0cc
parent4596aa803eeae193b04980eb2242e8a7b76948b2
New audio formats: 32 bit float (little and big endian).

At least the little endian version seems to be popular these days. It
is only supported by ALSA, however. To check whether a given wave
file employs one of the two SF_FLOAT formats (aka IEEE float) we have
to consult the format code, a 16 bit integer stored at offset 20 of
the wave header which describes the waveform data according to the
table below.

0x0001 PCM
0x0003 IEEE float
0x0006 8-bit ITU-T G.711 A-law
0x0007 8-bit ITU-T G.711 MU-law
0xFFFE Determined by SubFormat

Additional checks are added to check_wav_post_select() which make
sure that the format code is either 1 or 3, and that the number is
compatible with the bits per sample value.
alsa_write.c
ao_write.c
check_wav.c
m4/lls/include/sample-format.m4
para.h