At Thu, 07 Aug 2008 16:25:50 -0400, Charles Eidsness wrote:
Hi All,
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...
thanks,
Takashi