3

マイクをオンにして、ある種のライブストリームを開いて、別の場所にあるPCで何が起こっているかを聞くにはどうすればよいですか?ベビーモニタープロジェクトになります。

私がこれを行うべき方法について何かアイデアはありますか?私は本当にタスクを実行するためのコードを求めています。残りは私ができます。私はDelphiを学んでいるので、大丈夫なはずです。

また、マイクを止めることができる必要があります。この段階では、話をしたくはありません。リアルタイムで、またはできるだけ近くで聞いてください。

4

4 に答える 4

6

うわー、誰もがこれのために外部パッケージを推奨し続けています. これは Windows に組み込まれています。waveInOpen/waveInPrepareHeader/waveInBufferRead API は、Windows のすべてのバージョンで動作するはずです。

より細かい制御が必要な場合は、DirectSoundCapture を使用することもできます。

于 2009-07-25T21:52:53.463 に答える
2

Audiolabには、必要な (およびそれ以上の) 機能がすべて備わっており、非営利目的での使用は無料です。また、Win32 と .NET の両方をサポートしています。

低レベルに進みたい場合は、Wave API (C++ の例) など、API のサポート記録の 1 つを調べる必要があります。

于 2009-07-25T07:27:55.810 に答える
1

オーディオを録音するためのコンポーネントを含むWave Audio Packageを見つけました。ファイルまたはストリームに記録したり、データのブロックが使用可能になったときにイベント ハンドラーを呼び出したりできます。

オーディオ リダイレクタが含まれており、オーディオを 1 つの場所 (この場合はレコーダー コンポーネントなど) から取得し、別の場所 (再生コンポーネントなど) に送信します。マイクの音声を収集しながら再生したい場合は、おそらくそれが必要になるでしょう。パッケージには、いくつかのデモが付属しています。

リダイレクタは、デフォルトに加えて他の再生オブジェクトを受け入れることができるように見えるので、別のコンピュータでサウンドを再生したい場合は、データをローカルに送信する代わりにネットワーク経由で送信する子孫クラスを作成してみてください。スピーカー。

于 2009-07-25T02:13:48.027 に答える
0

Delphi を介して Windows 環境で行った多くの統合は、COM / ActiveX オブジェクトを介して行われました。CoCreateInstance 呼び出しを検索し、マイクを処理するActiveX コントロールを探します。

于 2009-07-25T01:50:49.227 に答える