From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <5bf0e5a7a3dbd4beb21bb004959f2011@coraid.com> To: sape@plan9.bell-labs.com, 9fans@cse.psu.edu Date: Thu, 8 Jul 2004 14:34:36 -0400 Subject: Re: [9fans] TODO lists for Plan 9 From: Brantley Coile MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Cc: Topicbox-Message-UUID: ba3d2576-eacd-11e9-9e20-41e7f4b1d025 > if someone knows how to get the USB audio working in plan 9, please let me > know. I wrote the first cut at the USB audio driver. There is a standard for USB audio that some devices obey. Our driver implements a subset of that standard. The standard specifies a bunch of audio components inside a USB audio device. There are USB inputs and outputs, speakers, microphones, line-in, line-out, and other ports, volume controls, treble/bass controls, switches, mixers, equalizers and so on. The list is endless. Each component connects to other components. When starting up, you need to read the `descriptors' for each of the components, find out the interconnections and discover the internal topology (if you want to know which volume control controls playback volume, you've got to study the topology). Buttons on a USB device are usually just buttons that you can read. You have to find out what the buttons mean by reading more descriptors. Writing a generic USB audio driver that can tackle arbitrary USB devices is not a trivial task, especially if you only have one or two devices to try out on. I can successfully drive Philips Model DSS 370/17 USB speakers, the Xitel AN-1, Xitel MD and Edirol UA-3. I tried a Roland device that turnen out to be completely non standard, haven't tried anything else. Sape