[wdmaudiodev] Re: USB audio multiple recording channels

  • From: uwe kirst <u.kirst@xxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Fri, 18 Apr 2003 13:29:08 +0200

rgruner@xxxxxx wrote:

>Hi!
>
>I am developing a multichannel USB 2.0 audio device for recording 4 mono
>audio channels, i.e. 2 stereo channels. It is intended to be managed by Windows
>audio device class driver. For now I'm still experimenting with different
>device topologies.
>
>According to USB class definition for audio devices it should be possible to
>manage two (or more) stereo channels by defining 2 stereo Input Terminals
>(type microphone) and two Output Terminals (USB Streaming) which directly
>connect to the two ITs. All terminals reside in the same Audio Control 
>Interface.
>In the Audio Streaming Interface I define 2 Endpoints which connect to the
>Output Terminals.
>
>When connecting this device Windows detects it and loads the appropriate
>drivers but I can only access the first stereo channel pair, the other one is
>not visible. The utility grapher from the DDK however,  shows the intended
>topology.
>
>I tried a second design which connects as two seperate devices to Windows,
>each containing a pair of stereo channels. Doing it this way allows me to
>access all channels correctly but it blows up my descriptors (which are
>restricted in size by the USB I/F Chip I'm using) enormously.
>
>Now my question: Is Windows in general only able to handle one stereo
>channel for recording per device or is there a way to record more channels 
>without
>enumerating as multiple devices?
>
>Thanks for your help!
>
>Robert
>
>
>  
>
Hi Robert,
I'm currently developing drivers for a mulitchannel firewire audio 
device. I can only tell you about my experince. I think it is not 
possible to have different "device"-friendly names for each pin of one 
device. Though it is possible to have more channels.
I would be glad if someone would tell me a way howto name each pin (This 
would also be a great solution to the Windows 10/32 channel limit).   
I think the number of interleaved audio channels per pin is not limited 
at all. At least I was able to play 28 channels with sonar. You just 
have to support the interleaved format. The problem with this approach 
is: Most applications do not support the interleaved format, they still 
use stereo or mono channels only. Therefore you have to support both: 
multichannel interleaved and multidevice stereo (and multidevice mono 
for "asio"). This makes thinks very complicated, because you must be 
able to change the channel configuration on the fly depending on the 
application you use.
There is also some discussion on this list about this topic.
The Windows 10/32 channel device limit makes it necessary to reduce the 
number of devices as much as possible. It may not be possible to access 
all devices as mono or stereo devices.
The multidevice Stereo Format is very inefficient, because each device 
has its own interrupt routine and so on; another reason to use both formats.
Uwe


   

******************

WDMAUDIODEV addresses:
Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx
Subscribe:    mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe
Unsubscribe:  mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe
Moderator:    mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx

URL to WDMAUDIODEV page:
http://www.wdmaudiodev.de/

Other related posts: