Re: [ecasound] Problems with 24/96 over stdin

From: <kls.schlz@email-addr-hidden>
Date: Tue Apr 21 2009 - 23:17:30 EEST


Thx for looking into it. It seems we're getting there.
I also checked with Anders Torger if he could look into it to get
brutefir "Alsa-compatible".

It'll be a bit more difficult to convince the MPD guys to supply a bit more
flexibile interface. Though I won't complain. The brandnew pipe-out
interface is a huge step forward.


On Apr 21, 2009 9:50pm, Kai Vehmanen <kvehmanen@email-addr-hidden> wrote:
> Hi,

> On Tue, 21 Apr 2009, kls.schlz@email-addr-hidden wrote:

> The issue: "aplay" S24_LE can cope with the MPD output. MPD folks won't
> see a problem here.

> Alsa is setting the scene.

> [...]

> As I wrote yesterday, to me it seems, that there is a confusion in the
> Linux world about the

> different 24bits formats.

> yes, my original reply was incorrect. ALSA's S24_LE is 32bit with
> most-significant 8bits padded to zero. For 24bit samples that have LSB
> padded to zero, one should use S32_LE in ALSA (there's a separate

> 'msbits' in the hw_params struct that tells how many bits are valid.

> So with ALSA you have three options for 24bit samples:

> 1) S24_3LE => 24bit in three bytes (and similar for _BE)

> 2) S32_LE + msbits=24 => 24bit in four bytes, LSB zero-padded

> 3) S24_LE => 24bit in four bytes, MSB zero-padded

> Now ecasound supports (1) and (2) directly, but mpd outputs in format
> (3), so you get the attenuated signal (S24_LE and -f:s32_le).

> As a workaround, you can use -f:s32_le and use '-ea:25600' to shift the
> bits to the right place. The proper fix is to add (3) support to ecasound
> (and maybe to brutefir as well), but this is not entirely straighforward.
> I wonder wat would be a good ecasound -f option for
> (3).. '-f:s24_le_msb_padded' maybe, yikes! :P

Stay on top of everything new and different, both inside and
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today.
Use priority code J9JMT32.

Ecasound-list mailing list
Received on Wed Apr 22 00:15:06 2009

This archive was generated by hypermail 2.1.8 : Wed Apr 22 2009 - 00:15:06 EEST