Hello @all!
I currently develop an USB Audio Device according to the version 2 of
the specification and have severe synchronization issues with the
explicit feedback endpoint. As it seems the feedback is never queried by
OS X and so there are clicks in the final audio stream.
The device supports:
- 1 Input Terminal with two channels as USB Streaming Terminal
- 1 Clock Source, configurable to 44.1, 48, 96 or 192kHz
- 1 Feature Unit, providing mute and level
- 1 Output Terminal with two channels output as Speaker Terminal Type
Connection: IT -> FU -> OT
Clocking: IT and OT are clocked by the configurable clock source
The Input Terminal has two endpoints assigned, one streaming EP and one
feedback Endpoint (both configured as described in the USB DC Spec).
Basically OS X configures the device to operate under 192kHz and
playback works, but clocks are not perfect and so the buffer within the
device drains until the device mutes the interface. Short afterwards the
buffer is filled again and the device starts playback again. This could
be heared as "click".
To handle that situation the device supports an explicit feedback
endpoint providing the information on how many samples/uFrame in the
fixed point 16.16 format is provided by the device. Interestingly OS X
(10.10) never schedules a transfer on that endpoint and so the Feedback
is never delivered to the OS and naturally the OS does not handle the
need for a little bit more data (0.02%).
I hope that someone here can point me into the right direction, as the
feedback endpoint works perfectly under Linux and Windows (Thesycon
driver) and I do not have any idea on what could be wrong...
Thank You,
Bernhard
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Usb mailing list ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/usb/archive%40mail-archive.com
This email sent to [email protected]