Minor RTAS automation problem on mac

Hi Jules,

When trying to add an automation curve for gain of the juceDemoPlugin, the new automation line is created with a default value of 0 instead of current value, if the slider has not been ‘touched’.

But if before creating the new automation curve I move the slider, then the new curve will be created with proper current value.
It’s like if the value to be automated is updated (from 0 to current) by touching the slider.

Would that be hard to fix ?

Thanks,

Salvator

Interesting… maybe something like this in JucePlugInProcess::EffectInit()

        for (int i = 0; i < juceFilter->getNumParameters(); ++i)
        {
            AddControl (new JucePluginControl (juceFilter, i));
            SetControlValue (i + 2, floatToLong (juceFilter->getParameter (i)));
        }

?

Unfortunately not :Thread 0 Crashed: Dispatch queue: com.apple.main-thread 0 com.rawmaterialsoftware. 0x1827439f CProcess::SetControlValue(long, long) + 79 1 com.rawmaterialsoftware. 0x18256073 JucePlugInProcess::EffectInit() + 625 (juce_RTAS_Wrapper.cpp:470) 2 com.rawmaterialsoftware. 0x18233aa9 CEffectProcess::Initialize() + 843 (CEffectProcess.cpp:153) 3 com.rawmaterialsoftware. 0x18233d90 CEffectProcessRTAS::Initialize() + 36 (CEffectProcessRTAS.cpp:64) 4 com.rawmaterialsoftware. 0x1826effd CDSPProcessType::CreateProcessDeactivated(long*) + 1369 5 com.rawmaterialsoftware. 0x1827e253 CProcessType::InstantiateProcess(long*) + 67 6 com.rawmaterialsoftware. 0x182331ce CEffectTypeRTAS::InstantiateProcess(long*) + 50 (CEffectTypeRTAS.cpp:65) 7 com.rawmaterialsoftware. 0x1827a150 CProcessGroup::InstantiateProcess(unsigned long, long*) + 222 8 com.rawmaterialsoftware. 0x1825114f S2ArgGroupFunc<unsigned long, long*>::operator()() + 125 (Dispatcher.cpp:235) 9 com.rawmaterialsoftware. 0x182839c9 CallAndTranslateExceptionsToReturnValues(SGenFuncRetLong*) + 39 10 com.rawmaterialsoftware. 0x18245af2 CallNoThrowCommon(SGenFuncRetLong*, unsigned char, unsigned char) + 142 11 com.rawmaterialsoftware. 0x18245b9d CallNoThrow(SGenFuncRetLong*, unsigned char) + 35 12 com.rawmaterialsoftware. 0x1824a95d long CallGroupFun<unsigned long, long*>(long (CProcessGroupInterface::*)(unsigned long, long*), unsigned long, long*, unsigned char) + 69 (Dispatcher.cpp:257) 13 com.rawmaterialsoftware. 0x18247579 PI_InstantiateProcess(unsigned long, long*) + 79 14 com.digidesign.framework.DAE 0x031b6379 FicGetApplicationInterface + 85199 15 com.digidesign.framework.DAE 0x031fee82 FicReportExternalEvent + 147814 16 com.digidesign.framework.DAE 0x0329be51 FicInstanciatePlugInEx + 43 17 ...gidesign.framework.ProTools 0x012d5159 Cmn_TypedException<MA_OSErrData>::Cmn_TypedException(Cmn_TypedExceptionCode<MA_OSErrData> const&, MA_OSErrData const&, Cmn_StackDump*) + 4247187 18 ...gidesign.framework.ProTools 0x00b9c484 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 1667664 19 ...gidesign.framework.ProTools 0x00b9c8a7 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 1668723 20 ...gidesign.framework.ProTools 0x00ba0074 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 1683008 21 ...gidesign.framework.ProTools 0x00ba3a08 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 1697748 22 ...gidesign.framework.ProTools 0x00ba3cd9 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 1698469 23 ...gidesign.framework.ProTools 0x00c0cf50 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 2129180 24 ...gidesign.framework.ProTools 0x00a91472 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 574014 25 ...gidesign.framework.ProTools 0x00a74b82 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 457038 26 ...gidesign.framework.ProTools 0x00aab4e7 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 680627 27 ...gidesign.framework.ProTools 0x00a84f86 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 523602 28 ...gidesign.framework.ProTools 0x00b23804 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 1172944 29 ...gidesign.framework.ProTools 0x00b0cd81 Cmn_TypedException<Cmn_ANSIExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<Cmn_ANSIExceptionData> const&, Cmn_ANSIExceptionData const&, Cmn_StackDump*) + 1080141 30 ...gidesign.framework.ProTools 0x00f1b023 Cmn_TypedException<MA_OSErrData>::Cmn_TypedException(Cmn_TypedExceptionCode<MA_OSErrData> const&, MA_OSErrData const&, Cmn_StackDump*) + 339293 31 com.digidesign.framework.DFW 0x0244f897 TFileHandler::DoRead(bool) + 39 32 com.digidesign.framework.DFW 0x0244fda4 TFileHandler::ReadFile(bool) + 36 33 com.digidesign.framework.DFW 0x02450b2f TFileBasedDocument::ReadDocument(bool) + 85 34 ...gidesign.framework.ProTools 0x00f1a118 Cmn_TypedException<MA_OSErrData>::Cmn_TypedException(Cmn_TypedExceptionCode<MA_OSErrData> const&, MA_OSErrData const&, Cmn_StackDump*) + 335442 35 ...gidesign.framework.ProTools 0x00ec28a0 Cmn_TypedException<L10N_ExceptionData>::Cmn_TypedException(Cmn_TypedExceptionCode<L10N_ExceptionData> const&, L10N_ExceptionData const&, Cmn_StackDump*) + 2629418 36 com.digidesign.framework.DFW 0x0246fb63 TODocCommand::DoIt() + 59 37 com.digidesign.framework.DFW 0x024437e6 TCommandHandler::PerformCommand(TCommand*) + 86 38 com.digidesign.framework.DFW 0x02443f15 TCommand::Process() + 31 39 com.digidesign.framework.DFW 0x02438ebe TApplication::ProcessEvent(TEvent*) + 26 40 com.digidesign.framework.DFW 0x02438da4 TApplication::WakeUp() + 64 41 com.digidesign.framework.DFW 0x024acd7a TApplication::GetApplicationVersionString() + 2742 42 com.apple.HIToolbox 0x952e4129 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1567 43 com.apple.HIToolbox 0x952e33f0 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 411 44 com.apple.HIToolbox 0x952e324f SendEventToEventTargetWithOptions + 58 45 com.apple.HIToolbox 0x95317c0c ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*) + 3006 46 com.apple.HIToolbox 0x952e457a DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 2672 47 com.apple.HIToolbox 0x952e33f0 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 411 48 com.apple.HIToolbox 0x95305a81 SendEventToEventTarget + 52 49 com.apple.HIToolbox 0x9548e8f7 ToolboxEventDispatcher + 86 50 com.apple.HIToolbox 0x9548ea2f RunApplicationEventLoop + 243 51 com.digidesign.framework.DFW 0x0249b585 DFW_EventLoop::RunApplicationEventLoop() + 11 52 com.digidesign.framework.DFW 0x02438fdd TApplication::Run() + 45 53 ...gidesign.framework.ProTools 0x013cd55d LaunchProTools + 2271 54 com.digidesign.ProToolsLE 0x00007e92 0x1000 + 28306 55 com.digidesign.ProToolsLE 0x000026d2 0x1000 + 5842 56 com.digidesign.ProToolsLE 0x000025f9 0x1000 + 5625

Salvator

Ok… thanks, I guess I’ll need to play with it myself and see what I can do.

I’ve checked in some code that seems to work now, if you want to have a go…

WOrked !

Hat off :wink:

Salvator

Cool. Thanks!