Copies the value of a global property into a buffer.


OSStatus AudioFileGetGlobalInfo(AudioFilePropertyID inPropertyID, UInt32 inSpecifierSize, void *inSpecifier, UInt32 *ioDataSize, void *outPropertyData);



The property whose value you want to get. For possible values, see Audio File Global Info Properties.


The size of the specifier data.


A pointer to a specifier, which, in this context, is a pointer to a buffer containing some data that is different for each property. The type of the data required is described in the description of each property.


On input, a pointer to the size of the buffer specified in the outPropertyData

parameter. On output, a pointer to the number of bytes written to the buffer.

A pointer to the buffer in which to write the property data.

Return Value

A result code. See Result Codes.


This function can be used to get information about the capabilities of Audio File Services data types, for example, to determine which file types can take which data formats, what file types are supported, what file type can hold a particular data type, and so forth. This function cannot be used to get information about the properties of particular files. So the properties whose information you are obtaining are global to the Audio File Services programming interface, not properties specific to any file.

Special Considerations

Some Core Audio property values are C types and others are Core Foundation objects.

If you call this function to retrieve a value that is a Core Foundation object, then this function—despite the use of “Get” in its name—duplicates the object. You are responsible for releasing the object, as described in The Create Rule in Memory Management Programming Guide for Core Foundation.

See Also

Working with Global Information


Gets the size of a global audio file property.