Использование AVFoundation на watchos3 для извлечения необработанных данных (данных с плавающей запятой) микрофона (аудиовход)

В приложении iOS я делаю это с помощью следующего кода

inputNode = audioEngine.inputNode

        let bus = 0

    inputNode!.installTap(onBus: bus, bufferSize: 2048, format: inputNode!.inputFormat(forBus: bus)) {

            (buffer: AVAudioPCMBuffer!, time: AVAudioTime!) -> Void in

            let firstChannel = buffer.floatChannelData?[0]
            let arr = Array(UnsafeBufferPointer(start: firstChannel, count:Int(buffer.frameLength))) 
    self.array.append(contentsOf: arr)
    audioEngine.prepare()

        do{
            try audioEngine.start()
        }catch {
            print("audioEngine start failed")
        }

и теперь я хочу сделать это в моем приложении Watchos3, но inputnode недоступен на watchos3..... что я могу сделать, чтобы получить реальные данные с микрофона (Float)?

1 ответ

Вы установили свой AVAudioSession категория либо AVAudioSessionCategoryRecord или же AVAudioSessionCategoryPlayAndRecord и активировал сеанс?

Другие вопросы по тегам