[alsa-devel] Question about Conversion to S24_LE from S24_3LE

Takashi Iwai tiwai at suse.de
Fri Aug 10 08:13:50 CEST 2012


At Fri, 10 Aug 2012 00:28:50 +0000,
Fujikawa, Kazutoshi wrote:
> 
> Hello.
> 
> I'd like to play a wav file converted from S24_3LE format to S24_LE by alsa-lib.
> (I use aplay command.)
> 
> I recognize the following:
> 
> <PCM format in wav file>
> ex. Valid PCM data is 0x123456.
> 
> S24_LE  :  0x12345600(in 4bytes, LSB 0 padding)

No, it's S32_LE.  The actual bit length the hardware supports is
informed via sbits (msbits) if it doesn't fill the whole 32bit.
But it's optional.

> S24_3LE :  0x123456  (in 3bytes, No padding)
> 
> 
> When the S24_LE format file is played, the ALSA driver receives data format is as follows:
> 
> 0x12345600 (LSB 0 padding)
> 
> 
> However, when the S24_3LE format file which is converted to S24_LE by alsa-lib is played, the ALSA driver receives data formats is as follows:
> 
> 0x00123456 (MSB 0(or 0xFF) padding)

This is the correct S24_LE representation.


Takashi


More information about the Alsa-devel mailing list