>I've been experimenting with recording at >16 bit depths (Midiman Audiophile 
>and current ALSA CVS).

been doing it for a couple of years now :)

>Since 24-bit files are a right-royal-pain and the ALSA hw device for ice1712 
>uses a format of S32_LE, I've been recording to 32-bit .wav files, using both 
>arecord and snd (built with native alsa 0.9x support).
>
>Both produce valid wav files, however there is one awkward difference:
>there's a factor of 256 difference between the scaling, so files recorded in 
>snd are inaudible if played back by aplay and files recorded by arecord are 
>very clipped when viewed in snd. Both have only 24 significant bits (I'd be 
>worried if it were otherwise).
>
>Is there any general consensus as to which is the *right* thing to do? I can 
>certainly see that there are valid arguments for both ways of mapping 24 bits 
>into 32. (Actually I'm rather surprised that the choice is the way round that 
>it is since snd uses floats internally (?) so how does it know that the card 
>is really generating 24-bits?).

the hw params include information on both the sample bit width and
`m<ost>s<ignificant>bits', which tell you how (for example) the 24 bit
data is packed into 32 bits.

personally, i record 32 bit files all the time, but i prefer to
normalize the data into float format. there is not a single bit lost
by doing so, and the result avoids this issue completely. it also
means that you can play the result back at 16 bits with a very simple
conversion (albeit with dithering preferred).

i continue to think it pathetic that aplay cannot handle float WAV
files, and i would happily hack aplay to fix this. but since my
solution would involve using libsndfile, and since jaroslav seems to
want the -utils package to not rely on such libraries, there seems
little point.

--p



_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to