• 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: automation in logic
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: automation in logic


  • Subject: Re: automation in logic
  • From: Urs Heckmann <email@hidden>
  • Date: Sun, 14 Sep 2003 18:18:03 +0200

Hi Robert,

I guess you mean: When mousing the gui, the parameters change but Logic doesn't see this 8-))

Here's a little summary on the topic:

When your CarbonControl receives a ClickEvent, send a

AUCarbonViewBase->TellListener( theAUVParameter, kAudioUnitCarbonViewEvent_MouseDownInControl, NULL);

Then react on mousing and set the Parameter's value accordingly. Make sure that you don't just use a pointer hack and set the Parameter value internally (like directly calling AUBase::SetParameter() from your gui code, i.e. in VSTGUI enabled plugins). The AU doesn't live that way. It has kinda meta-existence in the System. Hence, sending a Parameter change from GUI to DSP requires you to use AUParameterSet() (in AudioToolbox/AudioUnitUtlilities.h). This way you make sure that Listeners (i.e. host...) know about changes, and it will call AUBase::SetParameter() as well.

If you use the Base classes, it's sufficient to just change the value of the CarbonControl. Then, AUCarbonViewControl::ControlToParameter() calls AUVParameter::SetValue() which does exactly this stuff for you whenever the value of the CarbonControl changes... (thus, you usually don't have to bother with the APIs of AudioToolbox)

If mousing is finished, you gotta tell every party involved that it indeed is. Hence

AUCarbonViewBase->TellListener( theAUVParameter, kAudioUnitCarbonViewEvent_MouseUpInControl, NULL);

This mechnism is important, because the host needs to know which events belong together so it can smoothly interpolate changes for parameters that ask for such things (Ramp, Hires flags etc.).

If your control is set up to change multiple parameters at once, you simply call TellListener() for each parameter.

Hope this helps,

;) Urs

Am Sonntag, 14.09.03, um 17:12 Uhr (Europe/Berlin) schrieb Robert Fehse:

hi.

how is the way to write automation data?

receiving the data from logic works but logic never writes my data.
i call setParameter on parameter change.
do i have to inform the host somehow else?

robert
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.

  • Follow-Ups:
    • Re: automation in logic
      • From: Bill Stewart <email@hidden>
References: 
 >automation in logic (From: "Robert Fehse" <email@hidden>)

  • Prev by Date: automation in logic
  • Next by Date: Many audio outputs
  • Previous by thread: automation in logic
  • Next by thread: Re: automation in logic
  • Index(es):
    • Date
    • Thread