Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы AVFoundation ссылка класса AVAudioNode

Опции
Развертывание Target:

На этой странице
Язык:

AVAudioNode

AVAudioNode класс является абстрактным классом для аудио генерации, обработки или блока I/O.

AVAudioEngine объекты содержат экземпляры различных AVAudioNode подклассы. Этот базовый класс обеспечивает определенную общую функциональность.

Узлы имеют шины ввода и вывода, которые могут считаться точками подключения. Например, эффект обычно имеет одну входную шину и одну выходную шину. Микшер обычно имеет многократные входные шины и одну выходную шину.

Шины имеют форматы, выраженные с точки зрения частоты дискретизации и количества каналов. При создании соединений между узлами часто формат должен соответствовать точно. Однако существуют исключения такой как AVAudioMixerNode и AVAudioOutputNode классы.

Узлы в настоящее время не обеспечивают полезную функциональность, пока не присоединено к механизму.

Соответствует


Оператор импорта


Swift

import AVFoundation

Objective C

@import AVFoundation;

Доступность


Доступный в OS X v10.10 и позже.
  • Устанавливает аудио касание на шине для записи. монитор, и наблюдает вывод узла

    Объявление

    Swift

    func installTapOnBus(_ bus: AVAudioNodeBus, bufferSize bufferSize: AVAudioFrameCount, format format: AVAudioFormat!, block tapBlock: AVAudioNodeTapBlock!)

    Objective C

    - (void)installTapOnBus:(AVAudioNodeBus)bus bufferSize:(AVAudioFrameCount)bufferSize format:(AVAudioFormat *)format block:(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

    Доступность

    Доступный в OS X v10.10 и позже.

  • Удаляет аудио касание на шине.

    Объявление

    Swift

    func removeTapOnBus(_ bus: AVAudioNodeBus)

    Objective C

    - (void)removeTapOnBus:(AVAudioNodeBus)bus

    Параметры

    bus

    Выходная шина узла, касание которой должно быть удалено.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.10 и позже.

  • Аудио механизм узла. (только для чтения)

    Объявление

    Swift

    var engine: AVAudioEngine! { get }

    Objective C

    @property(nonatomic, readonly) AVAudioEngine *engine

    Обсуждение

    Возвраты nil если узел не присоединен к аудио механизму.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.10 и позже.

  • lastRenderTime lastRenderTime Свойство

    Время, в течение которого последний раз представляется узел. (только для чтения)

    Объявление

    Swift

    var lastRenderTime: AVAudioTime! { get }

    Objective C

    @property(nonatomic, readonly) AVAudioTime *lastRenderTime

    Обсуждение

    Возвратиться nil если узел не подключен к узлу ввода или вывода, если механизм не работает или.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.10 и позже.

  • Очистите предыдущее состояние обработки модуля.

    Объявление

    Swift

    func reset()

    Objective C

    - (void)reset

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.10 и позже.

Типы данных

  • Блок, получающий копии вывода AVAudioNode.

    Объявление

    Swift

    typealias AVAudioNodeTapBlock = (AVAudioPCMBuffer!, AVAudioTime!) -> Void

    Objective C

    typedef void (^AVAudioNodeTapBlock)(AVAudioPCMBuffer *buffer, AVAudioTime *when);

    Обсуждение

    Этот блок имеет два параметра:

    • buffer параметр является буфером аудио, полученного от вывода AVAudioNode.

    • when параметр является временем, буфер был получен.

    Оператор импорта

    Objective C

    @import AVFoundation;

    Swift

    import AVFoundation

    Доступность

    Доступный в OS X v10.10 и позже.