воспроизведение аудиоустройства ios при записи

Мне было поручено добавить VOIP в игру (кросс-платформенный, так что могуиспользовать Apple GameKit).

В течение 3 или 4 дней яя пытаюсь обернуть голову вокруг аудиоустройства и удаленного входа ... Я пропустил десятки примеров и тому подобное, но каждый раз он только применяет простой алгоритм к входному PCM и воспроизводит его на динамике. По словам Apple,Документация для того, чтобы сделать VOIP, мы должны использовать kAudioSessionCategory_PlayAndRecord.

UInt32 audioCategory = kAudioSessionCategory_PlayAndRecord;

        status = AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, 
                                         sizeof(audioCategory), 
                                         &audioCategory);
        XThrowIfError(status, "couldn't set audio category");

1) Но мне кажется (мне), что playAndRecord всегда будет воспроизводить то, что исходит от микрофона (или, точнее, обратного вызова PerformThru //aurioTouch), я ошибся ?

У меня самый простой обратный вызов, ничего не делая, кроме AURender

static OSStatus PerformThru(
                            void                        *inRefCon, 
                            AudioUnitRenderActionFlags  *ioActionFlags, 
                            const AudioTimeStamp        *inTimeStamp, 
                            UInt32                      inBusNumber, 
                            UInt32                      inNumberFrames, 
                            AudioBufferList             *ioData)
{
OSStatus err = AudioUnitRender(THIS->rioUnit, ioActionFlags, inTimeStamp, 1, inNumberFrames, ioData);
    if (err) 
       printf("PerformThru: error %d\n", (int)err);
    return err
}

Из этого обратного вызова яЯ собираюсь отправить данные одноранговому узлу (не напрямую, конечно, но данные будут поступать с него) ...

Я не вижу, как я могу воспроизвести выходной сигнал, отличный от входного, кроме, может быть, с 2-х единиц, одна запись, одна игра, но это не такКажется, это то, что Apple намеревалась (все еще согласно документации).

И, конечно, я не могу найти какую-либо документацию об этом, аудиоустройство все еще в значительной степени недокументировано ...

У кого-нибудь будет идея, как лучше всего это сделать?

Ответы на вопрос(2)

Ваш ответ на вопрос