Re: S24_LE Mode for USB Driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Takashi Iwai wrote:
> Charles Eidsness wrote:
> > It looks like the parse_audio_format_i_type function at line 2369 of usbaudio.c
> > (linux v2.6.23) doesn't support the case where  bSubframeSize (fmt[5]) = 4 bytes
> > and  bBitResolution (fmt[6]) = 24 bits, which should correspond to a S24_LE (or
> > BE) type. I'm developing a new USD DAC which supports this mode (24-bit sample
> > in a 4 byte package). Right now Linux sends me S32_LE formated data, which is
> > wrong. Would it be possible to expand this function to support S24_LE/BE? It
> > would only require adding a few lines of code.
>
> Yes, it's possible, of course.
>
> BTW, is this behavior strictly defined?  I fail to find in the
> usb-audio spec that bBitResolution specifies the lower bits, not the
> higher bits...

The spec assumes that 24-bit samples use S24_3LE.  24-bit samples in
32-bit words are an extension that must be handled with some device-
specific code (like with the UA-1000).

(The audio 2.0 spec allows 32-bit words, and the wording seems to imply
that samples are aligned to the most significant bit, i.e., that S32_LE
would be used in this case.)


Regards,
Clemens
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux