Weird AU GUI lock and kAudioUnitParameterFlag_IsGlobalMeta
Weird AU GUI lock and kAudioUnitParameterFlag_IsGlobalMeta
- Subject: Weird AU GUI lock and kAudioUnitParameterFlag_IsGlobalMeta
- From: Airy André <email@hidden>
- Date: Sun, 28 Sep 2003 10:17:26 +0200
I've spent the last day on a bug I have no idea of why my AU does
behave like this.
The AU is working fine in 10.3, but in 10.2.6, the GUI freezes at
creation.
This is with SynthTest, Logic or AudioUnitHosting. So it is not a host
problem.
I first thought it was a 10.3/10.2 compatibility problem (I first built
it using xcode/10.3), although I have no problem with my other AUs.
But that's not the problem.
I rebuild the whole thing using PB/gcc 3.3/10.2.6/latest official CA
SDK and I have the very same problem.
Here is a trace of the freeze :
#0 0x902b091c in TestAndSetClear () ( or memcmp or TestAndSet)
#1 0x94ce0708 in ListenerObject::Notify() ()
#2 0x94ce0708 in ListenerObject::Notify() ()
#3 0x94cc5d34 in NotifyListeners(AUParameterListener*, void*,
AUParameter const&, float*) ()
#4 0x94cbc5ec in AUParameterSet ()
#5 0x01a78ad4 in AUCarbonViewEnhancedControl::ControlToParameter()
(this=0x22620d0) at
/Developer/Examples/CoreAudio/AudioUnits/AUPublic/AUCarbonViewBase/
AUVParameter.h:96
#6 0x01a67548 in AUCarbonViewControl::HandleEvent(OpaqueEventRef*)
(this=0x22620d0, event=0x74717ce3) at
/Developer/Examples/CoreAudio/AudioUnits/AUPublic/AUCarbonViewBase/
AUCarbonViewControl.cpp:229
#7 0x01a68d90 in TheEventHandler(OpaqueEventHandlerCallRef*,
OpaqueEventRef*, void*) (inHandlerRef=0x1, inEvent=0x1,
inUserData=0x1682a38) at
/Developer/Examples/CoreAudio/AudioUnits/AUPublic/AUCarbonViewBase/
CarbonEventHandler.cpp:48
#8 0x969a2c54 in DispatchEventToHandlers ()
#9 0x969a2fbc in SendEventToEventTargetInternal ()
#10 0x969a63d0 in SendEventToEventTargetWithOptions ()
#11 0x969ccbd4 in SendControlDefValueFieldChanged(HIView*,
OpaqueRgnHandle*) ()
#12 0x969ddb74 in HIView::DoControlValueUpdate(bool) ()
#13 0x01a72848 in TTransparentEditText::ForceRedraw() (this=0x0) at
/Volumes/Data/airy/Sources/AUGUIFramework/Controls/
TTransparentEditText.cpp:1121
#14 0x01a7126c in TTransparentEditText::SetData(unsigned long, short,
long, void const*) (this=0x223fff0, inTag=1, inPart=10808,
inSize=1093873715, inPtr=0xbfffdf9c) at
/Volumes/Data/airy/Sources/AUGUIFramework/Controls/
TTransparentEditText.cpp:379
#15 0x01a6a698 in TView::HandleEvent(OpaqueEventHandlerCallRef*,
TCarbonEvent&) (this=0xbfffd920, inCallRef=0x1, inEvent=@0x0) at
/Volumes/Data/airy/Sources/AUGUIFramework/HIFramework/TView.cp:620
#16 0x01a6a1f4 in TView::ViewEventHandler(OpaqueEventHandlerCallRef*,
OpaqueEventRef*, void*) (inCallRef=0xbfffde50, inEvent=0x1,
inUserData=0x223fff0) at
/Volumes/Data/airy/Sources/AUGUIFramework/HIFramework/TView.cp:519
#17 0x969a2c54 in DispatchEventToHandlers ()
#18 0x969a2fbc in SendEventToEventTargetInternal ()
#19 0x969a63d0 in SendEventToEventTargetWithOptions ()
#20 0x969c667c in SendControlDefSetData(HIView*, unsigned long, short,
void*, long) ()
#21 0x969ecb88 in SetControlData ()
#22 0x01a78bb8 in AUCarbonViewEnhancedControl::SetTextValue(__CFString
const*) (this=0x22620d0, cfstr=0x223faa0) at
/Volumes/Data/airy/Sources/AUGUIFramework/AU
View/AUCarbonViewEnhancedControl.cpp:118
#23 0x01a7890c in
AUCarbonViewEnhancedControl::ParameterToControl(float) (this=0x22620d0,
paramValue=0) at /Volumes/Data/airy/Sources/AUGUIFramework/AU
View/AUCarbonViewEnhancedControl.cpp:49
#24 0x01a66ff8 in AUCarbonViewControl::Bind() (this=0x22620d0) at
/Developer/Examples/CoreAudio/AudioUnits/AUPublic/AUCarbonViewBase/
AUCarbonViewControl.h:100
#25 0x01a7584c in CAUCarbonViewNib::BindPane(OpaqueControlRef*)
(this=0x1fc2f00, thePane=0x21ec710) at
/Volumes/Data/airy/Sources/AUGUIFramework/AU
View/AUCarbonViewNib.cpp:433
#26 0x01a75210 in CAUCarbonViewNib::CreateUI(float, float)
(this=0x1fc2f00, x=0, y=0) at
/Volumes/Data/airy/Sources/AUGUIFramework/AU
View/AUCarbonViewNib.cpp:277
#27 0x01a669ac in
AUCarbonViewBase::CreateCarbonView(ComponentInstanceRecord*,
OpaqueWindowPtr*, OpaqueControlRef*, Float32Point const&, Float32Point
const&, OpaqueControlRef*&) (this=0x1fc2f00, inAudioUnit=0x1,
inWindow=0x1682a38, inParentControl=0x0, inLocation=@0x1a99d74,
inSize=@0x94cc5cd8, outParentControl=@0x636d6473) at
/Developer/Examples/CoreAudio/AudioUnits/AUPublic/AUCarbonViewBase/
AUCarbonViewBase.cpp:142
#28 0x01a67d78 in
AUCarbonViewBase::ComponentEntryDispatch(ComponentParameters*,
AUCarbonViewBase*) (p=0x1, This=0x1) at
/Developer/Examples/CoreAudio/AudioUnits/AUPublic/AUCarbonViewBase/
AUCarbonViewDispatch.cpp:101
#29 0x01a8ec18 in
ComponentEntryPoint<AU303View>::Dispatch(ComponentParameters*,
AU303View*) (params=0x0, obj=0x1) at
/Developer/Examples/CoreAudio/AudioUnits/AUPublic/AUBase/
ComponentBase.h:76
#30 0x91eb08dc in AudioUnitCarbonViewCreate ()
Removing randomly some of my controls from my GUI make it work or
freeze later.
After removing things to come back gradually to my last working
version, it appears that I have only freezes if one of my parameter has
the kAudioUnitParameterFlag_IsGlobalMeta set.
Unsetting the flag make the GUI working fine ! But I'd like a REAL
solution, cause this parameter is changing other parameters.
The AUValidator does not detect any wrong behaviour (but of course does
not test the GUI) and I make no use of this flag in my code (except in
the parameters declaration)
Any idea of what could be wrong ???
Airy
_______________________________________________
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.