From 85e2cea9144837d1405257fc36ee70d94541ac63 Mon Sep 17 00:00:00 2001 From: System Administrator Date: Fri, 5 Aug 2016 23:19:19 +0200 Subject: [PATCH] Add support for pause for iOS audioUnit --- common-ngn-stack/sip/NgnAVSession.mm | 14 ++++++++++++++ ios-idoubs/UI/AudioCallViewController.mm | 1 + 2 files changed, 15 insertions(+) diff --git a/common-ngn-stack/sip/NgnAVSession.mm b/common-ngn-stack/sip/NgnAVSession.mm index 90a4bda..f1b0497 100755 --- a/common-ngn-stack/sip/NgnAVSession.mm +++ b/common-ngn-stack/sip/NgnAVSession.mm @@ -380,6 +380,20 @@ -(BOOL) toggleHoldResume{ return [self toggleHoldResumeWithConfig:nil]; } +// Overrided method +-(void) setLocalHold:(BOOL)held { + const MediaSessionMgr* _mediaMgr = [super getMediaSessionMgr]; + if(_mediaMgr){ + if (const_cast(_mediaMgr)->producerSetInt32(twrap_media_audio, "hold", held ? 1 : 0) && const_cast(_mediaMgr)->consumerSetInt32(twrap_media_audio, "hold", held ? 1 : 0)) { + TSK_DEBUG_INFO("Putting call on hold succeeded. Held=%s", held ? "YES" : "NO"); + } + } + else { + TSK_DEBUG_ERROR("Session hold: no media session associated"); + } + [super setLocalHold:held]; +} + -(void) setState: (InviteState_t)newState{ if(mState == newState){ return; diff --git a/ios-idoubs/UI/AudioCallViewController.mm b/ios-idoubs/UI/AudioCallViewController.mm index b04134d..d107064 100755 --- a/ios-idoubs/UI/AudioCallViewController.mm +++ b/ios-idoubs/UI/AudioCallViewController.mm @@ -427,6 +427,7 @@ - (IBAction) onButtonClick: (id)sender{ else if(sender == buttonMute){ if([audioSession setMute:![audioSession isMuted]]){ self.buttonMute.selected = [audioSession isMuted]; + //[audioSession toggleHoldResume]; //[AudioCallViewController applyGradienWithColors: [audioSession isMuted] ? kColorsBlue : nil // forView:self.buttonMute withBorder:NO]; }