Я планирую разработать приложение для VoIP для Android.
Вот сценарий:
когда происходит телефонный звонок, я хочу услышать человека, который звонит через мои локальные динамики компьютера, и я хочу поговорить с ним через мой собственный микрофон / гарнитуру компьютера. Поэтому мне нужно отправить аудиопоток обо мне и человеке, с которым я разговариваю, через сеть 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
}
}
...
Возможно ли это с текущим Android API? (На самом деле так и должно быть, так как приложения VoIP доступны на рынке)
Я провел некоторое исследование в Android API, и все, что я нашел, это AudioManager с константой
public static final int STREAM_VOICE_CALL; //The audio stream for phone calls
Но я не знаю, как использовать его по-своему, как он должен дать мне доступ к реальным аудиопотокам, которые я могу отправить по сети. Как мне это удается?
Соединение будет осуществляться через сокеты TCP.