From be56723cce4cd60ddc144ebe6ac20607675b3006 Mon Sep 17 00:00:00 2001 From: chenqiyang <1406175257@qq.com> Date: 星期三, 17 七月 2024 09:33:38 +0800 Subject: [PATCH] 更新sdk --- HDLLinPhoneSDK(OC)/HDLLinPhoneSDK/HDLLinphoneManager.m | 44 ++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 42 insertions(+), 2 deletions(-) diff --git "a/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLinphoneManager.m" "b/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLinphoneManager.m" index f914edc..2420719 100644 --- "a/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLinphoneManager.m" +++ "b/HDLLinPhoneSDK\357\274\210OC\357\274\211/HDLLinPhoneSDK/HDLLinphoneManager.m" @@ -54,6 +54,8 @@ //#import "configManager.h" #import "HDLLinphoneLog.h" +#import "HDLLinphoneTimerManager.h" + #define LINPHONE_LOGS_MAX_ENTRY 5000 @@ -68,6 +70,9 @@ #define kIAPReady @"IAPReady" // no data #define IPAD (HDLLinphoneManager.runningOnIpad) + +#define RESET_VIDEO_ENABLE_TIMER_NAME @"hdlLinphoneVideoEnableTimer" //閲嶈瑙嗛寮�璁℃椂鍣ㄥ悕绉� +#define RESET_VIDEO_DISABLE_TIMER_NAME @"hdlLinphoneVideoDisableTimer" //閲嶈瑙嗛鍏宠鏃跺櫒鍚嶇О static LinphoneCore *theLinphoneCore = nil; static HDLLinphoneManager *theLinphoneManager = nil; @@ -832,7 +837,7 @@ - (void)onCall:(LinphoneCall *)call StateChanged:(LinphoneCallState)state withMessage:(const char *)message { - NSLog(@"鍛煎彨鐘舵�侊細%u",state); + NSLog(@"鍛煎彨鐘舵�侊細%u,淇℃伅锛�%s",state,message); HDLLinPhoneSDK.instance.IsIncomingReceivedCallState=false; // Handling wrapper @@ -1153,12 +1158,22 @@ speaker_already_enabled = TRUE; } } + + if( state == LinphoneCallConnected ){ + NSLog(@"杩炴帴浜�"); +// [self enableVideoPlay:TRUE]; + } + if (state == LinphoneCallStreamsRunning) { if (_speakerBeforePause) { _speakerBeforePause = FALSE; [self setSpeakerEnabled:TRUE]; speaker_already_enabled = TRUE; } + if (!self.isResettingVideoEnable&&self.deviceType==HDLLPType_HDLSR) { + self.isResettingVideoEnable=YES; + [self resetVideoEnable]; + } } if (state == LinphoneCallConnected && !mCallCenter) { /*only register CT call center CB for connected call*/ @@ -1179,6 +1194,31 @@ userInfo:dict]; } +/*閲嶆柊鎷夊彇瑙嗛娴侊紙瑙e喅鑷爺鍙瀵硅鍋跺皵鍑虹幇瑙嗛娴佹媺鍙栧緢鎱㈢殑闂锛� + */ +-(void)resetVideoEnable{ + NSLog(@"閲嶇疆瑙嗛寮�鍏�"); + __weak typeof(self) weakSelf = self; + [self enableVideoPlay:TRUE]; +// [self enableVideoPlay:FALSE]; +// [[HDLLinphoneTimerManager sharedInstance] scheduleTimerWithInterval:0.5 timerName:RESET_VIDEO_ENABLE_TIMER_NAME count:^(double count) { +// +// } finished:^{ +// NSLog(@"鎵撳紑瑙嗛"); +// [weakSelf enableVideoPlay:TRUE]; +// }]; +} + +/*鏄惁鍏佽瑙嗛鎾斁 + */ +-(void)enableVideoPlay:(bool_t)enable{ + LinphoneCall *call = linphone_core_get_current_call(LC); + LinphoneCallParams *call_params = linphone_core_create_call_params(LC,call); + linphone_call_params_enable_video(call_params, enable); + linphone_call_update(call, call_params); + linphone_call_params_unref(call_params); +} + static void linphone_iphone_call_state(LinphoneCore *lc, LinphoneCall *call, LinphoneCallState state, const char *message) { [(__bridge HDLLinphoneManager *)linphone_core_cbs_get_user_data(linphone_core_get_current_callbacks(lc)) onCall:call StateChanged:state withMessage:message]; @@ -1196,7 +1236,7 @@ } - (void)onGlobalStateChanged:(LinphoneGlobalState)state withMessage:(const char *)message { -// LOGI(@"onGlobalStateChanged: %d (message: %s)", state, message); + LOGI(@"onGlobalStateChanged: %d (message: %s)", state, message); NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInt:state], @"state", -- Gitblit v1.8.0