Re: AU & custom gui, Automation problem
Re: AU & custom gui, Automation problem
- Subject: Re: AU & custom gui, Automation problem
- From: Bill Stewart <email@hidden>
- Date: Mon, 24 Mar 2003 14:18:17 -0800
Ben,
This is fine in the sense you describe.. (Which I'll reiterate to make
sure I have this understood)
The begin/end edit calls in VST are a product of the GUI of the AU -
thus this implies to me that the host will call these functions on a
VST plugin from their UI thread - so in that sense they seem to map
perfectly to these API calls in the AU View.
Bill
On Monday, March 24, 2003, at 01:20 PM, Ben Dyer wrote:
>
Hi Bill,
>
>
beginEdit() and endEdit() are VST functions called before and after a
>
control has been moved in a custom editor
>
derived from Steinberg's "AEffEditor".
>
>
In my case, I'm using a custom GUI (drawing straight into a carbon
>
window) and the Emagic VSTAU wrapper.
>
The product I'm working on is designed to be as cross-platform as
>
possible (there's a PC VST version) - with the help of our own
>
graphics library.
>
>
I appreciate it's probably not the 'pure' way AU's were designed to
>
work but the cross-platform approach really has paid dividends for
>
the development of this product.
>
>
If I'm doing something dangerous or devious then I'm open to
>
suggestions !! :-)
>
>
Cheers,
>
Ben.
>
>
>
>
On Monday, Mar 24, 2003, at 19:31 Europe/London, Bill Stewart wrote:
>
>
> I've a question about this...
>
>
>
> Who is likely to call beginEdit and endEdit?
>
>
>
> Bill
>
>
>
> On Friday, March 21, 2003, at 11:48 PM, Ben Dyer wrote:
>
>
>
>> Hi Nicolas,
>
>>
>
>> I use a custom GUI with the help of Emagic's VSTAU wrapper. I
>
>> implemented the following code in the
>
>> setParameterAutomated(), beginEdit() and endEdit() VST functions.
>
>> Seems
>
>> to work OK....
>
>>
>
>> void CVST2AUPlugin::setParameterAutomated(long lIdx, float rVal)
>
>> {
>
>> // Set parameter and call host for automation
>
>>
>
>> setParameter (lIdx, rVal);
>
>>
>
>> float value = GetParameterTranslated (lIdx);
>
>>
>
>> AudioUnitParameter sPar={m_AudioUnit, AudioUnitParameterID (lIdx),
>
>> kAudioUnitScope_Global, 0};
>
>>
>
>> AUParameterSet (NULL, NULL, &sPar, value, 0);
>
>>
>
>> }
>
>>
>
>>
>
>> bool CVST2AUPlugin::beginEdit (long parID)
>
>> {
>
>> AudioUnitParameter sPar={m_AudioUnit, AudioUnitParameterID
>
>> (parID),
>
>> kAudioUnitScope_Global, 0};
>
>>
>
>> if (m_AudioUnitView)
>
>> m_AudioUnitView->TellListener ((AUVParameter&)(sPar),
>
>> kAudioUnitCarbonViewEvent_MouseDownInControl, NULL);
>
>>
>
>> return true;
>
>> }
>
>> /
>
>> /--------------------------------------------------------------------
>
>> ---
>
>> ------
>
>>
>
>> bool CVST2AUPlugin::endEdit (long parID)
>
>> {
>
>> AudioUnitParameter sPar={m_AudioUnit, AudioUnitParameterID (parID),
>
>> kAudioUnitScope_Global, 0};
>
>>
>
>> if (m_AudioUnitView)
>
>> m_AudioUnitView->TellListener ((AUVParameter&)(sPar),
>
>> kAudioUnitCarbonViewEvent_MouseUpInControl, NULL);
>
>>
>
>> return true;
>
>> }
>
>>
--
mailto:email@hidden
tel: +1 408 974 4056
________________________________________________________________________
__
"Much human ingenuity has gone into finding the ultimate Before.
The current state of knowledge can be summarized thus:
In the beginning, there was nothing, which exploded" - Terry Pratchett
________________________________________________________________________
__
_______________________________________________
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.