• 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: William Stewart <email@hidden>
  • Date: Tue, 25 May 2010 09:57:12 -0700

Hi Antoine

A couple of things:

On May 25, 2010, at 9:09 AM, Antoine Missout wrote:

> Nevermind,
>
> AUComponent.h:193 says 0-1023 is reserved.

All I can find here is this:
Type used for audio unit scopes. Apple reserves the 0 < 1024 range for audio unit scope identifiers.

but this is referring to IDs used for scopes, not for property IDs. Am I missing another reference?

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

// range (0 -> 999)
generic AU properties

Have a look through AudioUnitProperties.h for the string "range", you will see the following:

	Apple reserves property IDs from 0 -> 63999. Developers are free to use property IDs above this range.


there are also the following:

// range  (1000 -> 1999)
music device properties

// range  (2000 -> 2999)
output unit properites

// range (3020->3040)
offline audio units

// range (3060->3999)
3d mixer

// range (4000->4020)
miscellaneous


>
> 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: Antoine Missout <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>)
 >Re: Bug in auval ? (From: Antoine Missout <email@hidden>)

  • Prev by Date: Re: Bug in auval ?
  • Next by Date: Re: Synchronisation of multiple Audio Queues
  • Previous by thread: Re: Bug in auval ?
  • Next by thread: Re: Bug in auval ?
  • Index(es):
    • Date
    • Thread