4

私を助けてくれることに興味のある人たちと話したいデザイン上の質問がいくつかあります。同じネットワーク内の 2 つの Android フォンが VoIP を使用できるようにする簡単な VoIP プログラムを開発する予定です。私の目標は、サウンドをキャプチャし、UDP でデータを送信し、UDP データを受信して​​サウンドを再生することです。

私の現在の設計は、2 つのスレッドを持つことです。1 つはマイクをキャプチャしてデータを送信します。もう 1 つはバイトを受信して​​再生します。

MediaPlayer と MediaRecorder を使用してそれを実装し始めていました。出てきた問題は、サウンドを録音して再生するにはどうすればよいかということです。それによって、ファイルを使用する必要があるかどうかを知りたいのですが、それは遅いようですが、それとも録音をUDPソケットに自動的に送信する方法があるかどうかを教えてください。

基本的に、ファイルに記録してから再生できるようにする必要があるのか​​ 、それとも(記録と再生のために)ソケットを渡すだけでよいのか疑問に思います。

誰か提案がありますか?

どうもありがとうございました

4

2 に答える 2

1

これらのクラスをオーディオのストリーミングに使用しないでください。代わりに AudioTrack と AudioRecord を使用してください。

これらは、FD を扱わずに生のオーディオ データを再生および録音するために必要な機能を提供します。

フレーム (byte[] または short[]) を記録するときは、UDP パケットでラップします。UDP パケットを受信したら、関連する byte[] または short[] を展開して再生します。

于 2011-04-03T20:49:10.210 に答える
1

MediaRecorder には FD が必要なので、ソケットも使用できます。私はそれについて何の問題も見ません。それはすべて、システムをどのように設計するかによって異なります。

于 2010-11-14T06:44:41.113 に答える