Обратный вызов RemoteIO после AUMixer

Каков правильный способ реализации обратного вызова на RemoteIO после того, как aumixer сделал свое дело.

Если я использую ;

результат = AUGraphSetNodeInputCallback(mGraph, outputNode, 1, &remoteIOCallback);

Он не вызывает мою функцию

Если я использую..

результат = AudioUnitSetProperty(mIONode, kAudioOutputUnitProperty_SetInputCallback, kAudioUnitScope_Input, 1 , &remoteIOCallback, sizeof(remoteIOCallback));

Он вызывает мой обратный вызов, но когда я пытаюсь создать указатель на ioData

AudioSampleType *inData = (AudioSampleType *) ioData->mBuffers[0].mData;

он падает.

Я вообще не вижу проблемы. Это проблема с буферами? Но тогда я ничего не выделяю в буфер, только указатель на него.

Ваше здоровье


person daveAce    schedule 29.05.2011    source источник


Ответы (1)


Вместо того, чтобы сразу приводить к AudioSampleType*, сначала попробуйте привести ioData к вашему пользовательскому типу данных. Затем попробуйте получить доступ к данным в буфере.

person Nick    schedule 03.11.2012