Ссылка свойств аудиоустройства
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Swift
import AudioUnit
Objective C
@import AudioUnit;
Свойства аудиоустройства, часть интерфейса плагина аудиоустройства, являются парами ключ/значение, объявляющими атрибуты или поведение, такие как формат потока аудиоданных, задержка или соединение от одного аудиоустройства до другого. Свойства являются обычно неизменяющимися во времени, не непосредственно устанавливаемыми пользователем и изменяемыми только, прежде чем аудиоустройство инициализируется. Этот документ описывает идентификаторы свойства аудиоустройства и их сопроводительные значения.
Вы получаете доступ к свойствам аудиоустройства с помощью платформы Аудиоустройства, «Добираются» и функции «Набора», описанные в Ссылке Audio Unit Component Services. Эти функции:
Так называемые универсальные свойства аудиоустройства - те, которые могут примениться к любому аудиоустройству. Существуют также специфичные для Apple свойства, применяющиеся только к предоставленным Apple аудиоустройствам. Этот документ описывает обоих. Apple резервирует свойство IDs от 0 до 63999; можно использовать свойство IDs выше этого диапазона.
В дополнение к его значению атрибуты свойства аудиоустройства следующие:
Объем — программируемый контекст, в аудиоустройстве, что свойство применяется к. Свойство применяется к одному или более объемам, как описано в этом документе. Объемы аудиоустройства в iOS Вводятся, Вывод и Глобальная переменная. В OS X аудиоустройства имеют дополнительные, СВЯЗАННЫЕ С MIDI объемы: Группа, Часть и Примечание.
Тип данных — программируемый тип данных для значения свойства.
Доступ — только для чтения, только для записи, или чтение-запись.
-
Получает тип дисплея для параметра.
Объявление
Objective C
#define GetAudioUnitParameterDisplayType (flags) ( (flags) & kAudioUnitParameterFlag_DisplayMask )Параметры
flagsОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
-
Определяет, является ли тип дисплея логарифмическим.
Объявление
Objective C
#define AudioUnitDisplayTypeIsLogarithmic (flags) ( GetAudioUnitParameterDisplayType (flags) == kAudioUnitParameterFlag_DisplayLogarithmic )Параметры
flagsОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
-
Определяет, является ли тип дисплея квадратным корнем.
Объявление
Objective C
#define AudioUnitDisplayTypeIsSquareRoot (flags) ( GetAudioUnitParameterDisplayType (flags) == kAudioUnitParameterFlag_DisplaySquareRoot )Параметры
flagsОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
-
Определяет, в квадрате ли тип дисплея.
Объявление
Objective C
#define AudioUnitDisplayTypeIsSquared (flags) ( GetAudioUnitParameterDisplayType (flags) == kAudioUnitParameterFlag_DisplaySquared )Параметры
flagsОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
-
Определяет, возведен ли в куб тип дисплея.
Объявление
Objective C
#define AudioUnitDisplayTypeIsCubed (flags) ( GetAudioUnitParameterDisplayType (flags) == kAudioUnitParameterFlag_DisplayCubed )Параметры
flagsОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
-
Определяет, является ли тип дисплея кубическим корнем.
Объявление
Objective C
#define AudioUnitDisplayTypeIsCubeRoot (flags) ( GetAudioUnitParameterDisplayType (flags) == kAudioUnitParameterFlag_DisplayCubeRoot )Параметры
flagsОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
-
Определяет, экспоненциален ли тип дисплея.
Объявление
Objective C
#define AudioUnitDisplayTypeIsExponential (flags) ( GetAudioUnitParameterDisplayType (flags) == kAudioUnitParameterFlag_DisplayExponential )Параметры
flagsОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
-
Устанавливает тип дисплея.
Объявление
Objective C
#define SetAudioUnitParameterDisplayType (flags, displayType) ( ((flags) & ~kAudioUnitParameterFlag_DisplayMask) | (displayType) )Параметры
flagsdisplayTypeОператор импорта
Objective C
@import AudioUnit;Доступность
Доступный в iOS 2.0 и позже.
Хост-приложения аудиоустройства могут реализовать эти функции обратного вызова для предоставления информации аудиоустройствам.
-
Когда вызвано системой, обеспечивает удар и информацию о темпе к аудиоустройству от хост-приложения.
Объявление
Swift
typealias HostCallback_GetBeatAndTempo = CFunctionPointer<((UnsafeMutablePointer<Void>, UnsafeMutablePointer<Float64>, UnsafeMutablePointer<Float64>) -> OSStatus)>Objective C
typedef OSStatus (*HostCallback_GetBeatAndTempo) ( void *inHostUserData, Float64 *outCurrentBeat, Float64 *outCurrentTempo );Параметры
inHostUserDataПользовательские данные, которые Вы предоставили при регистрации обратного вызова в аудиоустройстве.
outCurrentBeatНа выводе, текущем ударе играющей музыки.
outCurrentTempoНа выводе, текущем темпе играющей музыки.
Оператор импорта
Objective C
@import AudioUnit;Swift
import AudioUnitДоступность
Доступный в iOS 5.0 и позже.
-
Когда вызвано системой, обеспечивает музыкальную информацию синхронизации для аудиоустройства от хост-приложения.
Объявление
Swift
typealias HostCallback_GetMusicalTimeLocation = CFunctionPointer<((UnsafeMutablePointer<Void>, UnsafeMutablePointer<UInt32>, UnsafeMutablePointer<Float32>, UnsafeMutablePointer<UInt32>, UnsafeMutablePointer<Float64>) -> OSStatus)>Objective C
typedef OSStatus (*HostCallback_GetMusicalTimeLocation) ( void *inHostUserData, UInt32 *outDeltaSampleOffsetToNextBeat, Float32 *outTimeSig_Numerator, UInt32 *outTimeSig_Denominator, Float64 *outCurrentMeasureDownBeat );Параметры
inHostUserDataПользовательские данные, которые Вы предоставили при регистрации обратного вызова в аудиоустройстве.
outDeltaSampleOffsetToNextBeatНа выводе, числе выборок до следующего удара.
outTimeSig_NumeratorНа выводе, числителе для музыкального музыкального размера.
outTimeSig_DenominatorНа выводе, знаменателе для музыкального музыкального размера.
outCurrentMeasureDownBeatОператор импорта
Objective C
@import AudioUnit;Swift
import AudioUnitДоступность
Доступный в iOS 5.0 и позже.
-
Когда вызвано системой, предоставляет аудио транспортное состояние и информацию временной шкалы аудиоустройству от хост-приложения.
Объявление
Swift
typealias HostCallback_GetTransportState = CFunctionPointer<((UnsafeMutablePointer<Void>, UnsafeMutablePointer<Boolean>, UnsafeMutablePointer<Boolean>, UnsafeMutablePointer<Float64>, UnsafeMutablePointer<Boolean>, UnsafeMutablePointer<Float64>, UnsafeMutablePointer<Float64>) -> OSStatus)>Objective C
typedef OSStatus (*HostCallback_GetTransportState) ( void *inHostUserData, Boolean *outIsPlaying, Boolean *outTransportStateChanged, Float64 *outCurrentSampleInTimeLine, Boolean *outIsCycling, Float64 *outCycleStartBeat, Float64 *outCycleEndBeat );Параметры
inHostUserDataПользовательские данные, которые Вы предоставили при регистрации обратного вызова в аудиоустройстве.
outIsPlayingНа выводе,
TRUEесли аудио играет, илиFALSEиначе.outTransportStateChangedНа выводе,
TRUEесли транспортное состояние, измененное с прошлого раза обратный вызов, было вызвано, илиFALSEиначе.outCurrentSampleInTimeLineНа выводе, демонстрационном числе, индексированном от нуля с начала временной шкалы.
outIsCyclingНа выводе,
TRUEпри циклическом повторении, илиFALSEиначе.outCycleStartBeatoutCycleEndBeatОператор импорта
Objective C
@import AudioUnit;Swift
import AudioUnitДоступность
Доступный в iOS 5.0 и позже.
На рабочем столе аудиоустройства MIDI могут реализовать эти обратные вызовы для предоставления данных MIDI хост-приложениям аудиоустройства.
-
Аудиовход и возможности канала вывода аудиоустройства.
Объявление
Swift
struct AUChannelInfo { var inChannels: Int16 var outChannels: Int16 init() init(inChannelsinChannels: Int16, outChannelsoutChannels: Int16) }Objective C
typedef struct AUChannelInfo { SInt16 inChannels; SInt16 outChannels; } AUChannelInfo;Поля
inChannelsЧисло каналов ввода.
outChannelsЧисло каналов вывода.
Обсуждение
Доступность
Доступный в iOS 2.0 и позже.
-
Параметр аудиоустройства, значение которого может измениться в ответ на изменение в его родительском метапараметре.
Объявление
Swift
struct AUDependentParameter { var mScope: AudioUnitScope var mParameterID: AudioUnitParameterID init() init(mScopemScope: AudioUnitScope, mParameterIDmParameterID: AudioUnitParameterID) }Objective C
typedef struct AUDependentParameter { AudioUnitScope mScope; AudioUnitParameterID mParameterID; } AUDependentParameter;Поля
mScopemParameterIDДоступность
Доступный в iOS 6.0 и позже.
-
Метка времени для запланированного запуска аудиоустройства I/O.
Объявление
Swift
struct AudioOutputUnitStartAtTimeParams { var mTimestamp: AudioTimeStamp var mFlags: UInt32 init() init(mTimestampmTimestamp: AudioTimeStamp, mFlagsmFlags: UInt32) }Objective C
typedef struct AudioOutputUnitStartAtTimeParams { AudioTimeStamp mTimestamp; UInt32 mFlags; } AudioOutputUnitStartAtTimeParams;Поля
mTimestampmFlagsДоступность
Доступный в iOS 2.0 и позже.
-
Спецификация соединения источника месту назначения аудиоустройства.
Объявление
Swift
struct AudioUnitConnection { var sourceAudioUnit: AudioUnit var sourceOutputNumber: UInt32 var destInputNumber: UInt32 init() init(sourceAudioUnitsourceAudioUnit: AudioUnit, sourceOutputNumbersourceOutputNumber: UInt32, destInputNumberdestInputNumber: UInt32) }Objective C
typedef struct AudioUnitConnection { AudioUnit sourceAudioUnit; UInt32 sourceOutputNumber; UInt32 destInputNumber; } AudioUnitConnection;Поля
sourceAudioUnitАудиоустройство, которое является, служит источником в соединении.
sourceOutputNumberИсходный выходной элемент аудиоустройства, который будет использоваться в соединении.
destInputNumberВходной элемент целевого аудиоустройства, который будет использоваться в соединении.
Доступность
Доступный в iOS 2.0 и позже.
-
Позволяет хост-приложению аудиоустройства говорить аудиоустройству использовать указанный буфер для своего входного обратного вызова.
Объявление
Swift
struct AudioUnitExternalBuffer { var buffer: UnsafeMutablePointer<UInt8> var size: UInt32 init() init(bufferbuffer: UnsafeMutablePointer<UInt8>, sizesize: UInt32) }Objective C
typedef struct AudioUnitExternalBuffer { Byte *buffer; UInt32 size; } AudioUnitExternalBuffer;Поля
buffersizeДоступность
Доступный в iOS 2.0 и позже.
-
Уровень звука аудиоустройства в определенной частоте.
Объявление
Swift
struct AudioUnitFrequencyResponseBin { var mFrequency: Float64 var mMagnitude: Float64 init() init(mFrequencymFrequency: Float64, mMagnitudemMagnitude: Float64) }Objective C
typedef struct AudioUnitFrequencyResponseBin { Float64 mFrequency; Float64 mMagnitude; } AudioUnitFrequencyResponseBin;Поля
mFrequencymMagnitudeОбсуждение
Массив AudioUnitFrequencyResponseBin передается в kAudioUnitProperty_FrequencyResponse с mFrequency заполненным полем. Массив возвращается с заполненными полями величины. Если меньше, чем kNumberOfResponseFrequencies необходимы, то первый неиспользованный стеллаж должен быть отмечен с отрицательной частотой.
Доступность
Доступный в iOS 2.1 и позже.
-
Аудио, отсекающее, который произошел в модуле микшера.
Объявление
Swift
struct AudioUnitMeterClipping { var peakValueSinceLastCall: Float32 var sawInfinity: Boolean var sawNotANumber: Boolean init() init(peakValueSinceLastCallpeakValueSinceLastCall: Float32, sawInfinitysawInfinity: Boolean, sawNotANumbersawNotANumber: Boolean) }Objective C
typedef struct AudioUnitMeterClipping { Float32 peakValueSinceLastCall; Boolean sawInfinity; Boolean sawNotANumber; } AudioUnitMeterClipping;Поля
peakValueSinceLastCallМаксимальное значение, замеченное на канале с прошлого раза свойство, было получено.
sawInfinityTRUEесли было бесконечное значение на этом канале с прошлого раза, когда свойство было получено.sawNotANumberTRUEесли была плавающая точка “не число” значение на этом канале с прошлого раза, когда свойство было получено.Обсуждение
Эта структура данных используется
kAudioUnitProperty_MeterClippingсвойство.Доступность
Доступный в iOS 2.0 и позже.
-
Единица измерения для параметра аудиоустройства.
Объявление
Swift
typealias AudioUnitParameterUnit = UInt32Objective C
typedef UInt32 AudioUnitParameterUnit;Обсуждение
Различные единицы измерения для параметров аудиоустройства описаны в Единицах измерения Параметра Аудиоустройства.
Оператор импорта
Objective C
@import AudioUnit;Swift
import AudioUnitДоступность
Доступный в iOS 2.0 и позже.
-
Объявление
Swift
struct AudioUnitParameterInfo { var name: (Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8) var unitName: Unmanaged<CFString>! var clumpID: UInt32 var cfNameString: Unmanaged<CFString>! var unit: AudioUnitParameterUnit var minValue: AudioUnitParameterValue var maxValue: AudioUnitParameterValue var defaultValue: AudioUnitParameterValue var flags: UInt32 init() init(namename: (Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8), unitNameunitName: Unmanaged<CFString>!, clumpIDclumpID: UInt32, cfNameStringcfNameString: Unmanaged<CFString>!, unitunit: AudioUnitParameterUnit, minValueminValue: AudioUnitParameterValue, maxValuemaxValue: AudioUnitParameterValue, defaultValuedefaultValue: AudioUnitParameterValue, flagsflags: UInt32) }Objective C
typedef struct AudioUnitParameterInfo { char name[52]; CFStringRef unitName; UInt32 clumpID; CFStringRef cfNameString; AudioUnitParameterUnit unit; AudioUnitParameterValue minValue; AudioUnitParameterValue maxValue; AudioUnitParameterValue defaultValue; UInt32 flags; } AudioUnitParameterInfo;Поля
nameДолжен быть установлен в
0.unitNameЕсли
kAudioUnitParameterUnit_CustomUnitустановлен, это поле должно содержать допустимоеCFStringобъект. Только допустимый, еслиkAudioUnitParameterUnit_CustomUnitустановлен.clumpIDТолько допустимый, если
kAudioUnitParameterFlag_HasClumpустановлен.cfNameStringТолько допустимый, если
kAudioUnitParameterFlag_HasCFNameStringустановлен.unitЕсли
unitполе содержит значение не вAudioUnitParameterUnitперечисление, затем предположите, что тип модуляkAudioUnitParameterUnit_Generic.minValuemaxValuedefaultValueflagsВследствие некоторых капризов о путях, которыми были описаны CFNames Параметра, было необходимо добавить флаг:
kAudioUnitParameterFlag_CFNameRelease. В нормальном использовании название параметра является по существу статическим объектом, но иногда аудиоустройство будет генерировать названия параметра динамично. Поскольку они, как ожидают, будутCFStringобъекты, в этом случае узел должен выпустить те имена, когда он закончен с ними, но не было никакого способа передать это различие в поведении. Таким образом, если аудиоустройство может генерировать имя динамично, оно должно установить этот флаг в информации параметра. Узел должен проверить на этот флаг и если есть выпустить название параметра, когда это закончено с ним.Доступность
Доступный в iOS 2.0 и позже.
-
Короткая версия имени для параметра аудиоустройства.
Объявление
Swift
typealias AudioUnitParameterIDName = AudioUnitParameterNameInfoObjective C
typedef struct AudioUnitParameterNameInfo { AudioUnitParameterID inID; SInt32 inDesiredLength; CFStringRef outName; } AudioUnitParameterIDName;Поля
inIDИдентификатор для параметра аудиоустройства.
inDesiredLengthПри установке свойства аудиоустройства, использующего эту структуру данных для ее значения, максимальная длина, которую Вы указываете для названия параметра аудиоустройства.
outNameПри получении свойства аудиоустройства, использующего эту структуру данных для ее значения, короткой версии названия параметра, предоставленного аудиоустройством. Хост-приложение тогда владеет строкой и ответственно за выпуск его.
Обсуждение
Эта структура данных используется в качестве значения для
kAudioUnitProperty_ParameterClumpNameиkAudioUnitProperty_ParameterIDNameсвойства аудиоустройства.Доступность
Доступный в iOS 8.0 и позже.
-
Строковое представление значения параметра.
Объявление
Swift
struct AudioUnitParameterStringFromValue { var inParamID: AudioUnitParameterID var inValue: UnsafePointer<AudioUnitParameterValue> var outString: Unmanaged<CFString>! init() init(inParamIDinParamID: AudioUnitParameterID, inValueinValue: UnsafePointer<AudioUnitParameterValue>, outStringoutString: Unmanaged<CFString>!) }Objective C
typedef struct AudioUnitParameterStringFromValue { AudioUnitParameterID inParamID; const AudioUnitParameterValue *inValue; CFStringRef outString; } AudioUnitParameterStringFromValue;Доступность
Доступный в iOS 8.0 и позже.
-
Значение параметра на основе строкового представления значения.
Объявление
Swift
struct AudioUnitParameterValueFromString { var inParamID: AudioUnitParameterID var inString: Unmanaged<CFString>! var outValue: AudioUnitParameterValue init() init(inParamIDinParamID: AudioUnitParameterID, inStringinString: Unmanaged<CFString>!, outValueoutValue: AudioUnitParameterValue) }Objective C
typedef struct AudioUnitParameterValueFromString { AudioUnitParameterID inParamID; CFStringRef inString; AudioUnitParameterValue outValue; } AudioUnitParameterValueFromString;Доступность
Доступный в iOS 8.0 и позже.
-
Предложенная частота обновления и продолжительность истории для параметров, имеющих
kAudioUnitParameterFlag_PlotHistoryфлаг установлен.Объявление
Swift
struct AudioUnitParameterHistoryInfo { var updatesPerSecond: Float32 var historyDurationInSeconds: Float32 init() init(updatesPerSecondupdatesPerSecond: Float32, historyDurationInSecondshistoryDurationInSeconds: Float32) }Objective C
typedef struct AudioUnitParameterHistoryInfo { Float32 updatesPerSecond; Float32 historyDurationInSeconds; } AudioUnitParameterHistoryInfo;Обсуждение
Структура заполнена путем получения значения
kAudioUnitProperty_ParameterHistoryInfoсвойство.Доступность
Доступный в iOS 4.3 и позже.
-
Функция обратного вызова и пользовательские данные для обеспечения выборки ввода к выводу, отображающейся для аудиоустройства.
Объявление
Swift
struct AUInputSamplesInOutputCallbackStruct { var inputToOutputCallback: AUInputSamplesInOutputCallback var userData: UnsafeMutablePointer<Void> init() init(inputToOutputCallbackinputToOutputCallback: AUInputSamplesInOutputCallback, userDatauserData: UnsafeMutablePointer<Void>) }Objective C
typedef struct AUInputSamplesInOutputCallbackStruct { AUInputSamplesInOutputCallback inputToOutputCallback; void *userData; } AUInputSamplesInOutputCallbackStruct;Поля
inputToOutputCallbackФункция обратного вызова, обеспечивающая выборку ввода к выводу, отображающуюся для аудиоустройства.
userDataПользовательские данные для выборки ввода к выводу, отображающейся для аудиоустройства.
Доступность
Доступный в iOS 6.0 и позже.
-
Используемый для установки предварительных установок фабрики для аудиоустройства.
Объявление
Swift
struct AUPreset { var presetNumber: Int32 var presetName: Unmanaged<CFString>! init() init(presetNumberpresetNumber: Int32, presetNamepresetName: Unmanaged<CFString>!) }Objective C
typedef struct AUPreset { SInt32 presetNumber; CFStringRef presetName; } AUPreset;Поля
presetNumberЕсли меньше, чем
0, тогда предварительная установка является пользовательской предварительной установкой. Если больше, чем или равный0, тогда это поле используется для выбора предварительной установки фабрики.presetNameЕсли предварительная установка фабрики, задается имя указанной фабрики.
Доступность
Доступный в iOS 2.0 и позже.
-
Используемый для регистрации входной функции обратного вызова с аудиоустройством.
Объявление
Swift
struct AURenderCallbackStruct { var inputProc: AURenderCallback var inputProcRefCon: UnsafeMutablePointer<Void> init() init(inputProcinputProc: AURenderCallback, inputProcRefConinputProcRefCon: UnsafeMutablePointer<Void>) }Objective C
typedef struct AURenderCallbackStruct { AURenderCallback inputProc; void *inputProcRefCon; } AURenderCallbackStruct;Поля
inputProcinputProcRefConДоступность
Доступный в iOS 2.0 и позже.
-
Время - и связанные с транспортом функции обратного вызова для аудиоустройства.
Объявление
Swift
struct HostCallbackInfo { var hostUserData: UnsafeMutablePointer<Void> var beatAndTempoProc: HostCallback_GetBeatAndTempo var musicalTimeLocationProc: HostCallback_GetMusicalTimeLocation var transportStateProc: HostCallback_GetTransportState var transportStateProc2: HostCallback_GetTransportState2 init() init(hostUserDatahostUserData: UnsafeMutablePointer<Void>, beatAndTempoProcbeatAndTempoProc: HostCallback_GetBeatAndTempo, musicalTimeLocationProcmusicalTimeLocationProc: HostCallback_GetMusicalTimeLocation, transportStateProctransportStateProc: HostCallback_GetTransportState, transportStateProc2transportStateProc2: HostCallback_GetTransportState2) }Objective C
typedef struct HostCallbackInfo { void *hostUserData; HostCallback_GetBeatAndTempo beatAndTempoProc; HostCallback_GetMusicalTimeLocation musicalTimeLocationProc; HostCallback_GetTransportState transportStateProc; } HostCallbackInfo;Поля
hostUserDataПользовательские данные указаны Вашим приложением. Может быть
NULL.beatAndTempoProcВаша функция обратного вызова, обеспечивающая удар и информацию о темпе к аудиоустройству. Может быть
NULL.musicalTimeLocationProcВаша функция обратного вызова, предоставляющая музыкальную информацию временной шкалы аудиоустройству. Может быть
NULL.transportStateProcВаша функция обратного вызова, предоставляющая аудио транспортную информацию состояния (игра, перемотка, и т.д.) к аудиоустройству. Может быть
NULL.Доступность
Доступный в iOS 5.0 и позже.
-
Объявление
Swift
struct MixerDistanceParams { var mReferenceDistance: Float32 var mMaxDistance: Float32 var mMaxAttenuation: Float32 init() init(mReferenceDistancemReferenceDistance: Float32, mMaxDistancemMaxDistance: Float32, mMaxAttenuationmMaxAttenuation: Float32) }Objective C
typedef struct MixerDistanceParams { Float32 mReferenceDistance; Float32 mMaxDistance; Float32 mMaxAttenuation; // in decibels } MixerDistanceParams;Поля
mReferenceDistancemMaxDistancemMaxAttenuationДоступность
Доступный в iOS 2.0 и позже.
-
Объявление
Objective C
struct ScheduledAudioFileRegion { AudioTimeStamp mTimeStamp; ScheduledAudioFileRegionCompletionProc mCompletionProc; void *mCompletionProcUserData; struct OpaqueAudioFileID *mAudioFile; UInt32 mLoopCount; SInt64 mStartFrame; UInt32 mFramesToPlay; };Поля
mTimeStampmCompletionProcможет быть
NULLmCompletionProcUserDatamAudioFileДолжен быть допустимый и уже открытый объект аудиофайла (типа
AudioFileID), как объявлено вAudioToolbox/AudioFile.h.mLoopCount0= не циклично выполнятьсяmStartFrameСмещение кадра в файл.
mFramesToPlayЧисло кадров для игры.
-
Программируемые роли и контексты для свойств аудиоустройства.
Объявление
Swift
var kAudioUnitScope_Global: Int { get } var kAudioUnitScope_Input: Int { get } var kAudioUnitScope_Output: Int { get } var kAudioUnitScope_Group: Int { get } var kAudioUnitScope_Part: Int { get } var kAudioUnitScope_Note: Int { get }Objective C
enum { kAudioUnitScope_Global = 0, kAudioUnitScope_Input = 1, kAudioUnitScope_Output = 2, kAudioUnitScope_Group = 3, kAudioUnitScope_Part = 4, kAudioUnitScope_Note = 5 };Константы
-
kAudioUnitScope_GlobalКонтекст для характеристик аудиоустройства, применяющихся к аудиоустройству в целом.
Доступный в iOS 2.0 и позже.
-
kAudioUnitScope_InputКонтекст для аудиоданных, входящих в аудиоустройство.
Доступный в iOS 2.0 и позже.
-
kAudioUnitScope_OutputКонтекст для аудиоданных, оставляя аудиоустройство.
Доступный в iOS 2.0 и позже.
-
kAudioUnitScope_GroupВ OS X, зависящем от контекста к объему управления параметров аудиоустройства.
Доступный в iOS 5.0 и позже.
-
kAudioUnitScope_PartВ OS X, отличном контексте рендеринга; например, единственный тембр в мультитембральном инструменте или единственный цикл во много цикличном выполнении способный модуль выполняющего мертвую петлю летчика.
Доступный в iOS 5.0 и позже.
-
kAudioUnitScope_NoteВ OS X, объеме для изменений в отдельной музыкальной ноте. Идентификатор элемента, используемый с этим объемом, является уникальным идентификатором примечания, возвращенным из запущенного примечания (см.
MusicDeviceStartNoteфункция вAudioUnit/MusicDevice.h).Доступный в iOS 5.0 и позже.
Обсуждение
Каждый объем аудиоустройства является дискретным программируемым контекстом. Apple резервирует идентификаторы объема от 0 до 1024.
-
-
Свойства, применяющиеся к любому аудиоустройству.
Объявление
Swift
var kAudioUnitProperty_ClassInfo: Int { get } var kAudioUnitProperty_MakeConnection: Int { get } var kAudioUnitProperty_SampleRate: Int { get } var kAudioUnitProperty_ParameterList: Int { get } var kAudioUnitProperty_ParameterInfo: Int { get } var kAudioUnitProperty_StreamFormat: Int { get } var kAudioUnitProperty_ElementCount: Int { get } var kAudioUnitProperty_Latency: Int { get } var kAudioUnitProperty_SupportedNumChannels: Int { get } var kAudioUnitProperty_MaximumFramesPerSlice: Int { get } var kAudioUnitProperty_AudioChannelLayout: Int { get } var kAudioUnitProperty_TailTime: Int { get } var kAudioUnitProperty_BypassEffect: Int { get } var kAudioUnitProperty_LastRenderError: Int { get } var kAudioUnitProperty_SetRenderCallback: Int { get } var kAudioUnitProperty_FactoryPresets: Int { get } var kAudioUnitProperty_RenderQuality: Int { get } var kAudioUnitProperty_InPlaceProcessing: Int { get } var kAudioUnitProperty_ElementName: Int { get } var kAudioUnitProperty_SupportedChannelLayoutTags: Int { get } var kAudioUnitProperty_PresentPreset: Int { get } var kAudioUnitProperty_ShouldAllocateBuffer: Int { get } var kAudioUnitProperty_ParameterHistoryInfo: Int { get } var kAudioUnitProperty_FrequencyResponse: Int { get } var kAudioUnitProperty_CPULoad: Int { get } var kAudioUnitProperty_ParameterValueStrings: Int { get } var kAudioUnitProperty_HostCallbacks: Int { get } var kAudioUnitProperty_ParameterStringFromValue: Int { get } var kAudioUnitProperty_ParameterIDName: Int { get } var kAudioUnitProperty_OfflineRender: Int { get } var kAudioUnitProperty_ParameterValueFromString: Int { get } var kAudioUnitProperty_DependentParameters: Int { get } var kAudioUnitProperty_InputSamplesInOutput: Int { get }Objective C
enum { kAudioUnitProperty_ClassInfo = 0, kAudioUnitProperty_MakeConnection = 1, kAudioUnitProperty_SampleRate = 2, kAudioUnitProperty_ParameterList = 3, kAudioUnitProperty_ParameterInfo = 4, kAudioUnitProperty_StreamFormat = 8, kAudioUnitProperty_ElementCount = 11, kAudioUnitProperty_Latency = 12, kAudioUnitProperty_SupportedNumChannels = 13, kAudioUnitProperty_MaximumFramesPerSlice = 14, kAudioUnitProperty_AudioChannelLayout = 19, kAudioUnitProperty_TailTime = 20, kAudioUnitProperty_BypassEffect = 21, kAudioUnitProperty_LastRenderError = 22, kAudioUnitProperty_SetRenderCallback = 23, kAudioUnitProperty_FactoryPresets = 24, kAudioUnitProperty_RenderQuality = 26, kAudioUnitProperty_InPlaceProcessing = 29, kAudioUnitProperty_ElementName = 30, kAudioUnitProperty_SupportedChannelLayoutTags = 32, kAudioUnitProperty_PresentPreset = 36, kAudioUnitProperty_ShouldAllocateBuffer = 51, kAudioUnitProperty_ParameterHistoryInfo = 53, kAudioUnitProperty_CPULoad = 6, kAudioUnitProperty_ParameterValueStrings = 16, kAudioUnitProperty_HostCallbacks = 27, kAudioUnitProperty_ParameterStringFromValue = 33, kAudioUnitProperty_ParameterIDName = 34, kAudioUnitProperty_OfflineRender = 37, kAudioUnitProperty_ParameterValueFromString = 38, kAudioUnitProperty_DependentParameters = 45, kAudioUnitProperty_InputSamplesInOutput = 49, kAudioUnitProperty_FrequencyResponse = 52 };Константы
-
kAudioUnitProperty_ClassInfoОписывает состояние аудиоустройства.
Чтение-запись
CFDictionaryRefобъект, допустимый на глобальной области видимости аудиоустройства. Аудиоустройство OS X, поддерживающее объем части, может, кроме того, поддерживать предварительные установки на том объеме, применяющиеся к отдельным частям.При присвоении словаря информации о классе аудиоустройству с
AudioUnitSetPropertyфункция, Вы владеете ссылкой на словарь и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.При получении словаря информации о классе из аудиоустройства с
AudioUnitGetPropertyфункция, Вы также владеете ссылкой на словарь и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_MakeConnectionТолько для записи
AudioUnitConnectionструктура данных, допустимая на входном объеме аудиоустройства.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_SampleRateЧтение-запись
Float64значение, допустимое на объемах ввода и вывода аудиоустройства.Частота дискретизации звука для указанного объема.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_ParameterListСписок только для чтения
AudioUnitParameterIDзначения, допустимые на любом объеме аудиоустройства.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_ParameterInfoТолько для чтения
AudioUnitParameterInfoструктура данных, допустимая на любом объеме аудиоустройства.Характеристики для параметра аудиоустройства включая минимум, максимум и значения по умолчанию; полное название параметра; и т.д. Для сокращенной версии названия параметра аудиоустройства, подходящего для компактных ситуаций с дисплеем, посмотрите
kAudioUnitProperty_ParameterIDNameсвойство.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_StreamFormatФормат потока аудиоданных для элемента ввода или вывода аудиоустройства (также названный шиной).
Чтение-запись
AudioStreamBasicDescriptionструктура данных, допустимая на объемах ввода и вывода аудиоустройства.AudioStreamBasicDescriptionструктура не указывает расположение канала или цель. Для указания расположения канала используйтеkAudioUnitProperty_AudioChannelLayoutсвойство.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_ElementCountЧтение-запись
UInt32значение, допустимое на любом объеме аудиоустройства. Глобальный объем аудиоустройства всегда имеет количество элемента 1.Большинство аудиоустройств реализует это свойство как только для чтения, указывая, что они используют постоянное число шин ввода и вывода. Аудиоустройство, реализованное для поддержки добавления и удаления шин, реализует это свойство как чтение-запись.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_LatencyТолько для чтения
Float64значение, допустимое на глобальной области видимости аудиоустройства.Время, в секундах, что это берет аудиоустройство для перемещения аудиосэмпла от его ввода до его вывода.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_SupportedNumChannelsМассив только для чтения
AUChannelInfoструктуры, допустимые на глобальной области видимости аудиоустройства.Размер массива указывает число
AUChannelInfoструктуры для аудиоустройства. Каждая структура описывает конфигурацию канала для аудиовхода / выходная шина. Например, значения (2, 2) указывает конфигурацию канала двух каналов ввода, соединенных к двум каналам вывода на шине.Отрицательная величина для поля в
AUChannelInfoструктура указывает, что шина ввода/вывода поддерживает переменное число каналов, следующим образом:{–1, –1} указывает, что шина поддерживает любое число каналов ввода или вывода при условии, что количества каналов ввода и вывода соответствуют друг другу. Это - конфигурация по умолчанию для модулей эффекта.
{–1, –2} или {–2, –1} указывает, что шина поддерживает любое число каналов ввода и вывода; количества каналов на вводе и выводе могут отличаться друг от друга.
{–1, –3} указывает, что шина поддерживает любое число каналов ввода и до трех каналов вывода.
Значение 0 для
inChannelsполе означает, что аудиоустройство не имеет никаких шин аудиовхода.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_MaximumFramesPerSliceУказывает максимальное количество демонстрационных кадров, которые аудиоустройство подготовлено предоставить на одном вызове
AudioUnitRenderфункция.Чтение-запись
UInt32значение, допустимое на глобальной области видимости аудиоустройства.Значение по умолчанию этого свойства 1,024, соответствуя приблизительно 23 мс в частоте дискретизации на 44,1 кГц. Это значение по умолчанию достаточно, когда приложение узла использует размер аппаратного буфера по умолчанию, и экран устройства не спит. Когда экран устройства спит, система экономит электроэнергию путем сокращения частоты, в которой это запрашивает демонстрационные кадры. Существует соответствующее увеличение числа демонстрационных кадров, которые требуют от аудиоустройства на вызов рендеринга.
Следующая таблица обеспечивает некоторые общие размеры части:
Количество кадра
Миллисекунды в (приблизительных) 44,1 кГц
1024
23
4096
93
256
5
Вы никогда не должны устанавливать это свойство для модулей I/O, потому что они предварительно сконфигурированы для обработки любого размера части, который требует система. Для всех других аудиоустройств необходимо установить это свойство в значение 4 096 для обработки экранного сна — если аудиовход не работает на устройстве. Когда аудиовход работает, система поддерживает размер части 1 024.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_AudioChannelLayoutЧтение-запись
AudioChannelLayoutструктура данных, допустимая на объемах ввода и вывода аудиоустройства.Порядок канала, в данном аудиопотоке, для указанного элемента аудиоустройства и объема. Число каналов в расположении должно соответствовать число набора каналов для элемента объема. Каждая шина ввода и вывода в аудиоустройстве может иметь один экземпляр этого свойства.
Некоторые аудиоустройства требуют этого свойства. Например, 3DMixer модуль должен реализовать это свойство на своей выходной шине. Если хост-приложение попытается очистить значение этого свойства на шине, требующей допустимого значения, то аудиоустройство возвратит kAudioUnitErr_InvalidPropertyValue ошибку.
Шины ввода и вывода могут быть в одном из трех состояний в отношении расположения Звукового канала:
Реализованный и набор
Реализованный, но не набор
Нереализованный
Запрос значения этого свойства, когда это реализовано, но не установило результаты в a
kAudioUnitErr_PropertyNotInUseошибка.Используйте
kAudioUnitProperty_AudioChannelLayoutсвойство каждый раз, когда расположение канала релевантно.Для соответствующей информации обратитесь к описаниям для
ScheduledAudioFileRegionиAudioOutputUnitStartAtTimeParamsструктуры данных.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_TailTimeТолько для чтения
Float64значение, допустимое на глобальной области видимости аудиоустройства.Указывает оценку времени, в секундах, между последним допустимым вводом, получаемым аудиоустройством и выводом аудиоустройства, становящимся тихим. Например, реверберация оценки времени хвоста модуля время «затухания». Временная стоимость хвоста обычно является осторожной оценкой, что можно зависеть от.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_BypassEffectЧтение-запись
UInt32значение, представляя булево значение, допустимое на глобальной области видимости аудиоустройства.Указывает, обходится ли код обработки аудиоустройства (
1) или не (0).Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_LastRenderErrorТолько для чтения
OSStatusзначение, допустимое на глобальной области видимости аудиоустройства.Это свойство установлено если вызов в
AudioUnitRenderфункционируйте возвращает ошибку. Чтобы быть уведомленными относительно ошибок, зарегистрируйте функцию обратного вызова как слушателя свойства, использующегоAudioUnitAddPropertyListenerфункция.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_SetRenderCallbackТолько для записи
AURenderCallbackStructструктура данных, допустимая на входном объеме аудиоустройства.Установите это свойство для указания функции обратного вызова, обеспечивающей аудиосэмплы для аудиоустройства. Когда Вы вызываете
AudioUnitSetPropertyфункционируйте из своего приложения для присвоения обратного вызова, Вы указываете входную шину, которой применяется к обратный вызов. ПосмотритеAURenderCallbackфункция обратного вызова.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_FactoryPresetsТак называемые предварительные установки фабрики (в противоположность сконфигурированным пользователями предварительным установкам) являются, предоставленными аудиоустройством производителем. Вы выбираете активную предварительную установку путем установки
kAudioUnitProperty_PresentPresetсвойство.Только для чтения
CFArrayRefмассивAUPresetструктуры.Когда получение предварительной установки фабрики выстраивает от аудиоустройства с
AudioUnitGetPropertyфункция, Вы владеете ссылкой на массив и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_RenderQualityЧтение-запись
UInt32значение, допустимое на глобальной области видимости аудиоустройства.Значение в диапазоне 0 до 127, который указывает качество рендеринга аудиоустройства. Необходимо установить это свойство в его максимальное значение если, делая так результаты в чрезмерном использовании CPU.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_InPlaceProcessingЧтение-запись
UInt32значение, представляя булево значение, допустимое на глобальной области видимости аудиоустройства.Указывает, может ли аудиоустройство обработать входные данные непосредственно в его входном буфере (
1) или не (0). Можно хотеть отключить оперативную обработку, чтобы позволить хост-приложению управлять буферами обработки.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_ElementNameИмя указанного элемента.
Чтение-запись
CFStringRefобъект, допустимый на любом объеме аудиоустройства.Когда присвоение имени элемента представляет в виде строки к аудиоустройству с
AudioUnitSetPropertyфункция, Вы владеете ссылкой на имя и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.Когда получение имени элемента представляет в виде строки от аудиоустройства с
AudioUnitGetPropertyфункция, Вы также владеете ссылкой на имя и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_SupportedChannelLayoutTagsМассив только для чтения на
AudioChannelLayoutTagструктуры, допустимые на объемах ввода и вывода аудиоустройства.Используемый с GetProperty для установления то, что аудиоустройство понимает о наложении из заказов канала. Это будет обычно возвращаться один или больше указанных тегов расположения.
Когда определенный набор разметок возвращается, клиент тогда использует kAudioUnitProperty_AudioChannelLayout свойство (с одним из тех указанных тегов расположения) для установки модуля для использования того расположения. В этом случае клиент (и аудиоустройство при создании отчетов о его AudioChannelLayout), как только ожидают, установит AudioChannelLayout, только устанавливающий тег расположения как допустимое поле.
Некоторые аудиоустройства могут возвратить тег
kAudioChannelLayoutTag_UseChannelDescriptions. Это указывает карту пользовательского канала.В этом случае узел тогда может смотреть на поддерживаемое число каналов на том объеме (использующий kAudioUnitProperty_SupportedNumChannels) и предоставить AudioChannelLayout kAudioUnitProperty_AudioChannelLayout свойство для указания расположения, числа каналов и расположения каждого из тех каналов. Этот MUST карты пользовательского канала имеет валентность канала, поддерживающуюся Аудиоустройством.
Поле UseChannelBitmap НЕ используется в контексте AudioUnit.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_PresentPresetАктивная фабрика задается для аудиоустройства.
Чтение-запись
AUPresetструктура данных, допустимая на глобальной области видимости аудиоустройства,presetNameполе в структуре имеет типCFStringRefи следует за Базовой семантикой памяти Основы.При установке активной предварительной установки фабрики на аудиоустройстве с
AudioUnitSetPropertyфункция, Вы владеете ссылкой на предварительно установленное имя и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.При получении активной предварительной установки фабрики из аудиоустройства с
AudioUnitGetPropertyфункция, Вам также принадлежит ссылка на предварительную установку, называют и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_ShouldAllocateBufferЧтение-запись
UInt32значение, допустимое на объемах ввода и вывода аудиоустройства, устанавливаемых индивидуально на каждом элементе.Значение по умолчанию
true, что означает, что связанный элемент аудиоустройства создает буфер для рендеринга в.Если это правда, элемент создаст буфер для рендеринга в.
Если ложь, элемент не создаст буфер для рендеринга.
Например, если аудиоустройство только когда-либо будет иметь соединение как свой ввод и никогда обратный вызов, то оно не должно должно быть создавать буфер (договор API ожидает, что аудиоустройство обеспечит буфер для обратных вызовов, но никакой буфер для соединений).
Если аудиоустройство всегда будет быть вытянутым для аудио с клиентом, обеспечивающим буферы аудиоданных для вызова AudioUnitRender, то это никогда не должно будет создавать аудио буфер на выходной стороне.
Так, это свойство может использоваться для управления стратегией выделения по умолчанию аудиоустройства. Если аудиоустройству будет нужен буфер, но каждый не был выделен, то ошибка будет брошена от того вызова до AudioUnitRender.
Это свойство не может быть установлено на инициализированных аудиоустройствах, поскольку оно может закончить тем, что перераспределило память.
Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_ParameterHistoryInfoДля параметров, имеющих
kAudioUnitParameterFlag_PlotHistoryнабор флага, выводя это свойство заливкиAudioUnitParameterHistoryInfoструктура, содержащая рекомендуемую частоту обновления и продолжительность истории.Доступный в iOS 4.3 и позже.
-
kAudioUnitProperty_FrequencyResponseДоступный в iOS 2.1 и позже.
-
kAudioUnitProperty_CPULoadТолько для чтения
Float64значение, допустимое на глобальной области видимости аудиоустройства.Пропорция времени, когда аудиоустройство посвящает аудио рендерингу. Диапазоны значений от 0,0 (аудиоустройство не проводит времени, представляя) до 1,0 (аудиоустройство проводит все свое время, представляя).
Доступный в iOS 5.0 и позже.
-
kAudioUnitProperty_ParameterValueStringsМассив имен для именованного, индексируемого параметра аудиоустройства. Индексируемый параметр является тем, тип модуля которого
kAudioUnitParameterUnit_Indexed. Строки массива могут использоваться для создания меню для параметра.Только для чтения
CFArrayRefвозразите, чьи элементыCFStringRefобъекты, допустимые на любом объеме аудиоустройства.Когда получение строки параметров выстраивает от аудиоустройства с
AudioUnitGetPropertyфункция, Вы владеете ссылкой на массив и ответственны за более поздний выпуск его путем вызоваCFReleaseфункция.Индексируемые параметры используют индексные значения целого числа; размер массива этого свойства должен совпасть с диапазоном между минимальными и максимальными значениями параметра.
Доступный в iOS 5.0 и позже.
-
kAudioUnitProperty_HostCallbacksСтруктура данных HostCallbackInfo только для записи, допустимая на глобальной области видимости аудиоустройства.
Ряд функций обратного вызова, позволяющих аудиоустройству получать информацию от узла, который может относиться к рендерингу. Вы пишете обратные вызовы для обеспечения аудиоустройства музыкальной управляющей информацией включая удар, темп и аудио транспортное состояние.
Аудиоустройство должно вызвать обратные вызовы узла только из его функции рендеринга.
Любым из параметров функции обратного вызова, когда вызвано аудиоустройством, может быть NULL. Это указывает, что модуль не хочет знать что определенная информация. Исключение - то, что модуль должен всегда указывать HostUserData, который был быть предоставленным модулю, когда было установлено свойство.
Если узел неспособен предоставить требуемую информацию тогда, это может возвратить kAudioUnitErr_CannotDoInCurrentContext код ошибки.
Доступный в iOS 5.0 и позже.
-
kAudioUnitProperty_ParameterStringFromValueТолько для чтения
AudioUnitParameterStringFromValueструктура, допустимая на любом объеме аудиоустройства.Это свойство используется с параметрами, отмеченными с kAudioUnitParameterFlag_HasName информационным флагом параметра. Это указывает, что некоторые (или все) значений, представленных параметром, могут и должны быть представлены специальной строкой дисплея.
Это не должно быть перепутано с kAudioUnitProperty_ParameterValueStrings. То свойство используется с параметрами, индексирующимися, и обычно используется, например, для создания пункта меню из выбора для одного из нескольких значений параметров.
kAudioUnitProperty_ParameterStringFromValue может иметь непрерывный диапазон, и просто утверждает к узлу, что, если это выводит на экран значения того параметра, они должны запросить имя любое время, любое значение параметра установлено при отображении того параметра.
Например (тривиальный пример), модуль может представить параметр усиления в масштабе дБ и хотеть вывести на экран его минимальное значение как «отрицательная бесконечность». В этом случае аудиоустройство не возвратит имена ни для какого значения параметра, больше, чем его минимальное значение - таким образом, узел тогда просто выведет на экран значение параметра, как. Для значений, меньше чем или равных минимальному значению, аудиоустройство возвратит строку для «отрицательной бесконечности», которую узел может использовать для отображения соответственно.
Менее тривиальным примером мог бы быть параметр, представляющий его значения как секунды. Однако в некоторых ситуациях это значение должно быть лучше выведено на экран в стиле SMPTE дисплея.
HH:MM:SS:FF
В этом случае аудиоустройство возвратило бы имя для любого значения параметра.
Вызов GetProperty используется в том же объеме и элементе как inParamID, объявляющийся в структуре, переданной в к этому свойству.
Если *inValue элемент NULL, то аудиоустройство должно принять текущее значение указанного параметра. Если *inValue элемент NOT NULL, то аудиоустройство должно возвратить имя, используемое для указанного значения.
На выходе outName может указать на CFStringRef (который раз так должен быть выпущен вызывающей стороной). Если параметр не будет иметь никакого специального имени, которое должно быть применено к тому значению параметра, то outName будет NULL, и узел должен вывести на экран значение параметра как надлежащее.
Доступный в iOS 8.0 и позже.
-
kAudioUnitProperty_ParameterIDNameСокращенная версия названия параметра аудиоустройства, подходящего для компактных ситуаций с дисплеем.
В Вашем хост-приложении Вы указываете желаемую длину для сокращенной версии имени путем установки
inDesiredLengthполе в этом свойстве. Для версии во всю длину названия параметра аудиоустройства посмотритеkAudioUnitProperty_ParameterInfoсвойство.Значение является только для чтения
AudioUnitParameterNameInfoструктура данных, допустимая на любом объеме аудиоустройства.Доступный в iOS 8.0 и позже.
-
kAudioUnitProperty_OfflineRenderДоступный в iOS 6.0 и позже.
-
kAudioUnitProperty_ParameterValueFromStringДоступный в iOS 8.0 и позже.
-
kAudioUnitProperty_DependentParametersМассив только для чтения структур AUDependentParameter, допустимых на глобальной области видимости аудиоустройства.
Это свойство используется для параметров с kAudioUnitParameterFlag_IsGlobalMeta или набором флагов kAudioUnitParameterFlag_IsElementMeta. Приложения узлов (и механизм AudioUnitParameterListener) могут опросить это свойство для определения, какие параметры зависят от метапараметра.
Для параметров, отмеченных с kAudioUnitParameterFlag_IsGlobalMeta, любые неглобальные зависимые параметры, как предполагается, зависят в каждом элементе их объема.
Для параметров, отмеченных с kAudioUnitParameterFlag_IsElementMeta, тогда, его зависимые параметры должны все быть тем же объемом и, как предполагается, применяются только в единственном элементе, не к другим экземплярам того же параметра в других элементах.
Доступный в iOS 6.0 и позже.
-
kAudioUnitProperty_InputSamplesInOutputЧтение-запись структура AUInputSamplesInOutputCallbackStruct, допустимая на глобальной области видимости аудиоустройства.
Аудиоустройство вызывает этот обратный вызов в конце своего вызова рендеринга. Аудиоустройство предоставляет следующую информацию:
outputTime - Метка времени передала в вызову рендеринга аудиоустройства. Эта метка времени представляет время первой выходной выборки.
inputSample - Демонстрационное число первой входной выборки, присутствующей в выходном аудио.
numInputSamples - Число входных выборок, использовавшихся и присутствующих в выходном аудио.
Это свойство позволяет хост-приложению определять, которые вводят выборки, соответствуют выборке в буфере вывода. Это полезно только для аудиоустройств, делающих растягивание во времени, такое как OS X AUVaripseed и модули AUTimePitch, где отношение между выборками ввода и вывода нетривиально. Для этих модулей диапазон входных выборок, соответствующих буферу вывода обычно, отличается от диапазона входных выборок, которые вытянули для того вызова рендеринга. Это различие возникает из-за внутренней буферизации, обрабатывая задержку и другие факторы.
Доступный в iOS 6.0 и позже.
Обсуждение
Целочисленный диапазон для набора универсальных идентификаторов свойства аудиоустройства 0 до 999.
-
-
Свойства для Apple аудиоустройства I/O (иногда называемый устройствами вывода).
Объявление
Swift
var kAudioOutputUnitProperty_CurrentDevice: Int { get } var kAudioOutputUnitProperty_IsRunning: Int { get } var kAudioOutputUnitProperty_ChannelMap: Int { get } var kAudioOutputUnitProperty_EnableIO: Int { get } var kAudioOutputUnitProperty_StartTime: Int { get } var kAudioOutputUnitProperty_SetInputCallback: Int { get } var kAudioOutputUnitProperty_HasIO: Int { get } var kAudioOutputUnitProperty_StartTimestampsAtZero: Int { get }Objective C
enum { kAudioOutputUnitProperty_CurrentDevice = 2000, kAudioOutputUnitProperty_IsRunning = 2001, kAudioOutputUnitProperty_ChannelMap = 2002, kAudioOutputUnitProperty_EnableIO = 2003, kAudioOutputUnitProperty_StartTime = 2004, kAudioOutputUnitProperty_SetInputCallback = 2005, kAudioOutputUnitProperty_HasIO = 2006, kAudioOutputUnitProperty_StartTimestampsAtZero = 2007 };Константы
-
kAudioOutputUnitProperty_CurrentDeviceАудиоустройство чтения-записи объект ID, типа
AudioDeviceID, допустимый на глобальной области видимости аудиоустройства.Доступный в iOS 2.0 и позже.
-
kAudioOutputUnitProperty_IsRunningУказывает, работает ли аудиоустройство (
TRUE) или не (FALSE).Доступный в iOS 2.0 и позже.
-
kAudioOutputUnitProperty_ChannelMapКаналы ввода карт от ввода (источник) к выводу (место назначения). Число каналов, представленных в карте канала, является числом каналов места назначения. Записи карты канала содержат номер канала источника, который должен быть отображен на том целевом канале. Если-1 указан, чем тот целевой канал не будет содержать какого-либо канала из источника (таким образом, это будет тихо). Это будет также работать с модулем AUConverter.
Доступный в iOS 2.0 и позже.
-
kAudioOutputUnitProperty_EnableIOУказывает, включен ли аудио I/O для комбинации объема шины модуля I/O.
Шина модуля I/O 0 подключений для вывода аппаратных средств, такой что касается воспроизведения через динамик. Вывод включен по умолчанию. Для отключения вывода шина, 0 выходных объемов должны быть отключены, следующим образом:
UInt32 enableOutput = 0; // to disable outputAudioUnitElement outputBus = 0;AudioUnitSetProperty (io_unit_instance,kAudioOutputUnitProperty_EnableIO,kAudioUnitScope_Output,outputBus,&enableOutput,sizeof (enableOutput));
Шина модуля I/O 1 подключение для ввода аппаратных средств, такой что касается записи от микрофона. Ввод отключен по умолчанию. Для включения ввода шина, 1 входной объем должен быть включен, следующим образом:
UInt32 enableInput = 1; // to enable inputAudioUnitElement inputBus = 1;AudioUnitSetProperty (io_unit_instance,kAudioOutputUnitProperty_EnableIO,kAudioUnitScope_Input,inputBus,&enableInput,sizeof (enableInput));
Чтение-запись
UInt32значение, допустимое на объемах ввода и вывода.Доступный в iOS 2.0 и позже.
-
kAudioOutputUnitProperty_StartTimeТолько для записи
AudioOutputUnitStartAtTimeParamsструктура данных, допустимая на глобальной области видимости аудиоустройства. Когда это свойство будет установлено на устройстве вывода, оно вызовет следующий запрос Запуска (но никакие последующие Запуски) для использования функции AudioDeviceStartAtTime, с помощью указанной метки времени, передающей лжи дляinRequestedStartTimeIsInput.Доступный в iOS 2.0 и позже.
-
kAudioOutputUnitProperty_SetInputCallbackЧтение-запись
AURenderCallbackStructструктура данных, допустимая на глобальной области видимости аудиоустройства. То, когда устройство вывода было включено для входной работы, этот обратный вызов может использоваться для обеспечения единственного обратного вызова для хост-приложения от ввода I/O proc, для уведомления узла, которые вводят, доступно и может быть получено путем вызоваAudioUnitRenderфункция.Доступный в iOS 2.0 и позже.
-
kAudioOutputUnitProperty_HasIOЗначение UInt32. Объем: {вывод объема, элемент 0 = вывод} {ввод объема, элемент 1 = ввод}. Значение
1если ввод или вывод включен на указанном элементе. ПосмотритеkAudioOutputUnitProperty_EnableIO.Доступный в iOS 2.0 и позже.
-
kAudioOutputUnitProperty_StartTimestampsAtZeroЧтение-запись
UInt32значение, допустимое на глобальной области видимости аудиоустройства.Доступный в iOS 2.0 и позже.
-
-
Свойства, применяющиеся к обработке речи Apple аудиоустройство I/O.
Объявление
Swift
var kAUVoiceIOProperty_BypassVoiceProcessing: Int { get } var kAUVoiceIOProperty_VoiceProcessingEnableAGC: Int { get } var kAUVoiceIOProperty_MuteOutput: Int { get }Objective C
enum { kAUVoiceIOProperty_BypassVoiceProcessing = 2100, kAUVoiceIOProperty_VoiceProcessingEnableAGC = 2101, kAUVoiceIOProperty_MuteOutput = 2104, };Константы
-
kAUVoiceIOProperty_BypassVoiceProcessingУказывает, обойдена ли речевая обработка (какое-либо ненулевое значение) или активная (значение 0). Речевая обработка активна по умолчанию.
Значение является чтением-записью
UInt32допустимый на глобальном объеме аудиоустройства.Доступный в iOS 3.0 и позже.
-
kAUVoiceIOProperty_VoiceProcessingEnableAGCУказывает, включена ли автоматическая регулировка усиления (какое-либо ненулевое значение) или отключена (значение 0). Автоматическая регулировка усиления включена по умолчанию.
Значение является чтением-записью
UInt32допустимый на глобальном объеме аудиоустройства.Доступный в iOS 3.0 и позже.
-
kAUVoiceIOProperty_MuteOutputОтключает звук вывода Обработки речи модуль I/O. Выходное отключение звука прочь (0) по умолчанию. Для отключения звука вывода установите значение этого свойства в 1.
Значение является чтением-записью
UInt32допустимый на глобальном объеме аудиоустройства.Доступный в iOS 4.0 и позже.
-
-
Свойства для аудиоустройств микшера Apple.
Объявление
Swift
var kAudioUnitProperty_MeteringMode: Int { get } var kAudioUnitProperty_MatrixLevels: Int { get } var kAudioUnitProperty_MatrixDimensions: Int { get } var kAudioUnitProperty_MeterClipping: Int { get }Objective C
enum { // For general mixers kAudioUnitProperty_MeteringMode = 3007, // For the matrix mixer kAudioUnitProperty_MatrixLevels = 3006, kAudioUnitProperty_MatrixDimensions = 3009, kAudioUnitProperty_MeterClipping = 3011 };Константы
-
kAudioUnitProperty_MeteringModeУказывает, включено ли измерение или отключено для определенной комбинации элемента объема.
Чтение-запись
UInt32значение, допустимое на объемах ввода и вывода.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_MatrixLevelsОписывает внутреннее состояние матричного микшера.
Вычислите размер, требуемый для значения этого свойства следующим образом:
(input channel count + 1) * (output channel count + 1)
Получите количества каналов с помощью
kAudioUnitProperty_MatrixDimensionsсвойство.Например, рассмотрите матричный микшер, имеющий 2 канала ввода и 2 канала вывода. Значение этого свойства тогда требует 3 x 3 массива
Float32значения. Можно получить определенные данные для этого состояния микшера матрицы в качестве примера следующим образом:Глобальный объем сохранен в
volumes[2][2]Входные объемы сохранены в последнем столбце: первый канал ввода в
volumes[0][2]; второй канал ввода вvolumes[1][2]Выходные объемы сохранены в последней строке: первый канал вывода в
volumes [2][0]; второй канал вывода вvolumes[2][1]Объемы точки пересечения сохранены в их ожидаемых расположениях (
volumes[0][1], и т.д.)
Двухмерная антенная решетка только для чтения
Float32значения, допустимые на глобальной области видимости аудиоустройства.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_MatrixDimensionsУказывает общее количество каналов для ввода и вывода данного матричного микшера.
Только для чтения
2 * UInt32значение, допустимое на глобальной области видимости аудиоустройства.Доступный в iOS 2.0 и позже.
-
kAudioUnitProperty_MeterClippingУказывает аудио, отсекающее, который произошел, так как к этому свойству в последний раз получили доступ.
Только для чтения
AudioUnitMeterClippingструктура данных, допустимая на глобальной области видимости аудиоустройства.Доступный в iOS 2.0 и позже.
-
-
Свойства для Apple 3D аудиоустройство Микшера.
Объявление
Swift
var kAudioUnitProperty_3DMixerDistanceParams: Int { get } var kAudioUnitProperty_3DMixerAttenuationCurve: Int { get } var kAudioUnitProperty_SpatializationAlgorithm: Int { get } var kAudioUnitProperty_DopplerShift: Int { get } var kAudioUnitProperty_3DMixerRenderingFlags: Int { get } var kAudioUnitProperty_3DMixerDistanceAtten: Int { get } var kAudioUnitProperty_ReverbPreset: Int { get }Objective C
enum { kAudioUnitProperty_3DMixerDistanceParams = 3010, kAudioUnitProperty_3DMixerAttenuationCurve = 3013, kAudioUnitProperty_SpatializationAlgorithm = 3000, kAudioUnitProperty_DopplerShift = 3002, kAudioUnitProperty_3DMixerRenderingFlags = 3003, kAudioUnitProperty_3DMixerDistanceAtten = 3004, kAudioUnitProperty_ReverbPreset = 3012 };Константы
-
kAudioUnitProperty_3DMixerDistanceParamsДоступный в iOS 2.0 и позже.
-
kAudioUnitProperty_3DMixerAttenuationCurveДоступный в iOS 2.0 и позже.
-
kAudioUnitProperty_SpatializationAlgorithmДоступный в iOS 2.0 и позже.
-
kAudioUnitProperty_DopplerShiftДоступный в iOS 2.0 и позже.
-
kAudioUnitProperty_3DMixerRenderingFlagsДоступный в iOS 2.0 и позже.
-
kAudioUnitProperty_3DMixerDistanceAttenДоступный в iOS 2.0 и позже.
-
kAudioUnitProperty_ReverbPresetДоступный в iOS 2.0 и позже.
-
-
Кривые затухания уровня звука для использования с Apple 3D аудиоустройства Микшера.
Объявление
Swift
var k3DMixerAttenuationCurve_Power: Int { get } var k3DMixerAttenuationCurve_Exponential: Int { get } var k3DMixerAttenuationCurve_Inverse: Int { get } var k3DMixerAttenuationCurve_Linear: Int { get }Objective C
enum { k3DMixerAttenuationCurve_Power = 0, k3DMixerAttenuationCurve_Exponential = 1, k3DMixerAttenuationCurve_Inverse = 2, k3DMixerAttenuationCurve_Linear = 3 };Константы
-
k3DMixerAttenuationCurve_PowerРавное питание базировало кривую затухания.
Доступный в iOS 2.0 и позже.
-
k3DMixerAttenuationCurve_ExponentialЭкспоненциальная кривая затухания.
Доступный в iOS 2.0 и позже.
-
k3DMixerAttenuationCurve_InverseОбратная кривая затухания.
Доступный в iOS 2.0 и позже.
-
k3DMixerAttenuationCurve_LinearЛинейная кривая затухания.
Доступный в iOS 2.0 и позже.
-
-
Рендеринг опций для Apple 3D аудиоустройство Микшера.
Объявление
Swift
var k3DMixerRenderingFlags_InterAuralDelay: Int { get } var k3DMixerRenderingFlags_DopplerShift: Int { get } var k3DMixerRenderingFlags_DistanceAttenuation: Int { get } var k3DMixerRenderingFlags_DistanceFilter: Int { get } var k3DMixerRenderingFlags_DistanceDiffusion: Int { get } var k3DMixerRenderingFlags_LinearDistanceAttenuation: Int { get } var k3DMixerRenderingFlags_ConstantReverbBlend: Int { get }Objective C
enum { k3DMixerRenderingFlags_InterAuralDelay = (1L << 0), k3DMixerRenderingFlags_DopplerShift = (1L << 1), k3DMixerRenderingFlags_DistanceAttenuation = (1L << 2), k3DMixerRenderingFlags_DistanceFilter = (1L << 3), k3DMixerRenderingFlags_DistanceDiffusion = (1L << 4), k3DMixerRenderingFlags_LinearDistanceAttenuation = (1L << 5), k3DMixerRenderingFlags_ConstantReverbBlend = (1L << 6) };Константы
-
k3DMixerRenderingFlags_InterAuralDelayДоступный в iOS 2.0 и позже.
-
k3DMixerRenderingFlags_DopplerShiftДоступный в iOS 2.0 и позже.
-
k3DMixerRenderingFlags_DistanceAttenuationДоступный в iOS 2.0 и позже.
-
k3DMixerRenderingFlags_DistanceFilterДоступный в iOS 2.0 и позже.
-
k3DMixerRenderingFlags_DistanceDiffusionДоступный в iOS 2.0 и позже.
-
k3DMixerRenderingFlags_LinearDistanceAttenuationДоступный в iOS 2.0 и позже.
-
k3DMixerRenderingFlags_ConstantReverbBlendДоступный в iOS 2.0 и позже.
-
-
Свойства для Apple аудиоустройство AUConverter.
Объявление
Swift
var kAudioUnitProperty_SampleRateConverterComplexity: Int { get }Objective C
enum { kAudioUnitProperty_SampleRateConverterComplexity = 3014 };Константы
-
Уровни качества для алгоритма преобразования частоты дискретизации звука.
Объявление
Swift
var kAudioUnitSampleRateConverterComplexity_Linear: Int { get } var kAudioUnitSampleRateConverterComplexity_Normal: Int { get } var kAudioUnitSampleRateConverterComplexity_Mastering: Int { get }Objective C
enum { kAudioUnitSampleRateConverterComplexity_Linear = 'line', kAudioUnitSampleRateConverterComplexity_Normal = 'norm', kAudioUnitSampleRateConverterComplexity_Mastering = 'bats' };Константы
-
kAudioUnitSampleRateConverterComplexity_LinearОсновное преобразование частоты дискретизации с помощью линейной интерполяции. Быстро, но более низкое качество.
Доступный в iOS 2.0 и позже.
-
kAudioUnitSampleRateConverterComplexity_NormalНормальное преобразование уровня выборочного уровня качества.
Доступный в iOS 2.0 и позже.
-
kAudioUnitSampleRateConverterComplexity_MasteringОсвоение преобразования уровня выборочного уровня качества. Более в вычислительном отношении дорогой.
Доступный в iOS 2.0 и позже.
Обсуждение
Самое низкое качество алгоритма Освоения выше, чем высшее качество Нормального алгоритма.
-
-
Качественные настройки рендеринга для аудиоустройств.
Объявление
Swift
var kRenderQuality_Max: Int { get } var kRenderQuality_High: Int { get } var kRenderQuality_Medium: Int { get } var kRenderQuality_Low: Int { get } var kRenderQuality_Min: Int { get }Objective C
enum { kRenderQuality_Max = 0x7F, kRenderQuality_High = 0x60, kRenderQuality_Medium = 0x40, kRenderQuality_Low = 0x20, kRenderQuality_Min = 0 };Константы
-
kRenderQuality_MaxДоступный в iOS 2.0 и позже.
-
kRenderQuality_HighДоступный в iOS 2.0 и позже.
-
kRenderQuality_MediumДоступный в iOS 2.0 и позже.
-
kRenderQuality_LowДоступный в iOS 2.0 и позже.
-
kRenderQuality_MinДоступный в iOS 2.0 и позже.
Обсуждение
Как правило, это свойство привыкло к компромиссу между использованием CPU, задержкой и качеством обработки/вывода аудиоустройства.
-
-
Алгоритмы Spatialization для аудиоустройств регулятора панорамы.
Объявление
Swift
var kSpatializationAlgorithm_EqualPowerPanning: Int { get } var kSpatializationAlgorithm_SphericalHead: Int { get } var kSpatializationAlgorithm_HRTF: Int { get } var kSpatializationAlgorithm_SoundField: Int { get } var kSpatializationAlgorithm_VectorBasedPanning: Int { get } var kSpatializationAlgorithm_StereoPassThrough: Int { get }Objective C
enum { kSpatializationAlgorithm_EqualPowerPanning = 0, kSpatializationAlgorithm_SphericalHead = 1, kSpatializationAlgorithm_HRTF = 2, kSpatializationAlgorithm_SoundField = 3, kSpatializationAlgorithm_VectorBasedPanning = 4, kSpatializationAlgorithm_StereoPassThrough = 5 };Константы
-
kSpatializationAlgorithm_EqualPowerPanningДоступный в iOS 2.0 и позже.
-
kSpatializationAlgorithm_SphericalHeadДоступный в iOS 2.0 и позже.
-
kSpatializationAlgorithm_HRTFДоступный в iOS 2.0 и позже.
-
kSpatializationAlgorithm_SoundFieldДоступный в iOS 2.0 и позже.
-
kSpatializationAlgorithm_VectorBasedPanningДоступный в iOS 2.0 и позже.
-
kSpatializationAlgorithm_StereoPassThroughДоступный в iOS 2.0 и позже.
-
-
Ключи, определяющие единицы измерения для параметров аудиоустройства.
Объявление
Swift
var kAudioUnitParameterUnit_Generic: Int { get } var kAudioUnitParameterUnit_Indexed: Int { get } var kAudioUnitParameterUnit_Boolean: Int { get } var kAudioUnitParameterUnit_Percent: Int { get } var kAudioUnitParameterUnit_Seconds: Int { get } var kAudioUnitParameterUnit_SampleFrames: Int { get } var kAudioUnitParameterUnit_Phase: Int { get } var kAudioUnitParameterUnit_Rate: Int { get } var kAudioUnitParameterUnit_Hertz: Int { get } var kAudioUnitParameterUnit_Cents: Int { get } var kAudioUnitParameterUnit_RelativeSemiTones: Int { get } var kAudioUnitParameterUnit_MIDINoteNumber: Int { get } var kAudioUnitParameterUnit_MIDIController: Int { get } var kAudioUnitParameterUnit_Decibels: Int { get } var kAudioUnitParameterUnit_LinearGain: Int { get } var kAudioUnitParameterUnit_Degrees: Int { get } var kAudioUnitParameterUnit_EqualPowerCrossfade: Int { get } var kAudioUnitParameterUnit_MixerFaderCurve1: Int { get } var kAudioUnitParameterUnit_Pan: Int { get } var kAudioUnitParameterUnit_Meters: Int { get } var kAudioUnitParameterUnit_AbsoluteCents: Int { get } var kAudioUnitParameterUnit_Octaves: Int { get } var kAudioUnitParameterUnit_BPM: Int { get } var kAudioUnitParameterUnit_Beats: Int { get } var kAudioUnitParameterUnit_Milliseconds: Int { get } var kAudioUnitParameterUnit_Ratio: Int { get } var kAudioUnitParameterUnit_CustomUnit: Int { get }Objective C
enum { kAudioUnitParameterUnit_Generic = 0, kAudioUnitParameterUnit_Indexed = 1, kAudioUnitParameterUnit_Boolean = 2, kAudioUnitParameterUnit_Percent = 3, kAudioUnitParameterUnit_Seconds = 4, kAudioUnitParameterUnit_SampleFrames = 5, kAudioUnitParameterUnit_Phase = 6, kAudioUnitParameterUnit_Rate = 7, kAudioUnitParameterUnit_Hertz = 8, kAudioUnitParameterUnit_Cents = 9, kAudioUnitParameterUnit_RelativeSemiTones = 10, kAudioUnitParameterUnit_MIDINoteNumber = 11, kAudioUnitParameterUnit_MIDIController = 12, kAudioUnitParameterUnit_Decibels = 13, kAudioUnitParameterUnit_LinearGain = 14, kAudioUnitParameterUnit_Degrees = 15, kAudioUnitParameterUnit_EqualPowerCrossfade = 16, kAudioUnitParameterUnit_MixerFaderCurve1 = 17, kAudioUnitParameterUnit_Pan = 18, kAudioUnitParameterUnit_Meters = 19, kAudioUnitParameterUnit_AbsoluteCents = 20, kAudioUnitParameterUnit_Octaves = 21, kAudioUnitParameterUnit_BPM = 22, kAudioUnitParameterUnit_Beats = 23, kAudioUnitParameterUnit_Milliseconds = 24, kAudioUnitParameterUnit_Ratio = 25, kAudioUnitParameterUnit_CustomUnit = 26 }; typedef UInt32 AudioUnitParameterUnit;Константы
-
kAudioUnitParameterUnit_GenericУниверсальная единица измерения.
Ожидаемый, но не требуемый расположиться между 0,0 и 1.0.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_IndexedИндексируемая единица измерения.
Указывает определенный пункт меню в списке пунктов меню, обычно с помощью значений целого числа, запускающихся в 1.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_BooleanПодобная булевской переменной единица измерения.
Значение 0,0 средних значений
FALSEи ненулевое значение означаетTRUE.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_PercentЕдиница измерения процента.
Большинство параметров аудиоустройства этого типа колеблется от 0 (для 0%) до 100 (для 100%). Некоторый диапазон от от –50 до +50.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_SecondsЕдиница измерения целых секунд, указывая или абсолютное или относительное время.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_SampleFramesЕдиница измерения примерного числа кадров.
Продолжительность демонстрационного кадра, для фиксированных форматов аудио частоты кадров, равна 1.0/
kAudioUnitProperty_SampleRateсекунды.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_PhaseЕдиница измерения углового градуса.
Типичный диапазон –180 до +180 и предназначается для представления разности фаз двух сигналов. См. также
kAudioUnitParameterUnit_Degreesсвойство.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_RateЕдиница измерения коэффициента умножения.
Коэффициент умножения, чаще всего используемый для скорости воспроизведения. Значение 2,0, например, средние значения вдвое более быстро. Май также использоваться для других целей, где коэффициент умножения является надлежащим.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_HertzЕдиница измерения герц.
Абсолютная частота или подача в циклах в секунду.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_CentsЛогарифмическая единица измерения для музыкального интервала между двумя примечаниями.
Относительная музыкальная подача в центах, где 1 200 центов равны одной октаве. 100 центов равны одному полутону. См. также
kAudioUnitParameterUnit_AbsoluteCentsсвойство.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_RelativeSemiTonesОтносительная единица измерения для музыкального интервала между двумя примечаниями.
Одна октава имеет 12 полутонов, равных в размере. Каждый полутон эквивалентен 100 центам. Этот модуль параметра полезен для грубой настройки или расстраивания.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_MIDINoteNumberЕдиница измерения целого числа, соответствующая звуковой частоте.
Абсолютный слух, как определено в спецификации MIDI. Стандартная клавиатура фортепьяно колеблется от примечания MIDI номер 21 (для примечания A0) к 108 (для примечания C8), с MIDI отмечают 60 соответствий середине C (C4). Частота для данного числа примечания MIDI может зависеть от настраивающейся таблицы.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_MIDIControllerЕдиница измерения целого числа, соответствующая стандартным контрольным числам MIDI.
Диапазон от 0 до 127.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_DecibelsЛогарифмическая единица измерения, представляющая отношение между двумя уровнями звука.
Обычно используемый в качестве относительной меры усиления звуковых частот.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_LinearGainЛинейная единица измерения, представляющая различие между двумя уровнями звука.
Обычно используемый в качестве относительной меры усиления звуковых частот.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_DegreesЕдиница измерения углового градуса.
Типичный диапазон от-180 ° до +180 ° и предназначается как общее представление геометрической позиции, такой что касается источников аудиосигналов в трехмерной системе координат. См. также
kAudioUnitParameterUnit_Phaseсвойство.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_EqualPowerCrossfadeЕдиница измерения мощности звука.
Рекомендуемый диапазон от 0 до 100, представляя плавно накладывать соединение двух источников согласно
sqrt (x)иsqrt (1.0 - x).Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_MixerFaderCurve1Единица измерения мощности звука.
Рекомендуемый диапазон от 0,0 до 1.0. Использовать
pow (x, 3.0)моделировать разумный линейный ответ регулятора громкости канала микшера.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_PanАудио единица измерения позиции.
Для стандарта слева направо аудио панорамирование.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_MetersЕдиница расстояния меры, соответствуя метрам.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_AbsoluteCentsАбсолютная единица меры для музыкальной подачи примечания.
Абсолютная музыкальная подача в центах. 1 200 центов равны одной октаве. Если
fчастота в герц, тогдаabsoluteCents = 1200 * log2 (f/440) + 6900. См. такжеkAudioUnitParameterUnit_Centsсвойство.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_OctavesОтносительная единица измерения для музыкального интервала между двумя примечаниями.
Октавы в относительной подаче, где значение 1 равно интервалу
1200центы.Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_BPMЕдиница измерения целого числа для музыкального темпа, представляя удары в минуту.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_BeatsЕдиница измерения времени меры в музыкальных ударах.
1,0 удара в 120 BPM (удары в минуту) равняются продолжительности 1/2 секунды.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_MillisecondsЕдиница измерения времени миллисекунд представления меры.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_RatioБезразмерная единица измерения отношения.
Полезный для представления суммы сжатия или расширения, например.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterUnit_CustomUnitПользовательская единица измерения.
Доступный в iOS 2.0 и позже.
Обсуждение
Система не ограничивает диапазон для значений аудиоустройства. Пределы, описанные здесь, являются рекомендациями для обеспечения диапазонов значений, которые являются естественными согласно намерению каждого параметра.
Каждая единица измерения для параметра аудиоустройства реализована как значение с плавающей точкой. Некоторые параметры аудиоустройства используются индексируемым способом, например, для поддержки выбора из всплывающего меню (см.
kAudioUnitParameterUnit_Indexedсвойство), или булевым способом, такой что касается флажка (см.kAudioUnitParameterUnit_Booleanсвойство). Такие параметры имеют значения с плавающей точкой также. -
-
Опции значения для параметров аудиоустройства.
Объявление
Swift
var kAudioUnitParameterFlag_CFNameRelease: Int { get } var kAudioUnitParameterFlag_PlotHistory: Int { get } var kAudioUnitParameterFlag_MeterReadOnly: Int { get } var kAudioUnitParameterFlag_DisplayMask: Int { get } var kAudioUnitParameterFlag_DisplaySquareRoot: Int { get } var kAudioUnitParameterFlag_DisplaySquared: Int { get } var kAudioUnitParameterFlag_DisplayCubed: Int { get } var kAudioUnitParameterFlag_DisplayCubeRoot: Int { get } var kAudioUnitParameterFlag_DisplayExponential: Int { get } var kAudioUnitParameterFlag_HasClump: Int { get } var kAudioUnitParameterFlag_ValuesHaveStrings: Int { get } var kAudioUnitParameterFlag_DisplayLogarithmic: Int { get } var kAudioUnitParameterFlag_IsHighResolution: Int { get } var kAudioUnitParameterFlag_NonRealTime: Int { get } var kAudioUnitParameterFlag_CanRamp: Int { get } var kAudioUnitParameterFlag_ExpertMode: Int { get } var kAudioUnitParameterFlag_HasCFNameString: Int { get } var kAudioUnitParameterFlag_IsGlobalMeta: Int { get } var kAudioUnitParameterFlag_IsElementMeta: Int { get } var kAudioUnitParameterFlag_IsReadable: Int { get } var kAudioUnitParameterFlag_IsWritable: Int { get }Objective C
enum { kAudioUnitParameterFlag_CFNameRelease = (1L << 4), kAudioUnitParameterFlag_PlotHistory = (1L << 14), kAudioUnitParameterFlag_MeterReadOnly = (1L << 15), kAudioUnitParameterFlag_DisplayMask = (7L << 16) | (1L << 22), kAudioUnitParameterFlag_DisplaySquareRoot = (1L << 16), kAudioUnitParameterFlag_DisplaySquared = (2L << 16), kAudioUnitParameterFlag_DisplayCubed = (3L << 16), kAudioUnitParameterFlag_DisplayCubeRoot = (4L << 16), kAudioUnitParameterFlag_DisplayExponential = (5L << 16), kAudioUnitParameterFlag_HasClump = (1L << 20), kAudioUnitParameterFlag_ValuesHaveStrings = (1L << 21), kAudioUnitParameterFlag_DisplayLogarithmic = (1L << 22), kAudioUnitParameterFlag_IsHighResolution = (1L << 23), kAudioUnitParameterFlag_NonRealTime = (1L << 24), kAudioUnitParameterFlag_CanRamp = (1L << 25), kAudioUnitParameterFlag_ExpertMode = (1L << 26), kAudioUnitParameterFlag_HasCFNameString = (1L << 27), kAudioUnitParameterFlag_IsGlobalMeta = (1L << 28), kAudioUnitParameterFlag_IsElementMeta = (1L << 29), kAudioUnitParameterFlag_IsReadable = (1L << 30), kAudioUnitParameterFlag_IsWritable = (1L << 31) };Константы
-
kAudioUnitParameterFlag_CFNameReleaseЕсли аудиоустройство может генерировать названия параметра динамично, оно должно установить этот флаг.
Хост-приложения аудиоустройства должны проверить на этот устанавливаемый флаг. Если это, узел должен выпустить название параметра аудиоустройства, когда это сделано с помощью него.
Если этот флаг не установлен, хост-приложение может предположить, что аудиоустройство выпустит свои названия параметра.
Доступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_PlotHistoryЕсли установлено, добираясь
kAudioUnitProperty_ParameterHistoryInfoсвойство заполняетAudioUnitParameterHistoryInfoструктура, содержащая рекомендуемую частоту обновления и продолжительность истории.Доступный в iOS 4.3 и позже.
-
kAudioUnitParameterFlag_MeterReadOnlyДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_DisplayMaskДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_DisplaySquareRootДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_DisplaySquaredДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_DisplayCubedДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_DisplayCubeRootДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_DisplayExponentialДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_HasClumpДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_ValuesHaveStringsДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_DisplayLogarithmicДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_IsHighResolutionДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_NonRealTimeДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_CanRampДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_ExpertModeДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_HasCFNameStringДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_IsGlobalMetaДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_IsElementMetaДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_IsReadableДоступный в iOS 2.0 и позже.
-
kAudioUnitParameterFlag_IsWritableДоступный в iOS 2.0 и позже.
Обсуждение
Эти константы релевантны только в OS X, а не в iOS.
Флаги параметра аудиоустройства, для использования в
AudioUnitParameterInfoструктура данных, служите подобным словарю набором информации о параметре аудиоустройства. Должность флагового бита параметра 19 сохранена. -
-
Максимальное количество частотной характеристики укладывает структуры в стеллаж для
AudioUnitProperty_FrequencyResponseсвойство.Объявление
Swift
var kNumberOfResponseFrequencies: Int { get }Objective C
enum { kNumberOfResponseFrequencies = 1024 };Константы
-
kNumberOfResponseFrequenciesМаксимальное количество частотной характеристики укладывает структуры в стеллаж для
AudioUnitProperty_FrequencyResponseсвойство.Доступный в iOS 2.1 и позже.
Обсуждение
Массив
AudioUnitFrequencyResponseBinпередаются вkAudioUnitProperty_FrequencyResponseсmFrequencyполе заполнено. Массив возвращается сmMagnitudeполя заполнены. Если меньше, чемkNumberOfResponseFrequenciesнеобходимы, тогда первый неиспользованный стеллаж должен быть отмечен с отрицательной частотой. -
-
Ключи для аудиоустройства
kAudioUnitProperty_ClassInfoсловари свойства.Объявление
Swift
var kAUPresetVersionKey: String { get } var kAUPresetTypeKey: String { get } var kAUPresetSubtypeKey: String { get } var kAUPresetManufacturerKey: String { get } var kAUPresetDataKey: String { get } var kAUPresetNameKey: String { get } var kAUPresetRenderQualityKey: String { get } var kAUPresetCPULoadKey: String { get } var kAUPresetElementNameKey: String { get } var kAUPresetExternalFileRefs: String { get } var kAUPresetPartKey: String { get }Objective C
#define kAUPresetVersionKey "version" #define kAUPresetTypeKey "type" #define kAUPresetSubtypeKey "subtype" #define kAUPresetManufacturerKey "manufacturer" #define kAUPresetDataKey "data" #define kAUPresetNameKey "name" #define kAUPresetRenderQualityKey "render-quality" #define kAUPresetCPULoadKey "cpu-load" #define kAUPresetElementNameKey "element-name" #define kAUPresetExternalFileRefs "file-references" #define kAUPresetPartKey "part"Константы
-
kAUPresetVersionKeyДоступный в iOS 2.0 и позже.
-
kAUPresetTypeKeyДоступный в iOS 2.0 и позже.
-
kAUPresetSubtypeKeyДоступный в iOS 2.0 и позже.
-
kAUPresetManufacturerKeyДоступный в iOS 2.0 и позже.
-
kAUPresetDataKeyДоступный в iOS 2.0 и позже.
-
kAUPresetNameKeyДоступный в iOS 2.0 и позже.
-
kAUPresetRenderQualityKeyДоступный в iOS 2.0 и позже.
-
kAUPresetCPULoadKeyДоступный в iOS 2.0 и позже.
-
kAUPresetElementNameKeyДоступный в iOS 2.0 и позже.
-
kAUPresetExternalFileRefsДоступный в iOS 2.0 и позже.
-
kAUPresetPartKeyЕсли настоящее, отличает глобальную предварительную установку, установленную на глобальной области видимости от частично основанной предварительной установки, установленной на объеме части. Значение этого ключа определяется аудиоустройством, которому это применяется к.
Доступный в iOS 2.0 и позже.
Обсуждение
Используйте эти предварительно установленные ключи аудиоустройства следующим образом:
static const CFStringRef kMyVersionString = CFSTR (kAUPresetVersionKey);
-
-
Зарезервированный для системного использования.
Объявление
Swift
var kAudioUnitClumpID_System: Int { get }Objective C
enum { kAudioUnitClumpID_System = 0 };Константы
