Ссылка свойств аудиоустройства
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
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) )
Параметры
flags
displayType
Оператор импорта
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
иначе.outCycleStartBeat
outCycleEndBeat
Оператор импорта
Objective C
@import AudioUnit;
Swift
import AudioUnit
Доступность
Доступный в iOS 5.0 и позже.
На рабочем столе аудиоустройства MIDI могут реализовать эти обратные вызовы для предоставления данных MIDI хост-приложениям аудиоустройства.
-
Аудиовход и возможности канала вывода аудиоустройства.
Объявление
Swift
struct AUChannelInfo { var inChannels: Int16 var outChannels: Int16 init() init(inChannels
inChannels
: 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(mScope
mScope
: AudioUnitScope, mParameterIDmParameterID
: AudioUnitParameterID) }Objective C
typedef struct AUDependentParameter { AudioUnitScope mScope; AudioUnitParameterID mParameterID; } AUDependentParameter;
Поля
mScope
mParameterID
Доступность
Доступный в iOS 6.0 и позже.
-
Метка времени для запланированного запуска аудиоустройства I/O.
Объявление
Swift
struct AudioOutputUnitStartAtTimeParams { var mTimestamp: AudioTimeStamp var mFlags: UInt32 init() init(mTimestamp
mTimestamp
: AudioTimeStamp, mFlagsmFlags
: UInt32) }Objective C
typedef struct AudioOutputUnitStartAtTimeParams { AudioTimeStamp mTimestamp; UInt32 mFlags; } AudioOutputUnitStartAtTimeParams;
Поля
mTimestamp
mFlags
Доступность
Доступный в iOS 2.0 и позже.
-
Спецификация соединения источника месту назначения аудиоустройства.
Объявление
Swift
struct AudioUnitConnection { var sourceAudioUnit: AudioUnit var sourceOutputNumber: UInt32 var destInputNumber: UInt32 init() init(sourceAudioUnit
sourceAudioUnit
: 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(buffer
buffer
: UnsafeMutablePointer<UInt8>, sizesize
: UInt32) }Objective C
typedef struct AudioUnitExternalBuffer { Byte *buffer; UInt32 size; } AudioUnitExternalBuffer;
Поля
buffer
size
Доступность
Доступный в iOS 2.0 и позже.
-
Уровень звука аудиоустройства в определенной частоте.
Объявление
Swift
struct AudioUnitFrequencyResponseBin { var mFrequency: Float64 var mMagnitude: Float64 init() init(mFrequency
mFrequency
: Float64, mMagnitudemMagnitude
: Float64) }Objective C
typedef struct AudioUnitFrequencyResponseBin { Float64 mFrequency; Float64 mMagnitude; } AudioUnitFrequencyResponseBin;
Поля
mFrequency
mMagnitude
Обсуждение
Массив AudioUnitFrequencyResponseBin передается в kAudioUnitProperty_FrequencyResponse с mFrequency заполненным полем. Массив возвращается с заполненными полями величины. Если меньше, чем kNumberOfResponseFrequencies необходимы, то первый неиспользованный стеллаж должен быть отмечен с отрицательной частотой.
Доступность
Доступный в iOS 2.1 и позже.
-
Аудио, отсекающее, который произошел в модуле микшера.
Объявление
Swift
struct AudioUnitMeterClipping { var peakValueSinceLastCall: Float32 var sawInfinity: Boolean var sawNotANumber: Boolean init() init(peakValueSinceLastCall
peakValueSinceLastCall
: Float32, sawInfinitysawInfinity
: Boolean, sawNotANumbersawNotANumber
: Boolean) }Objective C
typedef struct AudioUnitMeterClipping { Float32 peakValueSinceLastCall; Boolean sawInfinity; Boolean sawNotANumber; } AudioUnitMeterClipping;
Поля
peakValueSinceLastCall
Максимальное значение, замеченное на канале с прошлого раза свойство, было получено.
sawInfinity
TRUE
если было бесконечное значение на этом канале с прошлого раза, когда свойство было получено.sawNotANumber
TRUE
если была плавающая точка “не число” значение на этом канале с прошлого раза, когда свойство было получено.Обсуждение
Эта структура данных используется
kAudioUnitProperty_MeterClipping
свойство.Доступность
Доступный в iOS 2.0 и позже.
-
Единица измерения для параметра аудиоустройства.
Объявление
Swift
typealias AudioUnitParameterUnit = UInt32
Objective 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(name
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), 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
.minValue
maxValue
defaultValue
flags
Вследствие некоторых капризов о путях, которыми были описаны CFNames Параметра, было необходимо добавить флаг:
kAudioUnitParameterFlag_CFNameRelease
. В нормальном использовании название параметра является по существу статическим объектом, но иногда аудиоустройство будет генерировать названия параметра динамично. Поскольку они, как ожидают, будутCFString
объекты, в этом случае узел должен выпустить те имена, когда он закончен с ними, но не было никакого способа передать это различие в поведении. Таким образом, если аудиоустройство может генерировать имя динамично, оно должно установить этот флаг в информации параметра. Узел должен проверить на этот флаг и если есть выпустить название параметра, когда это закончено с ним.Доступность
Доступный в iOS 2.0 и позже.
-
Короткая версия имени для параметра аудиоустройства.
Объявление
Swift
typealias AudioUnitParameterIDName = AudioUnitParameterNameInfo
Objective 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(inParamID
inParamID
: 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(inParamID
inParamID
: 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(updatesPerSecond
updatesPerSecond
: 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(inputToOutputCallback
inputToOutputCallback
: 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(presetNumber
presetNumber
: 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(inputProc
inputProc
: AURenderCallback, inputProcRefConinputProcRefCon
: UnsafeMutablePointer<Void>) }Objective C
typedef struct AURenderCallbackStruct { AURenderCallback inputProc; void *inputProcRefCon; } AURenderCallbackStruct;
Поля
inputProc
inputProcRefCon
Доступность
Доступный в 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(hostUserData
hostUserData
: 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(mReferenceDistance
mReferenceDistance
: Float32, mMaxDistancemMaxDistance
: Float32, mMaxAttenuationmMaxAttenuation
: Float32) }Objective C
typedef struct MixerDistanceParams { Float32 mReferenceDistance; Float32 mMaxDistance; Float32 mMaxAttenuation; // in decibels } MixerDistanceParams;
Поля
mReferenceDistance
mMaxDistance
mMaxAttenuation
Доступность
Доступный в iOS 2.0 и позже.
-
Объявление
Objective C
struct ScheduledAudioFileRegion { AudioTimeStamp mTimeStamp; ScheduledAudioFileRegionCompletionProc mCompletionProc; void *mCompletionProcUserData; struct OpaqueAudioFileID *mAudioFile; UInt32 mLoopCount; SInt64 mStartFrame; UInt32 mFramesToPlay; };
Поля
mTimeStamp
mCompletionProc
может быть
NULL
mCompletionProcUserData
mAudioFile
Должен быть допустимый и уже открытый объект аудиофайла (типа
AudioFileID
), как объявлено вAudioToolbox/AudioFile.h
.mLoopCount
0
= не циклично выполняться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 output
AudioUnitElement outputBus = 0;
AudioUnitSetProperty (
io_unit_instance,
kAudioOutputUnitProperty_EnableIO,
kAudioUnitScope_Output,
outputBus,
&enableOutput,
sizeof (enableOutput)
);
Шина модуля I/O 1 подключение для ввода аппаратных средств, такой что касается записи от микрофона. Ввод отключен по умолчанию. Для включения ввода шина, 1 входной объем должен быть включен, следующим образом:
UInt32 enableInput = 1; // to enable input
AudioUnitElement 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 };
Константы