スピーカーにストリームを出力する PC にマイク入力データをストリーミングしようとしています。ストリームは圧縮し、後で暗号化する必要があります。
私は次のことを試しました:
アンドロイド携帯:
AudioGroup audioGroup = new AudioGroup();
audioGroup.setMode(AudioGroup.MODE_NORMAL);
AudioStream audioStream = new AudioStream(InetAddress.getLocalHost());
int port = audioStream.getLocalPort();
// tell other side which port to use (this works)
daos.writeInt(port);
audioStream.setCodec(AudioCodec.PCMU);
audioStream.setMode(RtpStream.MODE_SEND_ONLY);
audioStream.associate(adr, port);
audioStream.join(audioGroup);
AudioManager Audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
Audio.setMode(AudioManager.MODE_IN_COMMUNICATION);
受信側の Java プログラム。送信に UDP ソケットを使用するにはどうすればよいですか?
DatagramSocket datagramSocket = new DatagramSocket(port);
System.out.println("Waiting for audio data...");
source = AudioSystem.getAudioInputStream(????.getInputStream());
AudioSystem.getAudioInputStream(AudioFormat.Encoding.ULAW, source);
byte[] audioData = new byte[4096];
source.read(audioData, 0, 4096);
toSpeaker(audioData);
誰かが私を助けてくれることを願っています。もちろん、他のアイデアも大歓迎です。