スレッドのメッセージ処理について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
hana

スレッドのメッセージ処理について

#1

投稿記事 by hana » 14年前

現在、winapi32を使ってボイスチャットを作ろうとしています。

音声取得にbeginthreadex関数で音声取得専用のスレッドを作成し、waveInStart関数を使って音声を取得しようとしているのですが、beginthreadexで作成されたスレッドがメッセージキューを持たないため、waveInStartのバッファが一杯になった時に発生するMM_WIM_DATAをどのように処理していいか分かりません。

このメッセージを処理する方法を知っている方がいましたら教えていただけないでしょうか?

anyone

Re: スレッドのメッセージ処理について

#2

投稿記事 by anyone » 14年前

http://msdn.microsoft.com/ja-jp/library/cc428805.aspx
waveInOpen関数にコールバックを選ぶdwCallbackという引数があるので
そこにデータがいっぱいになったときの処理を書いたコールバック関数を
指定してあげればいいと思います。

ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: スレッドのメッセージ処理について

#3

投稿記事 by ISLe » 14年前

waveInOpenでは、ウインドウハンドル以外にも、イベントハンドル,スレッドハンドル,関数のポインタを指定できます。
コールバック関数を使うのが分かりやすいのではないでしょうか。
"waveInOpen CALLBACK_FUNCTION"で検索してサンプルプログラムを探してみてください。

閉鎖

“C言語何でも質問掲示板” へ戻る