録音時に、リアルタイムにデータをフォローしたい

[戻る]
かわはし 2012/12/03(月) 21:35:14
mciSendCommand(mop.wDeviceID, MCI_RECORD, 0, 0)を使って録音をする場合、どこかのバッファからデータを順次読み出すとか、の何らかの方法で、リアルタイムに、録音データをフォローしていく方法は、無いのでしょうか。それとも、やはり、同じmciSendCommandでのMCI_STOPMCI_SAVEが来るまでは、データ読み出しは無理なのでしょうか。

かわはし 2012/12/03(月) 22:08:13
聴き忘れました。

もし、mciSendCommandの方で、録音中のデジタルデータをリアルタイムに
フォローできないとするならば、他にどんな方法で、各時間帯のサンプリング値が
リアルタイムにフォローできるでしょうか?

gak 2012/12/11(火) 22:08:22
> フォローできないとするならば、他にどんな方法で、各時間帯のサンプリング値が
> リアルタイムにフォローできるでしょうか?
・waveInOpen() で録音する。その際にコールバック関数を指定して録音データを受け取
 る。サンプリング時間は録音時のフォーマットと受け取ったデータ長からを割り出す
・DirectShow:ISampleGrabber + ISampleGrabberCB(を実装した自作クラス)
・MediaFoundation:IMFSampleGrabberSinkCallback(を実装した自作クラス)

1つ目は微妙だが、まぁどれでもいけるかと。

古いスレッドには追加発言できません。