]> git.tuebingen.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>
Sat, 18 May 2024 20:04:09 +0000 (22:04 +0200)
commitb4cb84e1e872a6f9ea6fc9b54d9edda3950e58c8
tree7ef6ab101a6c0ff271d27a0e875b080b61bb3040
parentce90164c8b761e17e55a186c8b021ecb55b8fdb5
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