From bbfd7e95726bf90addbcf73238510dcd95988222 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Tue, 12 Jul 2011 10:38:17 +0200 Subject: [PATCH] video integration --- Classes/LinphoneUI/LinphoneManager.m | 10 ++ Classes/PhoneViewController.m | 1 + Classes/VideoViewController.xib | 98 +++++++++++++++- Settings.bundle/Root.plist | 62 ++-------- Settings.bundle/audio.plist | 65 +++++++++++ Settings.bundle/video.plist | 25 ++++ linphone.xcodeproj/project.pbxproj | 108 +++++++++++++++++- linphonerc | 10 +- .../liblinphone.xcodeproj/project.pbxproj | 45 +++++++- submodules/linphone | 2 +- 10 files changed, 360 insertions(+), 66 deletions(-) create mode 100644 Settings.bundle/audio.plist create mode 100644 Settings.bundle/video.plist diff --git a/Classes/LinphoneUI/LinphoneManager.m b/Classes/LinphoneUI/LinphoneManager.m index c23e898ac..fd183eb53 100644 --- a/Classes/LinphoneUI/LinphoneManager.m +++ b/Classes/LinphoneUI/LinphoneManager.m @@ -503,6 +503,16 @@ void networkReachabilityCallBack(SCNetworkReachabilityRef target, SCNetworkReach [self configurePayloadType:"PCMU" fromPrefKey:@"pcmu_preference" withRate:8000]; [self configurePayloadType:"PCMA" fromPrefKey:@"pcma_preference" withRate:8000]; + //get video codecs from linphonerc + const MSList *videoCodecs=linphone_core_get_video_codecs(theLinphoneCore); + //disable video all codecs + for (elem=videoCodecs;elem!=NULL;elem=elem->next){ + pt=(PayloadType*)elem->data; + linphone_core_enable_payload_type(theLinphoneCore,pt,FALSE); + } + [self configurePayloadType:"MP4V-ES" fromPrefKey:@"mp4v-es_preference" withRate:90000]; + + UIDevice* device = [UIDevice currentDevice]; bool backgroundSupported = false; if ([device respondsToSelector:@selector(isMultitaskingSupported)]) diff --git a/Classes/PhoneViewController.m b/Classes/PhoneViewController.m index 46667d7cf..1281e71c6 100644 --- a/Classes/PhoneViewController.m +++ b/Classes/PhoneViewController.m @@ -170,6 +170,7 @@ mIncomingCallActionSheet=nil; } } + [self dismissModalViewControllerAnimated:TRUE];//just in case [address setHidden:false]; if (username) { diff --git a/Classes/VideoViewController.xib b/Classes/VideoViewController.xib index fa99aba3c..5aa3cd0f7 100644 --- a/Classes/VideoViewController.xib +++ b/Classes/VideoViewController.xib @@ -2,9 +2,9 @@ 1056 - 10J869 + 10K540 1305 - 1038.35 + 1038.36 461.00 com.apple.InterfaceBuilder.IBCocoaTouchPlugin @@ -48,7 +48,9 @@ 274 {320, 400} + + 1 NO IBCocoaTouchFramework @@ -57,6 +59,7 @@ 292 {{13, 408}, {72, 37}} + NO IBCocoaTouchFramework @@ -86,6 +89,7 @@ 292 {{98, 408}, {129, 37}} + NO IBCocoaTouchFramework @@ -105,6 +109,7 @@ 292 {{240, 408}, {72, 37}} + NO IBCocoaTouchFramework @@ -125,6 +130,7 @@ 292 {{210, 278}, {102, 114}} + 3 @@ -138,6 +144,7 @@ {{0, 20}, {320, 460}} + 3 @@ -159,6 +166,14 @@ 3 + + + mDisplay + + + + 10 + @@ -265,9 +280,84 @@ - 9 + 10 + + + + YES + + UIHangUpButton + UIButton + + IBProjectSource + ./Classes/UIHangUpButton.h + + + + UIMuteButton + UIToggleButton + + IBProjectSource + ./Classes/UIMuteButton.h + + + + UIToggleButton + UIButton + + IBProjectSource + ./Classes/UIToggleButton.h + + + + VideoViewController + UIViewController + + YES + + YES + mDisplay + mHangUp + mMute + + + YES + UIImageView + UIHangUpButton + UIMuteButton + + + + YES + + YES + mDisplay + mHangUp + mMute + + + YES + + mDisplay + UIImageView + + + mHangUp + UIHangUpButton + + + mMute + UIMuteButton + + + + + IBProjectSource + ./Classes/VideoViewController.h + + + - 0 IBCocoaTouchFramework diff --git a/Settings.bundle/Root.plist b/Settings.bundle/Root.plist index 5b703ede8..a1b42969d 100644 --- a/Settings.bundle/Root.plist +++ b/Settings.bundle/Root.plist @@ -94,69 +94,25 @@ Title - Codecs + Media Type PSGroupSpecifier - DefaultValue - - Key - speex_16k_preference + File + audio Title - Speex 16Khz + Audio Type - PSToggleSwitchSpecifier + PSChildPaneSpecifier - DefaultValue - - Key - speex_8k_preference + File + video Title - Speex 8Khz + Video Type - PSToggleSwitchSpecifier - - - DefaultValue - - Key - gsm_8k_preference - Title - GSM - Type - PSToggleSwitchSpecifier - - - DefaultValue - - Key - ilbc_preference - Title - ILBC - Type - PSToggleSwitchSpecifier - - - DefaultValue - - Key - pcmu_preference - Title - PCMU - Type - PSToggleSwitchSpecifier - - - DefaultValue - - Key - pcma_preference - Title - PCMA - Type - PSToggleSwitchSpecifier + PSChildPaneSpecifier Title diff --git a/Settings.bundle/audio.plist b/Settings.bundle/audio.plist new file mode 100644 index 000000000..33d5f5ce2 --- /dev/null +++ b/Settings.bundle/audio.plist @@ -0,0 +1,65 @@ + + + + + PreferenceSpecifiers + + + Title + Codecs + Type + PSGroupSpecifier + + + DefaultValue + + Key + speex_16k_preference + Title + Speex 16Khz + Type + PSToggleSwitchSpecifier + + + DefaultValue + + Key + gsm_8k_preference + Title + GSM + Type + PSToggleSwitchSpecifier + + + DefaultValue + + Key + ilbc_preference + Title + ILBC + Type + PSToggleSwitchSpecifier + + + DefaultValue + + Key + pcmu_preference + Title + PCMU + Type + PSToggleSwitchSpecifier + + + DefaultValue + + Key + pcma_preference + Title + PCMA + Type + PSToggleSwitchSpecifier + + + + diff --git a/Settings.bundle/video.plist b/Settings.bundle/video.plist new file mode 100644 index 000000000..b8f578b92 --- /dev/null +++ b/Settings.bundle/video.plist @@ -0,0 +1,25 @@ + + + + + PreferenceSpecifiers + + + Type + PSGroupSpecifier + Title + Codecs + + + Type + PSToggleSwitchSpecifier + Title + mpeg4 + Key + mp4v-es_preference + DefaultValue + + + + + diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index da7c60ed8..d15fc40af 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -57,6 +57,7 @@ 225CB2EE11ABB65D00628906 /* clavier-01-160px.png in Resources */ = {isa = PBXBuildFile; fileRef = 225CB2ED11ABB65D00628906 /* clavier-01-160px.png */; }; 225CB2FA11ABB76400628906 /* linphone-banner.png in Resources */ = {isa = PBXBuildFile; fileRef = 225CB2F911ABB76400628906 /* linphone-banner.png */; }; 2264B6D211200342002C2C53 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2264B6D111200342002C2C53 /* SystemConfiguration.framework */; }; + 226B563F13CAF1CD00921595 /* audio.plist in Resources */ = {isa = PBXBuildFile; fileRef = 226B563E13CAF1CD00921595 /* audio.plist */; }; 226F2ED61344B0EF00F6EF27 /* libopencore-amrwb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED31344B0EF00F6EF27 /* libopencore-amrwb.a */; }; 226F2ED71344B0EF00F6EF27 /* libopencore-amrnb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED41344B0EF00F6EF27 /* libopencore-amrnb.a */; }; 226F2ED81344B0EF00F6EF27 /* libmsamr.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED51344B0EF00F6EF27 /* libmsamr.a */; }; @@ -84,6 +85,7 @@ 22E0A823111C44E100B04932 /* ConsoleViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22E0A81E111C44E100B04932 /* ConsoleViewController.xib */; }; 22E0A824111C44E100B04932 /* ConsoleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E0A81F111C44E100B04932 /* ConsoleViewController.m */; }; 22E19E48138A67A000FBFE87 /* missed_call.png in Resources */ = {isa = PBXBuildFile; fileRef = 22E19E47138A67A000FBFE87 /* missed_call.png */; }; + 22E1A9E813CAF4AA00219531 /* video.plist in Resources */ = {isa = PBXBuildFile; fileRef = 22E1A9E713CAF4AA00219531 /* video.plist */; }; 22E5B0AF133B5EA20044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AD133B5EA20044EA25 /* libssl.a */; }; 22E5B0B0133B5EA20044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5B0AE133B5EA20044EA25 /* libcrypto.a */; }; 22F2508E107141E100AC9B3F /* PhoneViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22F2508C107141E100AC9B3F /* PhoneViewController.m */; }; @@ -108,6 +110,13 @@ remoteGlobalIDString = 22DD19BE13A8D7FA0018ECD4; remoteInfo = mediastream; }; + 22F3D55713CC3CFE00A0DA02 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 22A10D9E11F88C1F00373793 /* liblinphone.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = D2AAC07D0554694100DB518D; + remoteInfo = liblinphone; + }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -296,6 +305,7 @@ 225CB2ED11ABB65D00628906 /* clavier-01-160px.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "clavier-01-160px.png"; path = "Resources/clavier-01-160px.png"; sourceTree = ""; }; 225CB2F911ABB76400628906 /* linphone-banner.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "linphone-banner.png"; path = "liblinphone-sdk/apple-darwin/share/pixmaps/linphone/linphone-banner.png"; sourceTree = ""; }; 2264B6D111200342002C2C53 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; }; + 226B563E13CAF1CD00921595 /* audio.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = audio.plist; path = Settings.bundle/audio.plist; sourceTree = ""; }; 226F2ED31344B0EF00F6EF27 /* libopencore-amrwb.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libopencore-amrwb.a"; path = "liblinphone-sdk/apple-darwin/lib/libopencore-amrwb.a"; sourceTree = ""; }; 226F2ED41344B0EF00F6EF27 /* libopencore-amrnb.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libopencore-amrnb.a"; path = "liblinphone-sdk/apple-darwin/lib/libopencore-amrnb.a"; sourceTree = ""; }; 226F2ED51344B0EF00F6EF27 /* libmsamr.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmsamr.a; path = "liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins/libmsamr.a"; sourceTree = ""; }; @@ -406,6 +416,7 @@ 22E0A81F111C44E100B04932 /* ConsoleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConsoleViewController.m; sourceTree = ""; }; 22E0A820111C44E100B04932 /* ConsoleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConsoleViewController.h; sourceTree = ""; }; 22E19E47138A67A000FBFE87 /* missed_call.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = missed_call.png; path = Resources/missed_call.png; sourceTree = ""; }; + 22E1A9E713CAF4AA00219531 /* video.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = video.plist; path = Settings.bundle/video.plist; sourceTree = ""; }; 22E5B0AD133B5EA20044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = ""; }; 22E5B0AE133B5EA20044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = ""; }; 22F2508B107141E100AC9B3F /* PhoneViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PhoneViewController.h; sourceTree = ""; }; @@ -813,6 +824,8 @@ 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { isa = PBXGroup; children = ( + 22E1A9E713CAF4AA00219531 /* video.plist */, + 226B563E13CAF1CD00921595 /* audio.plist */, 22276E8813C73DC000210156 /* CoreMedia.framework */, 22276E8613C73D8A00210156 /* CoreVideo.framework */, 22276E8013C73D3100210156 /* libavcodec.a */, @@ -922,6 +935,7 @@ buildRules = ( ); dependencies = ( + 22F3D55813CC3CFE00A0DA02 /* PBXTargetDependency */, ); name = linphone; productName = linphone; @@ -1014,6 +1028,8 @@ 2214783D1386A2030020F8B8 /* Localizable.strings in Resources */, 22E19E48138A67A000FBFE87 /* missed_call.png in Resources */, 22E028B813B4CCBD0068A713 /* VideoViewController.xib in Resources */, + 226B563F13CAF1CD00921595 /* audio.plist in Resources */, + 22E1A9E813CAF4AA00219531 /* video.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1050,6 +1066,14 @@ }; /* End PBXSourcesBuildPhase section */ +/* Begin PBXTargetDependency section */ + 22F3D55813CC3CFE00A0DA02 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = liblinphone; + targetProxy = 22F3D55713CC3CFE00A0DA02 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + /* Begin PBXVariantGroup section */ 2214783B1386A2030020F8B8 /* Localizable.strings */ = { isa = PBXVariantGroup; @@ -1073,7 +1097,10 @@ GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = IN_LINPHONE; + GCC_PREPROCESSOR_DEFINITIONS = ( + IN_LINPHONE, + VIDEO_ENABLED, + ); HEADER_SEARCH_PATHS = ( submodules/linphone/coreapi, submodules/linphone/mediastreamer2/include, @@ -1132,10 +1159,13 @@ COPY_PHASE_STRIP = NO; FRAMEWORK_SEARCH_PATHS = ""; GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; + GCC_OPTIMIZATION_LEVEL = s; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = IN_LINPHONE; + GCC_PREPROCESSOR_DEFINITIONS = ( + IN_LINPHONE, + VIDEO_ENABLED, + ); HEADER_SEARCH_PATHS = ( submodules/linphone/coreapi, submodules/linphone/mediastreamer2/include, @@ -1167,6 +1197,69 @@ }; name = DistributionAdhoc; }; + 22F3D55513CC3C9100A0DA02 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ""; + IPHONEOS_DEPLOYMENT_TARGET = 3.1; + LIBRARY_SEARCH_PATHS = ""; + LINK_WITH_STANDARD_LIBRARIES = YES; + PREBINDING = NO; + SDKROOT = iphoneos; + }; + name = Release; + }; + 22F3D55613CC3C9100A0DA02 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ""; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = linphone_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = ( + IN_LINPHONE, + VIDEO_ENABLED, + ); + HEADER_SEARCH_PATHS = ( + submodules/linphone/coreapi, + submodules/linphone/mediastreamer2/include, + submodules/linphone/mediastreamer2/include, + submodules/linphone/oRTP/include, + submodules/externals/gsm/, + submodules/externals/osip/include, + submodules/externals/exosip/include, + submodules/externals/speex/include, + ); + INFOPLIST_FILE = "linphone-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 3.1; + LIBRARY_SEARCH_PATHS = ( + "$(BUILT_PRODUCTS_DIR)", + "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", + "\"$(SRCROOT)/liblinphone-sdk/apple-darwin/lib\"", + ); + OTHER_LDFLAGS = ( + "-l", + linphone, + "-l", + mediastreamer, + ); + PRODUCT_NAME = linphone; + "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; + SDKROOT = iphoneos; + STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = dynamic; + TARGETED_DEVICE_FAMILY = 1; + }; + name = Release; + }; 22F51EE7107FA53D00F98953 /* Distribution */ = { isa = XCBuildConfiguration; buildSettings = { @@ -1194,10 +1287,13 @@ COPY_PHASE_STRIP = NO; FRAMEWORK_SEARCH_PATHS = ""; GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; + GCC_OPTIMIZATION_LEVEL = s; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; - GCC_PREPROCESSOR_DEFINITIONS = IN_LINPHONE; + GCC_PREPROCESSOR_DEFINITIONS = ( + IN_LINPHONE, + VIDEO_ENABLED, + ); HEADER_SEARCH_PATHS = ( submodules/linphone/coreapi, submodules/linphone/mediastreamer2/include, @@ -1253,6 +1349,7 @@ isa = XCConfigurationList; buildConfigurations = ( 1D6058940D05DD3E006BFB54 /* Debug */, + 22F3D55613CC3C9100A0DA02 /* Release */, 22F51EE8107FA53D00F98953 /* Distribution */, 228B19A71302902F00F154D3 /* DistributionAdhoc */, ); @@ -1263,6 +1360,7 @@ isa = XCConfigurationList; buildConfigurations = ( C01FCF4F08A954540054247B /* Debug */, + 22F3D55513CC3C9100A0DA02 /* Release */, 22F51EE7107FA53D00F98953 /* Distribution */, 228B19A61302902F00F154D3 /* DistributionAdhoc */, ); diff --git a/linphonerc b/linphonerc index 1f719760e..c86bda58b 100644 --- a/linphonerc +++ b/linphonerc @@ -1,6 +1,6 @@ [net] -download_bw=128 -upload_bw=128 +download_bw=380 +upload_bw=380 firewall_policy=0 mtu=0 @@ -32,3 +32,9 @@ echocancellation=0 [misc] history_max_size=30 +[video] +display=1 +capture=1 +show_local=0 +enabled=1 +size=qvga-portrait \ No newline at end of file diff --git a/submodules/liblinphone.xcodeproj/project.pbxproj b/submodules/liblinphone.xcodeproj/project.pbxproj index 1a80de476..e8fa530e2 100644 --- a/submodules/liblinphone.xcodeproj/project.pbxproj +++ b/submodules/liblinphone.xcodeproj/project.pbxproj @@ -200,6 +200,8 @@ 22DD21B213A8E3310018ECD4 /* mediastream-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 22DD21A813A8E3310018ECD4 /* mediastream-Info.plist */; }; 22DD21B313A8E3310018ECD4 /* mediastreamAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 22DD21AB13A8E3310018ECD4 /* mediastreamAppDelegate.m */; }; 22DD21B413A8E3310018ECD4 /* mediastreamViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22DD21AD13A8E3310018ECD4 /* mediastreamViewController.m */; }; + 22FC56A813CB69FB002FD0F1 /* qualityindicator.c in Sources */ = {isa = PBXBuildFile; fileRef = 22FC56A713CB69FA002FD0F1 /* qualityindicator.c */; }; + 22FC56AA13CB6A4F002FD0F1 /* bitratecontrol.c in Sources */ = {isa = PBXBuildFile; fileRef = 22FC56A913CB6A4F002FD0F1 /* bitratecontrol.c */; }; AA747D9F0F9514B9006C5449 /* liblinphone_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */; }; AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; /* End PBXBuildFile section */ @@ -442,6 +444,8 @@ 22DD21AB13A8E3310018ECD4 /* mediastreamAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamAppDelegate.m; sourceTree = ""; }; 22DD21AC13A8E3310018ECD4 /* mediastreamViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mediastreamViewController.h; sourceTree = ""; }; 22DD21AD13A8E3310018ECD4 /* mediastreamViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = mediastreamViewController.m; sourceTree = ""; }; + 22FC56A713CB69FA002FD0F1 /* qualityindicator.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = qualityindicator.c; sourceTree = ""; }; + 22FC56A913CB6A4F002FD0F1 /* bitratecontrol.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = bitratecontrol.c; sourceTree = ""; }; AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = liblinphone_Prefix.pch; sourceTree = SOURCE_ROOT; }; AACBBE490F95108600F1A2B1 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; D2AAC07E0554694100DB518D /* liblinphone.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = liblinphone.a; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -621,6 +625,8 @@ 222CA5DC11F6CF7600621220 /* src */ = { isa = PBXGroup; children = ( + 22FC56A913CB6A4F002FD0F1 /* bitratecontrol.c */, + 22FC56A713CB69FA002FD0F1 /* qualityindicator.c */, 22276E7F13C4637100210156 /* msandroidvideo.cpp */, 221F58AD13ABA42800D603C9 /* scaler.c */, 221F58AB13AB71A400D603C9 /* sizeconv.c */, @@ -1157,6 +1163,8 @@ 221F58AA13AB716400D603C9 /* h264dec.c in Sources */, 221F58AC13AB71A400D603C9 /* sizeconv.c in Sources */, 221F58AE13ABA42800D603C9 /* scaler.c in Sources */, + 22FC56A813CB69FB002FD0F1 /* qualityindicator.c in Sources */, + 22FC56AA13CB6A4F002FD0F1 /* bitratecontrol.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1232,6 +1240,7 @@ HAVE_LIBAVCODEC_AVCODEC_H, HAVE_LIBSWSCALE_SWSCALE_H, ); + GCC_UNROLL_LOOPS = YES; HEADER_SEARCH_PATHS = ( linphone/mediastreamer2/build/iphone, linphone/mediastreamer2/include, @@ -1279,6 +1288,7 @@ HAVE_LIBAVCODEC_AVCODEC_H, HAVE_LIBSWSCALE_SWSCALE_H, ); + GCC_UNROLL_LOOPS = YES; HEADER_SEARCH_PATHS = ( linphone/mediastreamer2/build/iphone, linphone/mediastreamer2/include, @@ -1390,8 +1400,25 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "linphone/mediastreamer2/tests/ios/mediastream-Prefix.pch"; GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, MS2_INTERNAL, VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_VERSION = com.apple.compilers.llvmgcc42; @@ -1416,10 +1443,26 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "linphone/mediastreamer2/tests/ios/mediastream-Prefix.pch"; GCC_PREPROCESSOR_DEFINITIONS = ( + "_BYTE_ORDER=_LITTLE_ENDIAN", + ORTP_INET6, + ENABLE_TRACE, + "LINPHONE_VERSION=\\\"debug\\\"", + "LINPHONE_PLUGINS_DIR=\\\"\\\\tmp\\\"", + "LOG_DOMAIN=\\\"Linphone\\\"", + "ORTP_MAJOR_VERSION=0", + "ORTP_MICRO_VERSION=0", + "ORTP_MINOR_VERSION=15", + "ORTP_VERSION=\\\"0.15.0\\\"", + "PACKAGE=\\\"ortp\\\"", + "POSIXTIMER_INTERVAL=10000", + IN_LINPHONE, + __IOSIOUNIT_ENABLED__, + HAVE_EXOSIP_GET_SOCKET, MS2_INTERNAL, VIDEO_ENABLED, + HAVE_LIBAVCODEC_AVCODEC_H, + HAVE_LIBSWSCALE_SWSCALE_H, ); - "GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = ""; GCC_VERSION = com.apple.compilers.llvmgcc42; INFOPLIST_FILE = "linphone/mediastreamer2/tests/ios/mediastream-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 4.3; diff --git a/submodules/linphone b/submodules/linphone index dc8e7fa8e..832d66ad9 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit dc8e7fa8e53c6b79f4909fef01e9425b4f8d78e5 +Subproject commit 832d66ad9860349ad11a2fa6958b38893ef7c3c9