2011-12-28 13 views
-1

オーディオバッファサンプルをリアルタイムで取得しようとしています(解像度はms)AudioBufferサンプルを取得

私はこの機能を使用していますが、エラーになります。

AudioBufferList *bufferList = NULL; 
    AudioBuffer audioBuffer = bufferList->mBuffers[0]; 
    int bufferSize = audioBuffer.mDataByteSize/sizeof(SInt32); 
    SInt32 *frame = audioBuffer.mData; 
    SInt32 signalInput[22050]; 
    for(int i=0; i<bufferSize; i++) 
    { 
     SInt32 currentSample = frame[i]; 
     *(signalInput +i) = currentSample; 
     NSLog(@"Total power was: %ld ",currentSample); 
    } 

私はここで間違っていますか? 私はオーディオサンプルを取得するだけでいいです.iページのコードを2つ(たとえば、アプリケーションのドキュメント内)にする必要はありません

ありがとうございました。

答えて

0

あなたがしたいことは、あなたがしようとしているものと矛盾しています。 NULLバッファリストはサンプルを生成できません。

あなたが取得しようとしているものを得るために、オーディオセッションとRemoteIOオーディオユニット(その他)を正しく設定するには、2ページ分のコードが必要です。それ以外の場合、サンプルはありません。電話機は、音声録音をオンにすることも、録音を設定する方法(複数のオプションがある)を知ることもできません。ドキュメントを研究し、それを処理します。

+0

私は間違ってここにそれを置いたNULLを修正しました。バッファーデータをリアルタイムで(useconds/ms)取得するために、私はremoteIOを使用できますか?湖のアプリのドキュメントは、オーディオのものがたくさんあるので、あなたが本当に必要なものが何であるかを知ることはできません。私はマイクロ秒でリアルタイムのオーディオ信号を取得する必要があります。 – Curnelious

関連する問題