Re: Cannot set channels number for the output of a USB audio 2.0 class compliant device
Re: Cannot set channels number for the output of a USB audio 2.0 class compliant device
- Subject: Re: Cannot set channels number for the output of a USB audio 2.0 class compliant device
- From: Philippe Wicker <email@hidden>
- Date: Mon, 04 Apr 2016 10:30:00 +0200
Brian,
The limitations comes from the way ADAT is managing different sample
rates. With that kind of device the number of channels is linked to the
sample rate (as you probably already know). Our device has 6 "analog"
IN/OUT channels and up to 8 IN/OUT digital channels. The "8 channels"
case being the use of a 44.1/48K ADAT link, the 4 channels the use of a
88.2/96K ADAT link and "2 channels" the use of a 176.4/192K ADAT link.
So we range from 8 to 14 channels depending on the sample rate. Because
of some firmware internal limitations I don't fully understand yet, I
have to keep the max number of IN/OUT channels under 10 in order to get
a working device at 176.4/192K.
This is why I was experimenting with different alternate configurations.
I've finally been able to solve the discrepancy between IN and OUT (it
was a consequence of an overwrite of the channels number in the USB
descriptors by the original firmware when the device is enumerated, when
the host is requesting configuration descriptors for different USB
speed). Now, Audio MIDI Setup displays correctly my 3 alternate
configurations. And then I have the problem of the max number of
channels mentioned above. I have a working device if I compile 3
hard-coded configurations in 3 different firmware binaries.
I think it's a problem coming from the modifications I have made to the
original firmware (a reference design from a well known manufacturer).
So I'll contact them to analyze it.
Anyway, thank you for your help.
Philippe
On 03/04/16 04:56, Brian Willoughby wrote:
Philippe,
On Mar 31, 2016, at 6:40 AM, Philippe Wicker <email@hidden> wrote:
On 31/03/16 07:17, Brian Willoughby wrote:
https://developer.apple.com/library/mac/technotes/tn2274/_index.html
Another aspect of your question seems to revolve around whether you can tie the number of input channels to output channels. I haven't reviewed the USB Audio 2.0 specifications looking for this particular answer, but I suspect that you'll need to represent your requirements in the USB Descriptors before OSX will know how to match the input and output channel counts.
To my understanding Clock and Streams descriptors are independent. And IN and OUT Streams descriptors are also independent. Which means that it could be possible to choose some streams configuration for the Input side, and another for the Output side. This is a point I'll have to investigate, how to make sure that a user won't be able to choose non consistent configurations.
What are your actual limitations?
Are input and output both going through a shared CODEC where the sample rates must match? I understand the ADAT channel limitations are based on sample rate, so those can't be exceeded.
If you try other USB Descriptors, let us know your results. You might want to restart this thread on the USB list at that point.
Brian
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden