Skip to content

CoreAudio iOS xcode9 beta1

Miguel de Icaza edited this page Jul 23, 2017 · 2 revisions

#CoreAudio.framework

miguel

diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreAudio.framework/Headers/CoreAudioTypes.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreAudio.framework/Headers/CoreAudioTypes.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreAudio.framework/Headers/CoreAudioTypes.h	2016-09-23 20:08:07.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreAudio.framework/Headers/CoreAudioTypes.h	2017-05-19 22:40:09.000000000 -0400
@@ -284,7 +284,7 @@
                         The format can use any sample rate. Note that this constant can only appear
                         in listings of supported formats. It will never appear in a current format.
 */
-static const Float64	kAudioStreamAnyRate = 0.0;
+static const Float64    kAudioStreamAnyRate = 0.0;
 
 /*!
     @enum           Format IDs
@@ -376,6 +376,8 @@
                         331M-2000. It has no flags.
     @constant       kAudioFormatEnhancedAC3
                         Enhanced AC-3, has no flags.
+    @constant       kAudioFormatFLAC
+                        Free Lossless Audio Codec, the flags indicate the bit depth of the source material.
 */
 CF_ENUM(AudioFormatID)
 {
@@ -415,7 +417,8 @@
     kAudioFormatDVIIntelIMA             = 0x6D730011,
     kAudioFormatMicrosoftGSM            = 0x6D730031,
     kAudioFormatAES3                    = 'aes3',
-    kAudioFormatEnhancedAC3             = 'ec-3'
+    kAudioFormatEnhancedAC3             = 'ec-3',
+    kAudioFormatFLAC                    = 'flac'
 };
 
 /*!
@@ -995,7 +998,29 @@
     kAudioChannelLabel_Discrete_13              = (1U<<16) | 13,
     kAudioChannelLabel_Discrete_14              = (1U<<16) | 14,
     kAudioChannelLabel_Discrete_15              = (1U<<16) | 15,
-    kAudioChannelLabel_Discrete_65535           = (1U<<16) | 65535
+    kAudioChannelLabel_Discrete_65535           = (1U<<16) | 65535,
+    
+    // generic HOA ACN channel
+    kAudioChannelLabel_HOA_ACN                  = 500,
+    
+    // numbered HOA ACN channels
+    kAudioChannelLabel_HOA_ACN_0                = (2U << 16) | 0,
+    kAudioChannelLabel_HOA_ACN_1                = (2U << 16) | 1,
+    kAudioChannelLabel_HOA_ACN_2                = (2U << 16) | 2,
+    kAudioChannelLabel_HOA_ACN_3                = (2U << 16) | 3,
+    kAudioChannelLabel_HOA_ACN_4                = (2U << 16) | 4,
+    kAudioChannelLabel_HOA_ACN_5                = (2U << 16) | 5,
+    kAudioChannelLabel_HOA_ACN_6                = (2U << 16) | 6,
+    kAudioChannelLabel_HOA_ACN_7                = (2U << 16) | 7,
+    kAudioChannelLabel_HOA_ACN_8                = (2U << 16) | 8,
+    kAudioChannelLabel_HOA_ACN_9                = (2U << 16) | 9,
+    kAudioChannelLabel_HOA_ACN_10               = (2U << 16) | 10,
+    kAudioChannelLabel_HOA_ACN_11               = (2U << 16) | 11,
+    kAudioChannelLabel_HOA_ACN_12               = (2U << 16) | 12,
+    kAudioChannelLabel_HOA_ACN_13               = (2U << 16) | 13,
+    kAudioChannelLabel_HOA_ACN_14               = (2U << 16) | 14,
+    kAudioChannelLabel_HOA_ACN_15               = (2U << 16) | 15,
+    kAudioChannelLabel_HOA_ACN_65024            = (2U << 16) | 65024    // 254th order uses 65025 channels
 };
 
 /*!
@@ -1260,6 +1285,11 @@
     kAudioChannelLayoutTag_DTS_8_1_B                = (181U<<16) | 9,                        // Lc C Rc L R Ls Cs Rs LFE
     kAudioChannelLayoutTag_DTS_6_1_D                = (182U<<16) | 7,                        // C L R Ls Rs LFE Cs
     
+    kAudioChannelLayoutTag_HOA_ACN_SN3D             = (190U<<16) | 0,                        // Higher Order Ambisonics, Ambisonics Channel Number, SN3D normalization
+                                                                                             // needs to be ORed with the actual number of channels (not the HOA order)
+    kAudioChannelLayoutTag_HOA_ACN_N3D              = (191U<<16) | 0,                        // Higher Order Ambisonics, Ambisonics Channel Number, N3D normalization
+                                                                                             // needs to be ORed with the actual number of channels (not the HOA order)
+
     kAudioChannelLayoutTag_DiscreteInOrder          = (147U<<16) | 0,                        // needs to be ORed with the actual number of channels
     kAudioChannelLayoutTag_Unknown                  = 0xFFFF0000                            // needs to be ORed with the actual number of channels  
 };
@@ -1327,9 +1357,9 @@
     @result         The number of channels the tag indicates.
 */
 #ifdef CF_INLINE
-	CF_INLINE UInt32    AudioChannelLayoutTag_GetNumberOfChannels(AudioChannelLayoutTag inLayoutTag)    { return (UInt32)(inLayoutTag & 0x0000FFFF); }
+    CF_INLINE UInt32    AudioChannelLayoutTag_GetNumberOfChannels(AudioChannelLayoutTag inLayoutTag)    { return (UInt32)(inLayoutTag & 0x0000FFFF); }
 #else
-	#define AudioChannelLayoutTag_GetNumberOfChannels(layoutTag) ((UInt32)((layoutTag) & 0x0000FFFF))
+    #define AudioChannelLayoutTag_GetNumberOfChannels(layoutTag) ((UInt32)((layoutTag) & 0x0000FFFF))
 #endif
 
 
Clone this wiki locally