• 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: Bug in auval ?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bug in auval ?


  • Subject: Re: Bug in auval ?
  • From: Antoine Missout <email@hidden>
  • Date: Tue, 25 May 2010 12:09:22 -0400

Nevermind,

AUComponent.h:193 says 0-1023 is reserved.

(However, AudioUnitProperties.h:701 says "range (0 -> 999)" which informally implies the reserved range is up to 999, hence my error).

Problem fixed, thanks!
- Antoine




On 2010-05-25, at 12:03 PM, Antoine Missout wrote:

> Hi Bill,
>
> It is 1005. Which is indeed used by kAudioUnitProperty_UsesInternalReverb. What is the safe range of values for custom properties ?
>
> Regards,
> Antoine
>
> On 2010-05-24, at 8:01 PM, William Stewart wrote:
>
>> auval knows nothing about the property "kLevelsPropertyID" - that looks like a custom property ID to me? As it knows nothing about the property though, it can't be the one that is calling it.
>>
>> So, what is the property ID value of "kLevelsPropertyID". I suspect that you are overlapping with another property ID that is a system one
>>
>> Bill
>>
>> On May 24, 2010, at 7:14 AM, Antoine Missout wrote:
>>
>>> Hi all,
>>>
>>> Using auval with guard malloc (export DYLD_FORCE_FLAT_NAMESPACE=1; export DYLD_INSERT_LIBRARIES=/usr/lib/libgmalloc.dylib; export MALLOC_VECTOR_SIZE=1), my audiounit consistently crashes in GetProperty.
>>>
>>> At the end of the email is the relevant code. The property is 48 bytes long, but auval only mallocs 16 bytes as can be seen from the log & crash report. If I comment the memcpy, everything validates fine.
>>>
>>> It used to validate fine. Is there anything else I should do to ensure auval allocates the correct number of bytes ?
>>>
>>> Thanks in advance,
>>> - Antoine
>>>
>>> (full code is at http://code.google.com/p/octogris/ )
>>>
>>> ===============================================================
>>>
>>> VALIDATING AUDIO UNIT: 'aufx' - '1212' - 'UDMG'
>>> --------------------------------------------------
>>> Manufacturer String: UDM
>>> AudioUnit name: Octogris 12x12
>>> [...]
>>> VERIFYING PROPERTY Host Callbacks
>>>  PASS
>>> makmak: 48
>>> makmak: 48
>>> makmak: 0x1c675ff0
>>>
>>> ===============================================================
>>>
>>> Exception Type:  EXC_BAD_ACCESS (SIGBUS)
>>> Exception Codes: KERN_PROTECTION_FAILURE at 0x000000001c676000
>>> Crashed Thread:  0  Dispatch queue: com.apple.main-thread
>>> Thread 0 Crashed:  Dispatch queue: com.apple.main-thread
>>> 0   com.udm.Octogris              	0x0127edc9 Octogris<12, 12>::GetProperty(unsigned long, unsigned long, unsigned long, void*) + 227 (Octogris.cpp:506)
>>>
>>> ===============================================================
>>>
>>> template<int mNumberOfSources, int mNumberOfSpeakers>
>>> OSStatus			Octogris<mNumberOfSources, mNumberOfSpeakers>::GetPropertyInfo (AudioUnitPropertyID	inID,
>>>                                                      AudioUnitScope		inScope,
>>>                                                      AudioUnitElement	inElement,
>>>                                                      UInt32 &		outDataSize,
>>>                                                      Boolean &		outWritable)
>>> {
>>> 	if (inScope == kAudioUnitScope_Global)
>>> 	{
>>> 		switch (inID)
>>> 		{
>>> 			[...]
>>>
>>> 			case kLevelsPropertyID:
>>> 				outWritable = false;
>>> 				outDataSize = sizeof (float) * mNumberOfSpeakers;
>>> 				printf("makmak: %d\n", (int)outDataSize);
>>> 				return noErr;
>>>
>>> 			[...]
>>> 		}
>>> 	}
>>>
>>> 	return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
>>> }
>>>
>>> //------------------------------------------------------------------------------------------
>>> template<int mNumberOfSources, int mNumberOfSpeakers>
>>> OSStatus Octogris<mNumberOfSources, mNumberOfSpeakers>::GetProperty(	AudioUnitPropertyID inID,
>>>                                                      AudioUnitScope 		inScope,
>>>                                                      AudioUnitElement 	inElement,
>>>                                                      void *			outData )
>>> {
>>> 	if (inScope == kAudioUnitScope_Global)
>>> 	{
>>> 		switch (inID)
>>> 		{
>>> 			[...]
>>>
>>> 			case kLevelsPropertyID:
>>> 				printf("makmak: %p\n", outData);
>>> 				memcpy(outData, mLevels, sizeof (float) * mNumberOfSpeakers);
>>> 				return noErr;
>>>
>>> 			[...]
>>> 		}
>>> 	}
>>>
>>>
>>> 	return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
>>> } _______________________________________________
>>> 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
>>
>
> _______________________________________________
> 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

 _______________________________________________
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

  • Follow-Ups:
    • Re: Bug in auval ?
      • From: William Stewart <email@hidden>
References: 
 >Bug in auval ? (From: Antoine Missout <email@hidden>)
 >Re: Bug in auval ? (From: William Stewart <email@hidden>)
 >Re: Bug in auval ? (From: Antoine Missout <email@hidden>)

  • Prev by Date: Re: Bug in auval ?
  • Next by Date: Re: Bug in auval ?
  • Previous by thread: Re: Bug in auval ?
  • Next by thread: Re: Bug in auval ?
  • Index(es):
    • Date
    • Thread