Где находится аудио SampleBuffer в OpenTok, TokBox ios SDK

Я использую OpenTok iOS SDK для потоковой передачи с iPhone на Chrome. Что я хотел бы сделать - это записать видео в высоком разрешении во время потоковой передачи.

Используя пользовательский видеозахват через интерфейс OTVideoCapture из примера 2 Давайте построим OTPublisher, я могу успешно записать буфер с образцом видео в файл. Проблема в том, что я не могу найти ссылку на аудиоданные, собранные с микрофона.

Я предполагаю, что его использование audioInput(AVCaptureDeviceInput) для audioOutput(AVCaptureAudioDataOutput) через AVCaptureAudioDataOutputSampleBufferDelegate используется где-то.

Кто-нибудь знает, как получить доступ к нему из OpenTok iOS SDK?

1 ответ

Решение

CaptureOutput: didOutputSampleBuffer: fromConnection, поле fromConnection будет дифференцировать аудио и звуковое соединение и предоставит соответствующий буфер.

Для настройки аудио ввода / вывода вы можете попробовать в методе Let-Build-OTPublisher initCapture

    //add audio input / outputs
AVCaptureDevice * audioDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio];
_audioInput = [AVCaptureDeviceInput deviceInputWithDevice:audioDevice error:nil];
if([_captureSession canAddInput:_audioInput])
{
    NSLog(@"added audio device input");
    [_captureSession addInput:_audioInput];
}

_audioOutput = [[AVCaptureAudioDataOutput alloc] init];
if([_captureSession canAddOutput:_audioOutput])
{
    NSLog(@"audio output added");
    [_captureSession addOutput:_audioOutput];
}


[_audioOutput setSampleBufferDelegate:self queue:_capture_queue];
Другие вопросы по тегам