Fix soundcard usage optimization for iOS: after a conference call the AudioUnit wasn't released, which was causing next call to have no audio.

This commit is contained in:
Simon Morlat 2017-11-17 17:04:05 +01:00
parent 8b1498247a
commit fecdf406bb
2 changed files with 5 additions and 1 deletions

View file

@ -664,8 +664,10 @@ void LocalConference::onCallTerminating(LinphoneCall *call) {
convertConferenceToCall();
}
if (remote_count==0){
if (m_localParticipantStream)
if (m_localParticipantStream){
removeLocalEndpoint();
linphone_core_soundcard_hint_check(m_core);
}
if (m_recordEndpoint){
ms_audio_conference_remove_member(m_conf, m_recordEndpoint);
ms_audio_endpoint_destroy(m_recordEndpoint);

View file

@ -6342,6 +6342,8 @@ void linphone_core_soundcard_hint_check( LinphoneCore* lc){
bool_t use_rtp_io = lp_config_get_int(lc->config, "sound", "rtp_io", FALSE);
bool_t use_rtp_io_enable_local_output = lp_config_get_int(lc->config, "sound", "rtp_io_enable_local_output", FALSE);
if (lc->conf_ctx && linphone_conference_get_size(lc->conf_ctx) >= 1) return;
/* check if the remaining calls are paused */
while( the_calls ){
call = reinterpret_cast<LinphoneCall *>(the_calls->data);