iOS SDK 10.0 compatability.
This CL adds support targeting iOS 10 as a min version.
Bug: None
Change-Id: I353a9884eb907e97387553fd73427fd7cb0dbfc2
Reviewed-on: https://webrtc-review.googlesource.com/79921
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Kári Helgason <kthelgason@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23461}
diff --git a/sdk/objc/Framework/Classes/PeerConnection/RTCCameraVideoCapturer.m b/sdk/objc/Framework/Classes/PeerConnection/RTCCameraVideoCapturer.m
index 527bc8a..8f93937 100644
--- a/sdk/objc/Framework/Classes/PeerConnection/RTCCameraVideoCapturer.m
+++ b/sdk/objc/Framework/Classes/PeerConnection/RTCCameraVideoCapturer.m
@@ -110,7 +110,16 @@
}
+ (NSArray<AVCaptureDevice *> *)captureDevices {
+#if defined(WEBRTC_IOS) && defined(__IPHONE_10_0) && \
+ __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_10_0
+ AVCaptureDeviceDiscoverySession *session = [AVCaptureDeviceDiscoverySession
+ discoverySessionWithDeviceTypes:@[ AVCaptureDeviceTypeBuiltInWideAngleCamera ]
+ mediaType:AVMediaTypeVideo
+ position:AVCaptureDevicePositionUnspecified];
+ return session.devices;
+#else
return [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
+#endif
}
+ (NSArray<AVCaptureDeviceFormat *> *)supportedFormatsForDevice:(AVCaptureDevice *)device {
diff --git a/sdk/objc/Framework/Classes/UI/RTCEAGLVideoView.m b/sdk/objc/Framework/Classes/UI/RTCEAGLVideoView.m
index 7655dd6..a267414 100644
--- a/sdk/objc/Framework/Classes/UI/RTCEAGLVideoView.m
+++ b/sdk/objc/Framework/Classes/UI/RTCEAGLVideoView.m
@@ -45,8 +45,11 @@
[CADisplayLink displayLinkWithTarget:self
selector:@selector(displayLinkDidFire:)];
_displayLink.paused = YES;
- // Set to half of screen refresh, which should be 30fps.
+#if __IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_10_0
+ _displayLink.preferredFramesPerSecond = 30;
+#else
[_displayLink setFrameInterval:2];
+#endif
[_displayLink addToRunLoop:[NSRunLoop currentRunLoop]
forMode:NSRunLoopCommonModes];
}
diff --git a/sdk/objc/Framework/UnitTests/RTCCameraVideoCapturerTests.mm b/sdk/objc/Framework/UnitTests/RTCCameraVideoCapturerTests.mm
index 905b974..3788dd1 100644
--- a/sdk/objc/Framework/UnitTests/RTCCameraVideoCapturerTests.mm
+++ b/sdk/objc/Framework/UnitTests/RTCCameraVideoCapturerTests.mm
@@ -177,15 +177,6 @@
invalidFormat = nil;
}
-- (void)testCaptureDevices {
- OCMStub([self.deviceMock devicesWithMediaType:AVMediaTypeVideo]).andReturn(@[ [NSObject new] ]);
- OCMStub([self.deviceMock devicesWithMediaType:AVMediaTypeAudio]).andReturn(@[ [NSObject new] ]);
-
- NSArray *captureDevices = [RTCCameraVideoCapturer captureDevices];
-
- EXPECT_EQ(captureDevices.count, 1u);
-}
-
- (void)testDelegateCallbackNotCalledWhenInvalidBuffer {
// given
CMSampleBufferRef sampleBuffer = nullptr;
@@ -504,13 +495,6 @@
[test tearDown];
}
-TEST(RTCCameraVideoCapturerTests, CaptureDevices) {
- RTCCameraVideoCapturerTests *test = [[RTCCameraVideoCapturerTests alloc] init];
- [test setup];
- [test testCaptureDevices];
- [test tearDown];
-}
-
TEST(RTCCameraVideoCapturerTests, DelegateCallbackNotCalledWhenInvalidBuffer) {
RTCCameraVideoCapturerTests *test = [[RTCCameraVideoCapturerTests alloc] init];
[test setup];