[alsa-devel] S24_LE is 3 bytes ? in alsa-lib example pcm.c

Jaroslav Kysela perex at perex.cz
Thu Jul 10 12:19:05 CEST 2008


On Thu, 10 Jul 2008, Clemens Ladisch wrote:

> Norbert van Bolhuis wrote:
> > as far as I know:
> > sample format S24_LE is 24bit sample in 4 bytes
> > sample format S24_3LE is 24bit sample in 3 bytes
> > (why else have separate definitions), right ?
> 
> Yes.
> 
> > In the ALSA-LIb example /test/pcm.c however
> > (http://www.alsa-project.org/alsa-doc/alsa-lib/_2test_2pcm_8c-example.html)
> > there is no diff between the 2 sample formats.
> 
> That example program uses snd_pcm_format_width() although it should
> have used snd_pcm_format_physical_width() when calculating memory
> buffer sizes.

I think that the problem is in wrong area->step calculation in alsa-lib, 
but I'm still investigating where the real culprit is. The
snd_pcm_format_width() is used only for sample filling (which is OK).

						Jaroslav

-----
Jaroslav Kysela <perex at perex.cz>
Linux Kernel Sound Maintainer
ALSA Project, Red Hat, Inc.



More information about the Alsa-devel mailing list