• 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: 64bit processing possible?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 64bit processing possible?


  • Subject: Re: 64bit processing possible?
  • From: Jeff Moore <email@hidden>
  • Date: Thu, 30 Jul 2009 15:38:51 -0700


On Jul 30, 2009, at 3:21 PM, Brian Willoughby wrote:

On Jul 30, 2009, at 15:08, Jeff Moore wrote:
FWIW, the HAL and the driver model are the source of the usage of 32 bit floats as the canonical sample format, not AUHAL. So, dropping down to the HAL doesn't really help you any. You will still be using 32 bit floats to hold the data.


Thanks for the clarification. I was under the impression that you have the option with the HAL of querying the hardware format (which you surely can do) and then manually setting the data format to match (which I could be wrong about).

Such things are possible, but all linear PCM formats are vended via 32 bit floats. Using 64 bit floats (provided you could find a bit of hardware that supports it) would require jumping through the same hoops as you need to to play encoded data.



Switching from AUHAL to HAL (besides adding a lot of headaches) would remove any automatic AudioConverter later. But I guess there's still the HAL mixer, which probably operates at 32-bit float, between any host application and the raw audio driver.

This is correct. 64 bit floats would require the app to hog the device and turn off mixing.


One caveat: the mixing happens in the driver, not the HAL. For kernel- based devices, the IOAudioEngine does the work. For user-land devices, it is in the hands of the driver as to where the mixing happens.


Does this explain why Digidesign are so hard-headed about removing their audio interfaces from access by any other application whenever Pro Tools is running? Are they do this to remove the 32-bit float audio mixer from the processing chain?

I don't know.


On a similar note, is it possible to use 'hog' mode to force CoreAudio to skip the 32-bit float mixing stage?

Yes, but the device has to support doing it. If it does, it would show up as an available stream format for the device that has kAudioFormatFlagIsNonMixable set. Note that you need to hog a device before you will see the non-mixable stream formats.






--

Jeff Moore
Core Audio
Apple



_______________________________________________
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


References: 
 >Re: 64bit processing possible? (From: Evan Olcott <email@hidden>)
 >Re: 64bit processing possible? (From: William Stewart <email@hidden>)
 >Re: 64bit processing possible? (From: Brian Willoughby <email@hidden>)
 >Re: 64bit processing possible? (From: Jeff Moore <email@hidden>)
 >Re: 64bit processing possible? (From: Brian Willoughby <email@hidden>)

  • Prev by Date: Re: 64bit processing possible?
  • Next by Date: 64bit processing - Why?
  • Previous by thread: Re: 64bit processing possible?
  • Next by thread: Re: 64bit processing possible?
  • Index(es):
    • Date
    • Thread