• 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: Creating Aggregate Devices programmatically
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Creating Aggregate Devices programmatically


  • Subject: Re: Creating Aggregate Devices programmatically
  • From: Jeff Moore <email@hidden>
  • Date: Fri, 29 Jul 2005 13:52:45 -0700

It sounds like either the dictionary that describes the aggregate was constructed in a way that didn't make sense to the parser, or the aggregate just doesn't have any devices in it. Can you post any code samples?

On Jul 29, 2005, at 9:19 AM, Dave Addey wrote:

Hi Jeff,

This seems to be working, in that I can create an aggregate device with no
errors. Also, I didn't need to use kAudioHardwarePropertyDeviceForUID, as
when I use the plugin to create the device, the output data of the call to
AudioObjectGetPropertyData already contains the new AudioDeviceID.


But, I have a problem. The AggregateDevice I have created does not seem to
be enabled for output, or something. Is there something I need to do to it
to enable output once it is created?


I'm actually trying to use this aggregate device with QuickTime, assigned
via an AudioContext (this bit also seems to be working without error). When
I start playback to the device via QuickTime, no audio comes out. When I
stop the movie in QuickTime, I get a spinning beachball for a few seconds,
and then when I start the movie again, I get audio. Have I missed something
I should be doing in advance?


I've also noticed that when I make this Aggregate Device public, and view it
in Audio MIDI Setup, the Audio Output area says "Output is not supported",
and likewise for input. If I click on "Configure Device", then no devices
are selected to be in the Aggregate Device. Is this significant? I don't
actually want my aggregate device to be public - I was just trying this as a
test.


Any help much appreciated!

Dave.


From: Jeff Moore <email@hidden>
Date: Mon, 25 Jul 2005 12:55:13 -0700
To: CoreAudio API <email@hidden>
Subject: Re: Creating Aggregate Devices programmatically

Creating a new aggregate device requires using the new AudioObject
APIs in Tiger and goes something like this:

1) Locate the base plug-in using
kAudioHardwarePropertyPlugInForBundleID. It has a bundle ID of
"com.apple.audio.CoreAudio".
2) Create a CFDictionary that describes the aggregate device you want
to create. The keys for the dictionary are in the Aggregate Device
section of <CoreAudio/AudioHardware.h>. Be sure to create a unique UID.
3) Tell the base plug-in to create the aggregate device using
kAudioPlugInCreateAggregateDevice.
4) Presuming success, use kAudioHardwarePropertyDeviceForUID to get
the AudioDeviceID of the newly created aggregate device.


That's pretty much it. Let me know if you have any specific questions
about the process.

On Jul 23, 2005, at 4:54 PM, Dave Addey wrote:


Hi all,

Does anyone have any sample code showing how to create an aggregate
device entirely programmatically? Or is there some particular
documentation I should be looking at? Any ideas much appreciated :-)


Dave.


--

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:
40dsl.pipex.com


This email sent to email@hidden



 _______________________________________________
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



--

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: Creating Aggregate Devices programmatically (From: Dave Addey <email@hidden>)

  • Prev by Date: Re: Creating Aggregate Devices programmatically
  • Next by Date: Re: Cant get AU using v1.2 Project Templates to build
  • Previous by thread: Re: Creating Aggregate Devices programmatically
  • Next by thread: Should I care about this error message?
  • Index(es):
    • Date
    • Thread