私はAndroid用の特定のVoIPアプリを開発することを計画しています。
シナリオは次のとおりです。電話がかかってきたときに、ローカルのPCスピーカーで電話をかけている人の声を聞きたいのですが、自分のPCマイク/ヘッドセットを介してその人と話したいのです。そのため、私と話している相手の両方のオーディオストリームをWLANネットワーク経由で送信する必要があります。
このようなもの:
...
onCallStateChanged(int state, String phoneNumber){
while(state == PhoneListener.CALL_STATE_OFFHOOK){ //while phone call is happening
//send incoming speech via wlan to pc
//receive audiostream from pc microphone and direct it to the phone call
}
}
...
これは現在のAndroidAPIで可能ですか?(実際には、VoIPアプリが市場で入手可能であるためです)Android APIで調査を行ったところ、定数名が付いたAudioManagerだけが見つかりました。
public static final int STREAM_VOICE_CALL; //The audio stream for phone calls
しかし、それをどのように使用すれば、ネットワーク経由で送信できる実際のオーディオストリームにアクセスできるのかわかりません。どうすればこれを行うことができますか?
接続はTCPソケットによって実現されます。