Преобразование режима RtpStream из MODE_NORMAL в MODE_SEND_ONLY, получение исключения Поток занят - PullRequest
0 голосов
/ 03 мая 2020

Я могу установить и использовать rtp, используя AudioStream между локальным и удаленным адресом.

InetAddress inetAddressLocal = InetAddress.getByName(main.getLocalIpAddress());
audioStream.setCodec(AudioCodec.GSM);
audioStream.setMode(RtpStream.MODE_NORMAL); //<---- RtpStream MODE_NORMAL
InetAddress inetAddressRemote = InetAddress.getByName(address);
audioStream.associate(inetAddressRemote, port);
audioStream.join(audioGroup);

Но теперь, когда я удерживаю вызов, я хочу преобразовать режим потока в MODE_SEND_ONLY, однако isBusy() возвращается как истина, и я не могу преобразовать режим.

Что я сделал:

Вызов audioStream.join(null), после чего isBusy() возвращает false, затем я установил режим на MODE_SEND_ONLY.

if(audioStream.isBusy()){
     audioStream.join(null);
     audioStream.setMode(RtpStream.MODE_SEND_ONLY);
}

Однако я не уверен, что это правильный путь, так как я все еще вижу отправленные и полученные пакеты.

Как правильно переключать режим?

...