Skip to content

AudioToolbox macOS xcode26.0 b3

Rolf Bjarne Kvinge edited this page Jul 9, 2025 · 1 revision

#AudioToolbox.framework

diff -ruN /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h
--- /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h	2025-06-18 05:41:46
+++ /Applications/Xcode_26.0.0-beta3.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AudioToolbox.framework/Headers/AudioConverter.h	2025-06-28 10:08:50
@@ -190,6 +190,30 @@
                     outPropertyData is sizeof(AudioFormatListItem), then only the best format is returned.
                     This property may be used for example to discover all the data formats produced by the AAC_HE2
                     (AAC High Efficiency vers. 2) encoder.
+    @constant   kAudioConverterPropertyPerformDownmix
+                    A UInt32 with 1 meaning to perform a mix from input to output channels,
+                    and 0 meaning to not perform such a mix.  See kAudioConverterPropertyChannelMixMap
+                    for more information on how the mix maps inputs to outputs.
+                    Defaults to 0 (no channel mixing).
+                    Note #1: Mixing may be performed in any conversion where the number
+                    and/or layout of input and output channels are not the same, not only
+                    in PCM-to-PCM conversions, and also the number of output channels may
+                    be more or less than the number of input channels.
+                    Note #2: This property is not compatible with kAudioConverterChannelMap,
+                    which is used to map input to output channels without any mixing.
+                    The kAudioConverterChannelMap property cannot be set unless
+                    kAudioConverterPropertyPerformDownmix is first set to 0.
+    @constant   kAudioConverterPropertyChannelMixMap
+                    An array of Float32 values, size equal to the product of the numbers of
+                    input and output channels.  Each element's value is a gain to apply,
+                    from 0.0 to 1.0, to one input when mixing it into one output.
+                    The elements are ordered in row-major order, where each row holds the
+                    gains to apply for one input to each output.
+                    Unless explicitly set, a default mix map is used, based on other
+                    properties such as numbers of input and output channels as well as
+                    channel layouts, if known.
+                    This property should not be set unless and until
+                    kAudioConverterPropertyPerformDownmix is first set to 1 (enable channel mixing).
 */
 CF_ENUM(AudioConverterPropertyID)
 {
@@ -223,7 +247,9 @@
     kAudioConverterCurrentInputStreamDescription        = 'acid',
     kAudioConverterPropertySettings                     = 'acps',
     kAudioConverterPropertyBitDepthHint                 = 'acbd',
-    kAudioConverterPropertyFormatList                   = 'flst'
+    kAudioConverterPropertyFormatList                   = 'flst',
+    kAudioConverterPropertyPerformDownmix               = 'dmix',
+    kAudioConverterPropertyChannelMixMap                = 'mmap'
 };
 
 #if !TARGET_OS_IPHONE
Clone this wiki locally