-
Notifications
You must be signed in to change notification settings - Fork 543
AudioToolbox iOS xcode26.0 b1
Rolf Bjarne Kvinge edited this page Jun 24, 2025
·
3 revisions
#AudioToolbox.framework
diff -ruN /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AUComponent.h /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AUComponent.h
--- /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AUComponent.h 2025-04-19 04:03:15
+++ /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AUComponent.h 2025-05-24 01:40:36
@@ -463,6 +463,9 @@
@constant kAudioUnitSubType_AUSoundIsolation
An audio unit that can be used to isolate a specified sound type
+
+ @constant kAudioUnitSubType_AUAudioMix
+ An audio unit that supports AudioMix separate-and-remix functionality
*/
CF_ENUM(UInt32) {
kAudioUnitSubType_PeakLimiter = 'lmtr',
@@ -479,6 +482,7 @@
kAudioUnitSubType_NBandEQ = 'nbeq',
kAudioUnitSubType_Reverb2 = 'rvb2',
kAudioUnitSubType_AUSoundIsolation API_AVAILABLE(macos(13.0), ios(16.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) = 'vois',
+ kAudioUnitSubType_AUAudioMix API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 'amix',
};
diff -ruN /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioCodec.h /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioCodec.h
--- /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioCodec.h 2025-04-19 05:14:29
+++ /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioCodec.h 2025-05-24 01:40:36
@@ -444,7 +444,7 @@
unreliable IP networks where the encoder needs to adapt immediately to network condition changes.
Escape property ID's start with a '^' symbol as the first char code. This bypasses the initilization check.
@constant kAudioCodecPropertyDynamicRangeControlMode
- A UInt32 specifying the DRC mode. Supported modes are defined as enum with the
+ A UInt32 specifying the decoder DRC mode. Supported modes are defined as enum with the
prefix kDynamicRangeControlMode (see below). For certain legacy metadata this property controls which
dynamic range compression scheme is applied if the information is present in
the bitstream. The default is kDynamicRangeControlMode_None.
@@ -472,6 +472,18 @@
A Float32 specifying the program target loudness in LKFS for decoders. It has the same effect
as kAudioCodecPropertyProgramTargetLevel, but this property can also be set on an initialized decoder
object. It will be applied immediately, if supported.
+ @constant kAudioCodecPropertyDynamicRangeControlConfiguration
+ A UInt32 specifying the encoder DRC configuration. Configurations are defined as enum with the prefix
+ kAudioCodecDynamicRangeControlConfiguration_. When supported by the encoder, this property controls which
+ configuration is applied when a bitstream is generated. The default configuration for an APAC
+ encoder is kAudioCodecDynamicRangeControlConfiguration_Capture, otherwise it is kAudioCodecDynamicRangeControlConfiguration_None.
+ @constant kAudioCodecPropertyContentSource
+ An SInt32 index to select a pre-defined content source type that describes the content type and how it was generated.
+ This is an encoder property with read/write access, if supported. Supported values are defined with a prefix kAudioCodecContentSource_.
+ @constant kAudioCodecPropertyASPFrequency
+ A UInt32 to set the frequency of Audio Sync Packets (ASP). The value must be larger than 2.
+ A recommended value is 75 so that each 75th packet is an ASP.
+ This is an encoder property with read/write access, if supported.
*/
CF_ENUM(AudioCodecPropertyID)
{
@@ -512,6 +524,9 @@
kAudioCodecPropertyAdjustTargetLevelConstant = '^tlc',
kAudioCodecPropertyProgramTargetLevel = 'pptl',
kAudioCodecPropertyAdjustTargetLevel = '^ptl',
+ kAudioCodecPropertyDynamicRangeControlConfiguration = 'cdrc',
+ kAudioCodecPropertyContentSource = 'csrc',
+ kAudioCodecPropertyASPFrequency = 'aspf',
};
@@ -685,6 +700,109 @@
kDynamicRangeCompressionProfile_NoisyEnvironment = 2,
kDynamicRangeCompressionProfile_LimitedPlaybackRange = 3,
kDynamicRangeCompressionProfile_GeneralCompression = 6
+};
+
+/*!
+ @enum AudioCodecDynamicRangeControlConfiguration
+
+ @discussion Constants to be used with kAudioCodecPropertyDynamicRangeControlConfiguration for encoding
+
+ @constant kAudioCodecDynamicRangeControlConfiguration_None
+ Dynamic range compression disabled
+ @constant kAudioCodecDynamicRangeControlConfiguration_Music
+ Dynamic range compression for music
+ @constant kAudioCodecDynamicRangeControlConfiguration_Speech
+ Dynamic range compression for speech
+ @constant kAudioCodecDynamicRangeControlConfiguration_Movie
+ Dynamic range compression for movie sound tracks
+ @constant kAudioCodecDynamicRangeControlConfiguration_Capture
+ Dynamic range compression for capture (live encoding)
+*/
+CF_ENUM(UInt32)
+{
+ kAudioCodecDynamicRangeControlConfiguration_None = 0,
+ kAudioCodecDynamicRangeControlConfiguration_Music = 1,
+ kAudioCodecDynamicRangeControlConfiguration_Speech = 2,
+ kAudioCodecDynamicRangeControlConfiguration_Movie = 3,
+ kAudioCodecDynamicRangeControlConfiguration_Capture = 4
+};
+
+/*!
+ @enum AudioCodecContentSource
+
+ @discussion Constants to be used with kAudioCodecPropertyContentSource to indicate the content type.
+
+ @constant kAudioCodecContentSource_Unspecified
+ Unspecified content source
+ @constant kAudioCodecContentSource_Reserved
+ Reserved index
+ @constant kAudioCodecContentSource_AppleCapture_Traditional
+ Traditional Apple device capture
+ @constant kAudioCodecContentSource_AppleCapture_Spatial
+ Spatial Apple device capture
+ @constant kAudioCodecContentSource_AppleCapture_Spatial_Enhanced
+ Reserved for Apple use
+ @constant kAudioCodecContentSource_AppleMusic_Traditional
+ Traditional Apple music and music video content such as stereo and multichannel
+ @constant kAudioCodecContentSource_AppleMusic_Spatial
+ Spatial Apple music and music video content
+ @constant kAudioCodecContentSource_AppleAV_Traditional_Offline
+ Traditional Apple professional AV offline encoded content such as stereo and multichannel
+ @constant kAudioCodecContentSource_AppleAV_Spatial_Offline
+ Spatial Apple professional AV offline encoded content
+ @constant kAudioCodecContentSource_AppleAV_Traditional_Live
+ Traditional Apple professional AV live content such as stereo and multichannel
+ @constant kAudioCodecContentSource_AppleAV_Spatial_Live
+ Spatial Apple professional AV live content
+ @constant kAudioCodecContentSource_ApplePassthrough
+ Apple passthrough content (use only if source information is not available)
+
+ @constant kAudioCodecContentSource_Capture_Traditional
+ Traditional device capture
+ @constant kAudioCodecContentSource_Capture_Spatial
+ Spatial device capture
+ @constant kAudioCodecContentSource_Capture_Spatial_Enhanced
+ Reserved for future use
+ @constant kAudioCodecContentSource_Music_Traditional
+ Traditional music and music video content such as stereo and multichannel
+ @constant kAudioCodecContentSource_Music_Spatial
+ Spatial music and music video content
+ @constant kAudioCodecContentSource_AV_Traditional_Offline
+ Traditional professional AV offline encoded content such as stereo and multichannel
+ @constant kAudioCodecContentSource_AV_Spatial_Offline
+ Spatial professional AV offline encoded content
+ @constant kAudioCodecContentSource_AV_Traditional_Live
+ Traditional professional AV live content such as stereo and multichannel
+ @constant kAudioCodecContentSource_AV_Spatial_Live
+ Spatial professional AV live content
+ @constant kAudioCodecContentSource_Passthrough
+ Passthrough content (use only if source information is not available)
+*/
+CF_ENUM(SInt32)
+{
+ kAudioCodecContentSource_Unspecified = -1,
+ kAudioCodecContentSource_Reserved = 0,
+ kAudioCodecContentSource_AppleCapture_Traditional = 1,
+ kAudioCodecContentSource_AppleCapture_Spatial = 2,
+ kAudioCodecContentSource_AppleCapture_Spatial_Enhanced = 3,
+ kAudioCodecContentSource_AppleMusic_Traditional = 4,
+ kAudioCodecContentSource_AppleMusic_Spatial = 5,
+ kAudioCodecContentSource_AppleAV_Traditional_Offline = 6,
+ kAudioCodecContentSource_AppleAV_Spatial_Offline = 7,
+ kAudioCodecContentSource_AppleAV_Traditional_Live = 8,
+ kAudioCodecContentSource_AppleAV_Spatial_Live = 9,
+ kAudioCodecContentSource_ApplePassthrough = 10,
+
+ kAudioCodecContentSource_Capture_Traditional = 33,
+ kAudioCodecContentSource_Capture_Spatial = 34,
+ kAudioCodecContentSource_Capture_Spatial_Enhanced = 35,
+ kAudioCodecContentSource_Music_Traditional = 36,
+ kAudioCodecContentSource_Music_Spatial = 37,
+ kAudioCodecContentSource_AV_Traditional_Offline = 38,
+ kAudioCodecContentSource_AV_Spatial_Offline = 39,
+ kAudioCodecContentSource_AV_Traditional_Live = 40,
+ kAudioCodecContentSource_AV_Spatial_Live = 41,
+ kAudioCodecContentSource_Passthrough = 42
};
/*!
diff -ruN /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h
--- /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h 2025-04-19 03:40:58
+++ /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h 2025-05-28 07:59:14
@@ -782,6 +784,20 @@
AudioStreamPacketDescription * __nullable * __nullable outDataPacketDescription,
void * __nullable inUserData);
+/*!
+ @typedef AudioConverterComplexInputDataProcRealtimeSafe
+ @abstract Realtime-safe variant of AudioConverterComplexInputDataProc.
+
+ See the discussions of AudioConverterComplexInputDataProc and AudioConverterFillComplexBuffer.
+*/
+typedef OSStatus
+(*AudioConverterComplexInputDataProcRealtimeSafe)(
+ AudioConverterRef inAudioConverter,
+ UInt32 * ioNumberDataPackets,
+ AudioBufferList * ioData,
+ AudioStreamPacketDescription * __nullable * __nullable outDataPacketDescription,
+ void * __nullable inUserData) CA_REALTIME_API;
+
//-----------------------------------------------------------------------------
/*!
@function AudioConverterFillComplexBuffer
@@ -828,7 +844,75 @@
AudioStreamPacketDescription * __nullable outPacketDescription)
API_AVAILABLE(macos(10.2), ios(2.0), watchos(2.0), tvos(9.0));
+/*!
+ @function AudioConverterFillComplexBufferRealtimeSafe
+ @abstract Identical to AudioConverterFillComplexBuffer, with the addition of a realtime-safety
+ guarantee.
+
+ Conversions involving only PCM formats -- interleaving, deinterleaving, channel count changes,
+ sample rate conversions -- are realtime-safe. Such conversions may use this API in order to
+ obtain compiler checks involving the `CA_REALTIME_API` attributes.
+
+ At runtime, this function returns `kAudioConverterErr_OperationNotSupported` if the conversion
+ requires non-realtime-safe functionality.
+*/
+extern OSStatus
+AudioConverterFillComplexBufferRealtimeSafe(
+ AudioConverterRef inAudioConverter,
+ AudioConverterComplexInputDataProcRealtimeSafe inInputDataProc,
+ void * __nullable inInputDataProcUserData,
+ UInt32 * ioOutputDataPacketSize,
+ AudioBufferList * outOutputData,
+ AudioStreamPacketDescription * __nullable outPacketDescription)
+ CA_REALTIME_API
+ API_AVAILABLE(macos(26.0), ios(26.0), watchos(26.0), tvos(26.0), visionos(26.0));
+/*!
+ @function AudioConverterFillComplexBufferWithPacketDependencies
+ @abstract Converts audio data supplied by a callback function, supporting non-interleaved and
+ packetized formats, and also supporting packet dependency descriptions.
+ @discussion For output formats that use packet dependency descriptions, this must be used instead of
+ AudioConverterFillComplexBuffer, which will return an error for such formats.
+ @param inAudioConverter The audio converter to use for format conversion.
+ @param inInputDataProc A callback function that supplies audio data to convert.
+ This callback is invoked repeatedly as the converter is ready for
+ new input data.
+ @param inInputDataProcUserData Custom data for use by your application when receiving a
+ callback invocation.
+ @param ioOutputDataPacketSize On input, the size of the output buffer (in the `outOutputData`
+ parameter), expressed in number packets in the audio converter’s
+ output format. On output, the number of packets of converted data
+ that were written to the output buffer.
+ @param outOutputData The converted output data is written to this buffer. On entry, the
+ buffers' `mDataByteSize` fields (which must all be the same) reflect
+ buffer capacity. On exit, `mDataByteSize` is set to the number of
+ bytes written.
+ @param outPacketDescriptions If not `NULL`, and if the audio converter's output format uses packet
+ descriptions, this must point to a block of memory capable of holding
+ the number of packet descriptions specified in the `ioOutputDataPacketSize`
+ parameter. (See _Audio Format Services Reference_ for functions that
+ let you determine whether an audio format uses packet descriptions).
+ If not `NULL` on output and if the audio converter's output format
+ uses packet descriptions, then this parameter contains an array of
+ packet descriptions.
+ @param outPacketDependencies Should point to a memory block capable of holding the number of
+ packet dependency description structures specified in the
+ `ioOutputDataPacketSize` parameter. Must not be `NULL`. This array
+ will be filled out only by encoders that produce a format which has a
+ non-zero value for `kAudioFormatProperty_FormatEmploysDependentPackets`.
+ @result A result code.
+*/
+OSStatus
+AudioConverterFillComplexBufferWithPacketDependencies(
+ AudioConverterRef inAudioConverter,
+ AudioConverterComplexInputDataProc inInputDataProc,
+ void * __nullable inInputDataProcUserData,
+ UInt32 * ioOutputDataPacketSize,
+ AudioBufferList * outOutputData,
+ AudioStreamPacketDescription * __nullable outPacketDescriptions,
+ AudioStreamPacketDependencyDescription * outPacketDependencies)
+API_AVAILABLE(macos(26.0), ios(26.0), watchos(26.0), tvos(26.0), visionos(26.0));
+
//-----------------------------------------------------------------------------
/*!
@function AudioConverterConvertComplexBuffer
diff -ruN /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioFile.h /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioFile.h
--- /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioFile.h 2025-04-19 01:38:16
+++ /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioFile.h 2025-05-28 07:59:15
@@ -922,6 +922,39 @@
/*!
+ @function AudioFileWritePacketsWithDependencies
+ @abstract Write packets of audio data with corresponding packet dependencies to an audio data file.
+ @discussion For all uncompressed formats, `packets == frames`.
+ @param inAudioFile The audio file to write to.
+ @param inUseCache Set to `true` if you want to cache the data. Otherwise, set to `false`.
+ @param inNumBytes The number of bytes of audio data being written.
+ @param inPacketDescriptions A pointer to an array of packet descriptions for the audio data.
+ Not all formats require packet descriptions. If no packet descriptions
+ are required, for instance, if you are writing CBR data, pass `NULL`.
+ @param inPacketDependencies A pointer to an array of packet dependencies for the audio data.
+ This must not be `NULL`. To write packets without dependencies,
+ use ``AudioFileWritePackets`` instead.
+ @param inStartingPacket The packet index for the placement of the first provided packet.
+ @param ioNumPackets On input, a pointer to the number of packets to write.
+ On output, a pointer to the number of packets actually written.
+ @param inBuffer A pointer to user-allocated memory containing the new audio data
+ to write to the audio data file.
+ @result A result code. See Result Codes.
+*/
+extern OSStatus
+AudioFileWritePacketsWithDependencies (
+ AudioFileID inAudioFile,
+ Boolean inUseCache,
+ UInt32 inNumBytes,
+ const AudioStreamPacketDescription * __nullable inPacketDescriptions,
+ const AudioStreamPacketDependencyDescription * inPacketDependencies,
+ SInt64 inStartingPacket,
+ UInt32 * ioNumPackets,
+ const void * inBuffer)
+API_AVAILABLE(macos(26.0), ios(26.0), watchos(26.0), tvos(26.0), visionos(26.0));
+
+
+/*!
@function AudioFileCountUserData
@abstract Get the number of user data items with a certain ID in the file
@discussion "User Data" refers to chunks in AIFF, CAF and WAVE files, or resources
diff -ruN /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitParameters.h /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitParameters.h
--- /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitParameters.h 2025-04-19 01:38:15
+++ /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitParameters.h 2025-05-30 23:17:49
@@ -726,6 +726,61 @@
kAUSoundIsolationSoundType_Voice API_AVAILABLE(macos(13.0), ios(16.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) = 1
};
+// Parameters for AUAudioMix
+CF_ENUM(AudioUnitParameterID) {
+ // Global, Enum, 0->9, 0
+ kAUAudioMixParameter_Style API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 0,
+ // Global, float, 0->1, 0.5
+ kAUAudioMixParameter_RemixAmount API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 1,
+};
+
+/*!
+ @enum AUAudioMix styles
+ @brief Constants available as values for parameter kAUAudioMixParameter_Style.
+
+ @constant kAudioMixRenderingStyle_Cinematic
+ Cinematic rendering style (default)
+
+ @constant kAudioMixRenderingStyle_Studio
+ Studio rendering style
+
+ @constant kAudioMixRenderingStyle_InFrame
+ In-Frame rendering style
+
+ @constant kAudioMixRenderingStyle_CinematicBackgroundStem
+ Cinematic rendering style - background only
+
+ @constant kAudioMixRenderingStyle_CinematicForegroundStem
+ Cinematic rendering style - foreground only
+
+ @constant kAudioMixRenderingStyle_StudioForegroundStem
+ Studio rendering style - foreground only
+
+ @constant kAudioMixRenderingStyle_InFrameForegroundStem
+ In-Frame rendering style - foreground only
+
+ @constant kAudioMixRenderingStyle_Standard
+ Standard rendering style
+
+ @constant kAudioMixRenderingStyle_StudioBackgroundStem
+ Studio rendering style - background only
+
+ @constant kAudioMixRenderingStyle_InFrameBackgroundStem
+ In-Frame rendering style - background only
+ */
+typedef CF_ENUM( UInt32, AUAudioMixRenderingStyle ) {
+ kAudioMixRenderingStyle_Cinematic API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 0,
+ kAudioMixRenderingStyle_Studio API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 1,
+ kAudioMixRenderingStyle_InFrame API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 2,
+ kAudioMixRenderingStyle_CinematicBackgroundStem API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 3,
+ kAudioMixRenderingStyle_CinematicForegroundStem API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 4,
+ kAudioMixRenderingStyle_StudioForegroundStem API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 5,
+ kAudioMixRenderingStyle_InFrameForegroundStem API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 6,
+ kAudioMixRenderingStyle_Standard API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 7,
+ kAudioMixRenderingStyle_StudioBackgroundStem API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 8,
+ kAudioMixRenderingStyle_InFrameBackgroundStem API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 9,
+};
+
#pragma mark Apple Specific - Desktop
#if !TARGET_OS_IPHONE
diff -ruN /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitProperties.h /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitProperties.h
--- /Applications/Xcode_16.4.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitProperties.h 2025-04-19 05:14:29
+++ /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioUnitProperties.h 2025-05-28 07:59:14
@@ -3169,6 +3181,35 @@
//=====================================================================================================================
+#pragma mark - AUAudioMix
+/*!
+ @enum AUAudioMix Property IDs
+ @abstract The collection of property IDs for AUAudioMix
+
+ @discussion AUAudioMix also supports kAudioUnitProperty_SpatialMixerOutputType
+ This sets the type of output hardware used by AUSpatialMixer when spatialization is enabled.
+ See AUSpatialMixer properties and AUSpatialMixerOutputType
+
+ @constant kAUAudioMixProperty_SpatialAudioMixMetadata
+ Scope: Global
+ Value Type: CFDataRef
+ Access: Read / Write
+
+ Remix metadata from the file asset
+
+ @constant kAUAudioMixProperty_EnableSpatialization
+ Scope: Global
+ Value Type: UInt32
+ Access: Read / Write
+
+ 0 - Output format is FOA + mono foreground (Default)
+ 1 - Enable AUSpatialMixer to render to mono/stereo/surround formats
+ */
+CF_ENUM(AudioUnitPropertyID) {
+ kAUAudioMixProperty_SpatialAudioMixMetadata API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 5000,
+ kAUAudioMixProperty_EnableSpatialization API_AVAILABLE(macos(26.0), ios(26.0)) API_UNAVAILABLE(watchos, tvos, visionos) = 5001,
+};
+
#pragma mark - _3DMixer (Deprecated)
/*!
// AUMixer3D is deprecated. Use AUSpatialMixer instead.