アプリでインターネットからのオーディオ ストリームを再生していて、グラフィック イコライザーを表示したいと考えています。ストリーミングに使用しているライブラリはFreeStreamer
. 私が使用しているグラフィックイコライザーを描画するためにZLHistogramAudioPlot
. これらの 2 つのライブラリは、私のニーズを満たす唯一のものです。問題は、それらを連携させることができないことです。
ZLHistogramAudioPlot
ビューを更新するには、buffer と bufferSize が必要です。更新方法は次のとおりです。
- (void)updateBuffer:(float *)buffer withBufferSize:(UInt32)bufferSize {
[self setSampleData:buffer length:bufferSize];
}
残念ながら、FreeStreamer
ライブラリには、サウンド カードに出力される audiot 出力を読み取る方法が用意されていません。だから、私が必要としているのは、スピーカーから再生しようとしているオーディオ出力ストリームを読み取る方法です(インターネットからのバイトストリームではありません。これは、チャンクで受信されてからバッファリングされるためです。つまり、ヒストグラムは含まれませんリアルタイム)。
AURemoteIO
from Apple のフレームワークを使用してこれを行うことができることを発見しましたCoreAudio
が、Apple のサンプル プロジェクトは理解できないほど複雑であり、オンラインでの使用に関する例はほとんどありませんAURemoteIO
。
これはこれを達成するための最良の方法ですか?もしそうなら、役立つ情報/リンクは大歓迎です.