4

プログラムでオーディオをキャプチャするにはどうすればよいでしょうか? ネットワーク上のデスクトップをリアルタイムでストリーミングするアプリケーションを実装しています。動画部分は終了しました。オーディオ部分を実装する必要があります。サウンド カードから PCM データを取得してエンコーダに供給する方法が必要です (Windows Media フォーマットを使用して実装)。

答えは、Win32 API の openMixer()、waveInOpen() 関数に関連していると思いますが、どうすればよいか正確にはわかりません。

必要なチャネルを開く方法とそこから PCM データを読み取る方法は?

前もって感謝します。

4

2 に答える 2

7

新しいWindowsVistaCore Audio APIは、これを明示的にサポートしているため(Loopback Recordingと呼ばれます)、Vistaのみのアプリケーションを使用できる場合は、これが最適な方法です。

これを行う方法については、MSDNのループバック記録の記事を参照してください。

于 2008-09-26T14:16:54.413 に答える
4

OSを使用してこれを行う直接的な方法はないと思います。これは、サウンドカードに存在する(または存在しない)機能です。一部のサウンドカードにはループバックインターフェイスがあります。クリエイティブはこれを「WhatUHear」と呼んでいます。マイクではなくこれを入力として選択し、すでに知っている通常のwaveInOpen()を使用して録音します。

サウンドカードにこの機能がない場合は、自分でドライバーを作成するなどのクレイジーなことをする以外に、運が悪いと思います。または、スピーカー出力からライン入力までケーブルを配線するようにユーザーを説得することもできます:)

于 2008-09-21T19:43:16.677 に答える