Author Topic: Audio class devices and iChannelNames?  (Read 5321 times)

G40

  • Member
  • ***
  • Posts: 3
Audio class devices and iChannelNames?
« on: February 03, 2014, 01:29:43 pm »
Hello.

We are developing multi-channel recording hardware (Hi-speed USB and USB Audio 2 compliant). We would very much like to use the channel names feature but cannot find any examples, working or otherwise, on how this is done.

The relevant section of the spec is slightly confusing (at least to me) : "Index of a string descriptor, describing the name of the first logical channel in the Processing Unit’s output channel cluster. "

Issue 1 is that if the relevant member in the descriptor is set, neither Windows 7 or OSX Mavericks ever query the device to retrieve said string. Descriptor dump below. Is my interpetation of the spec correct?
Issue 2 is that the spec is unclear on the string format. Spec implies that a value of 12 implies 12 channel name strings. Are these supposed to be (for example) 12 contiguous zero-terminated strings returned in one packet when 'GetDescriptor' is called?

Many thanks ...

       ------- Audio Control Input Terminal Descriptor -------
bLength                  : 0x0C (12 bytes)
bDescriptorType          : 0x24 (Audio Interface Descriptor)
bDescriptorSubtype       : 0x02 (Input Terminal)
bTerminalID              : 0x01
wTerminalType            : 0x0201 (Microphone)
bAssocTerminal           : 0x00
bNrChannels              : 0x01
wChannelConfig           : 0x0000
iChannelNames            : 0x03
iTerminal                : 0x00

Barry Twycross

  • Frequent Contributor
  • ****
  • Posts: 263
Re: Audio class devices and iChannelNames?
« Reply #1 on: February 03, 2014, 05:07:19 pm »
I don't know the answer to your specific question. But in general, I would expect a string descriptor to be just like any other string descriptor in the system. Its a single string, which gives a human readable description of one specific thing. Each device can have lots of them.

As for Mac OS, there's an active list for USB questions at Apple (http://lists.apple.com, and look for the "USB" list). That's usually read by the person who knows the USB audio spec as well. You might get help there. As for the OS reading the descriptor, is there any reason it should. If there's a feature not implemented (like displaying a name when available), the list above is a good place to get the idea on someone's radar. Though filing a bug is the usual answer.

G40

  • Member
  • ***
  • Posts: 3
Re: Audio class devices and iChannelNames?
« Reply #2 on: February 04, 2014, 06:21:50 am »
Good idea, thanks for reading and thanks for the suggestion.