Open fpetrovski opened 6 months ago
@fpetrovski , apologies for the belated reply. Thank you so much for the detailed error report. That helps out a lot. I'll reach out to engineering now. Will keep you posted.
@fpetrovski, heard back from Engineering.
The Audio Device does not have a direct reference from Session and will not be cleared after session disconnect/cleanup. To avoid the error, you can close the app and reopen it to do AudioDeviceManager.setAudioDevice(audioDevice)
to set it to a different audio device.
Alternatively, check before setting the audio device, you can do the following to avoid the error.
if (AudioDeviceManager.getAudioDevice() == null) {
AudioDeviceManager.setAudioDevice(audioDevice);
}
Hi, thanks for getting back to me. The suggestion that is provided does not apply in this case, or is a workaround at best for different usecases. As I have already stated, we are aware that the Audio Device will not be cleared after session disconnect/cleanup. That's why we are reporting this issue. We are also aware that closing and clearing the app resets things, but that should not be the default usecase. Additionally The SDK does not provide a way to clear and change the customAudioDevice (outside of reseting the app).
Would you be able to relay our request/suggestion to the engineering team: The AudioDevice should provide a way to be cleared and ready for a new set of parameters (new AudioDevice). Or at least be cleared by default after a video call has been ended.
Restarting the app is out of the question for our use case, and should be out of the question for any other use case. We cannot force the users to "restart".
@fpetrovski, we'll look into this: https://jira.vonage.com/browse/VIDCS-2108.
Describe the bug Unable to change customAudioDevice (extended from BaseAudioDevice) between video calls. Once the customAudioDevice has been set, it can't be change at all, unless the app is stopped and restarted.
To Reproduce
AudioDeviceManager.setAudioDevice(audioDevice)
and build VideoCall Session.AudioDeviceManager.setAudioDevice(audioDevice)
Expected behavior The AudioDevice should be cleared after a video call has been ended. We need the AudioDeviceManager to drop references to the previous AudioDevice and be ready to accept a new one.
Device (please compete the following information):