• 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: HAL output mixing buffer on multi-processor machines?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: HAL output mixing buffer on multi-processor machines?


  • Subject: Re: HAL output mixing buffer on multi-processor machines?
  • From: Jeff Moore <email@hidden>
  • Date: Wed, 24 Jan 2007 10:49:55 -0800

The HAL doesn't do any mixing. Mixing is part of the job the driver does. Further, this is done behind a lock in the kernel to prevent interference by other threads.

The code for this is in the IOAudio Family in Darwin. The code path is rooted at IOAudioEngineUserClient::performClientIO(), which is the trap the HAL calls on the IO thread.

On Jan 24, 2007, at 4:54 AM, Stéphane Letz wrote:


Only by curiosity : how does the HAL mix audio buffers coming from several Audio clients on an multi-processor machine? Since each Audio I/O thread could be running on one processor, there is possible concurrency when accessing the output mixing buffer...


--

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: 
 >HAL output mixing buffer on multi-processor machines? (From: Stéphane Letz <email@hidden>)

  • Prev by Date: Re: Does CoreAudio use the alarm signal in the IO proc thread?
  • Next by Date: Re: Does CoreAudio use the alarm signal in the IO proc thread?
  • Previous by thread: HAL output mixing buffer on multi-processor machines?
  • Next by thread: mmj - universal binary JNI wrapper to CoreMIDI
  • Index(es):
    • Date
    • Thread