• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Published! Technical Note TN2274: USB Audio on the Mac
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Published! Technical Note TN2274: USB Audio on the Mac


  • Subject: Re: Published! Technical Note TN2274: USB Audio on the Mac
  • From: Gordon Rankin <email@hidden>
  • Date: Wed, 11 Aug 2010 08:34:17 -0400
  • Organization: Wavelength Audio, ltd.


Message: 1
Date: Wed, 11 Aug 2010 11:03:34 +1000
From: Iain McCowan <email@hidden>
Subject: Re: Published! Technical Note TN2274: USB Audio on the Mac
To: Alison Hughes <email@hidden>, CoreAudio API
<email@hidden>
Message-ID:
<AANLkTimx4crWxhne9u9nNhGKJ_2=email@hidden>
Content-Type: text/plain; charset="iso-8859-1"
Iain,
I have not had a response on my previous posting, but here are some more
details I have found from investigating:

Sorry I missed your first post, trying to resolve some Class 2 issues to release some products.

See below...
The crackling audio problem (from missing packet reads) disappears in two
cases:

  - If I force the device to be allocated on one of the internal high-speed
USB busses by attaching it to a USB 2.0 hub (bus powered only), it works
perfectly.  All the hub connection does is change the internal bus
allocation - it is not providing any additional power, and my device is
still enumerated the same (full-speed, etc).

Most of the 2.0 Hubs have provisions for Full Speed devices and store and re-transmit those packets for the device. This will probably miss lead your troubleshooting.

You may want to tell us what is happening using a USB Analyzer. This would actually tell you what the computer is getting and see if there is any erroneous data being sent from your device. Total Phase has some nice inexpensive ones that work very well.
- If we modify our firmware to not synchronise with the USB SOF, then it
works perfectly. However unfortunately this breaks things on other
operating systems.
Part of the problem is that there are suddle differences between operating systems. In the most cases with the devices I have created OSX is very similar to operation to both Windows Vista and 7. Linux and XP seem to have the same characteristics. Therefore there are basically 3 systems that I look at when designing any USB Audio devices.

None of these work really the same way 100% but you can make your code at the device level work for all of them.

Regardless of what you know, not all USB ports are created equal. Being from High End Audio this discussion is lengthy but basically shared ports don't work as well as ones that are not. The Mac Mini 2009 5 port USB version has some load leveling hub internal that really throws users for some loops. If you use the System Profiler (Applications: Utilities) you can see where the ports are located. You can sometimes turn off things like Bluetooth etc... in your system which will change the operation of that USB port. You should also download the latest OSX development software and locate the USB Prober application which is very beneficial in determining correct enumeration.

Another problem is your packet length is really taxing the Full Speed specification. Running at higher than 8Mbps on the line means that even cables may have an effect on your product. Using a USB Analyzer will tell you a lot about that as it will be extending the distance of the cable and putting a load on it as well. Making things work with a USB Analyzer and your distributed cable will assure it will work in most cases in the field.

From your description this is a xover issue between CoreAudio (USB Driver) and the USB list. I would think both Alison and Bill would be your best contact to resolve this. If I can help out please don't hesitate to ask.

Thanks
Gordon



_______________________________________________
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


  • Prev by Date: Re: RemoteIO AU callback interval can not be changed?
  • Next by Date: Re: RemoteIO AU callback interval can not be changed?
  • Previous by thread: Re: Published! Technical Note TN2274: USB Audio on the Mac
  • Next by thread: Re: RemoteIO AU callback interval can not be changed?
  • Index(es):
    • Date
    • Thread