>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