Re: is Audio Unit and its View in separate host machines possible?
Re: is Audio Unit and its View in separate host machines possible?
- Subject: Re: is Audio Unit and its View in separate host machines possible?
- From: Alejandro <email@hidden>
- Date: Thu, 16 Jul 2009 00:56:23 +0200
Thank you Brian,
You have sent the answer to my email address instead to the list. I
copy your answer at the bottom of this message:
Our app is doing exactly what you say, but with a generic view of
course. I see that what we must do is open the custom view in the
client side and establish communication through events.
The Audio Unit Programming Guide says that the audio unit must be
instantiated (not necessarily initialized) before the view is open.
Does this mean that we must instantiate the component in the client
side? Then additional licenses must be purchased...
Alejandro
On Jul 15, 2009, at 15:27, Alejandro wrote:
In the Audio Unit Programming Guide,
section The Audio Unit View this can be read: "To achieve this
programmatic separation, Apple recommends that you develop your custom
views so that they would work running in a separate address space, in a
separate process, and on a separate machine from the audio unit
executable code".
How can I (from the host point of view) open an Audio Unit
component in a host and its view in another host machine? I mean, how
do they interoperate?
They will not interoperate automatically, at least not on their
own. Your host must make the connection between the hosts using an API
outside AudioUnits.
The host machine which has the view open should register for
parameter and property changes. Then, when the user interacts with the
interface in the view, the callbacks will alert your application that
changes must be made. It will then be your responsibility as the host
application developer to communicate these changes to the other host
machine.
The host machine which has the audio component would receive this
outside communication and translate it into parameter changes and
property changes within the AU API. You will probably also need to
register for parameter and property changes with the component, too,
since changes to one parameter may affect another. This is especially
true if the parameters are marked with the flag bits which indicate
they involve meta data dependencies. When these changes happen, your
host applications must communicate the changes back to the view host so
that the user sees these changes.
In other words, all Apple is saying is that you should not write
your code with the assumption that the machine, process, and address
space are the same, because they will not be in 100% of the possible
situations. However, Apple is making no promise that the
interoperation will be provided between separate hosts.
Brian Willoughby
Sound Consulting
|
_______________________________________________
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