AVAudioNode
Наследование
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 8.0 и позже.
AVAudioNode класс является абстрактным классом для аудио генерации, обработки или блока I/O.
AVAudioEngine объекты содержат экземпляры различных AVAudioNode подклассы. Этот базовый класс обеспечивает определенную общую функциональность.
Узлы имеют шины ввода и вывода, которые могут считаться точками подключения. Например, эффект обычно имеет одну входную шину и одну выходную шину. Микшер обычно имеет многократные входные шины и одну выходную шину.
Шины имеют форматы, выраженные с точки зрения частоты дискретизации и количества каналов. При создании соединений между узлами часто формат должен соответствовать точно. Однако существуют исключения такой как AVAudioMixerNode и AVAudioOutputNode классы.
Узлы в настоящее время не обеспечивают полезную функциональность, пока не присоединено к механизму.
-
Возвращает формат ввода для указанной шины.
Объявление
Swift
func inputFormatForBus(_bus: AVAudioNodeBus) -> AVAudioFormat!Objective C
- (AVAudioFormat *)inputFormatForBus:(AVAudioNodeBus)busПараметры
busШина.
Возвращаемое значение
AVAudioFormatобъект, представляющий формат ввода шины.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
Имя входной шины.
Объявление
Swift
func nameForInputBus(_bus: AVAudioNodeBus) -> String!Objective C
- (NSString *)nameForInputBus:(AVAudioNodeBus)busПараметры
busВходная шина.
Возвращаемое значение
Имя входной шины.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
numberOfInputsСвойствоЧисло входных шин для узла. (только для чтения)
Объявление
Swift
var numberOfInputs: Int { get }Objective C
@property(nonatomic, readonly) NSUInteger numberOfInputsОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
Возвращает выходной формат для указанной шины.
Объявление
Swift
func outputFormatForBus(_bus: AVAudioNodeBus) -> AVAudioFormat!Objective C
- (AVAudioFormat *)outputFormatForBus:(AVAudioNodeBus)busПараметры
busШина.
Возвращаемое значение
AVAudioFormatобъект, представляющий выходной формат шины.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
-
Имя выходной шины.
Объявление
Swift
func nameForOutputBus(_bus: AVAudioNodeBus) -> String!Objective C
- (NSString *)nameForOutputBus:(AVAudioNodeBus)busПараметры
busВыходная шина.
Возвращаемое значение
Имя выходной шины.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
numberOfOutputsСвойствоЧисло выходных шин для узла. (только для чтения)
Объявление
Swift
var numberOfOutputs: Int { get }Objective C
@property(nonatomic, readonly) NSUInteger numberOfOutputsОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
См. также
-
Устанавливает аудио касание на шине для записи. монитор, и наблюдает вывод узла
Объявление
Swift
func installTapOnBus(_bus: AVAudioNodeBus, bufferSizebufferSize: AVAudioFrameCount, formatformat: AVAudioFormat!, blocktapBlock: AVAudioNodeTapBlock!)Objective C
- (void)installTapOnBus:(AVAudioNodeBus)busbufferSize:(AVAudioFrameCount)bufferSizeformat:(AVAudioFormat *)formatblock:(AVAudioNodeTapBlock)tapBlockПараметры
busВыходная шина узла, к которой можно присоединить касание.
bufferSizeТребуемый размер входящих буферов. Реализация может выбрать другой размер.
formatЕсли не -
nil, попытки применить это как формат указанной выходной шины.Это должно только быть сделано при присоединении к выходной шине, не подключенной к другому узлу; ошибка закончится иначе. Касание и форматы соединения (если не -
nil) на указанной шине должно быть идентичным. Иначе, последняя работа переопределит любой ранее формат набора.Для
AVAudioOutputNode, коснитесь формат должен быть указан какnil.tapBlockБлок, который вызовут с аудио буферами. Посмотрите
AVAudioNodeTapBlockдля блочных параметров.Обсуждение
Только одно касание может быть установлено на любой шине. В то время как механизм работает, касания могут быть безопасно установлены и удалены.
AVAudioEngine *engine = [[AVAudioEngine alloc] init];AVAudioInputNode *input = [engine inputNode];AVAudioFormat *format = [input outputFormatForBus: 0];[input installTapOnBus: 0 bufferSize: 8192 format: format block: ^(AVAudioPCMBuffer *buf, AVAudioTime *when) {// ‘buf' contains audio captured from input node at time 'when'}];....// start engine
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
-
Удаляет аудио касание на шине.
Объявление
Swift
func removeTapOnBus(_bus: AVAudioNodeBus)Objective C
- (void)removeTapOnBus:(AVAudioNodeBus)busПараметры
busВыходная шина узла, касание которой должно быть удалено.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
-
engineСвойствоАудио механизм узла. (только для чтения)
Объявление
Swift
var engine: AVAudioEngine! { get }Objective C
@property(nonatomic, readonly) AVAudioEngine *engineОбсуждение
Возвраты
nilесли узел не присоединен к аудио механизму.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
-
lastRenderTimeСвойствоВремя, в течение которого последний раз представляется узел. (только для чтения)
Объявление
Swift
var lastRenderTime: AVAudioTime! { get }Objective C
@property(nonatomic, readonly) AVAudioTime *lastRenderTimeОбсуждение
Возвратиться
nilесли узел не подключен к узлу ввода или вывода, если механизм не работает или.Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
-
Очистите предыдущее состояние обработки модуля.
Объявление
Swift
func reset()Objective C
- (void)resetОператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
Типы данных
-
Блок, получающий копии вывода
AVAudioNode.Объявление
Swift
typealias AVAudioNodeTapBlock = (AVAudioPCMBuffer!, AVAudioTime!) -> VoidObjective C
typedef void (^AVAudioNodeTapBlock)(AVAudioPCMBuffer *buffer, AVAudioTime *when);Обсуждение
Этот блок имеет два параметра:
bufferпараметр является буфером аудио, полученного от выводаAVAudioNode.whenпараметр является временем, буфер был получен.
Оператор импорта
Objective C
@import AVFoundation;Swift
import AVFoundationДоступность
Доступный в iOS 8.0 и позже.
