aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThilo Borgmann <thilo.borgmann@mail.de>2020-04-04 13:49:46 +0200
committerThilo Borgmann <thilo.borgmann@mail.de>2020-04-22 16:52:36 +0200
commit3c9185bf3a83395d12a987f626dbdb985eac4320 (patch)
treeb136269a9899af5afb53a1f0fe9be510cc3bc82d
parent68d9c0be898d76132c569a84c24eca2d9270eb13 (diff)
downloadffmpeg-3c9185bf3a83395d12a987f626dbdb985eac4320.tar.gz
lavd/avfoundation.m: Remove transport controls for iOS.
-rw-r--r--libavdevice/avfoundation.m12
1 files changed, 10 insertions, 2 deletions
diff --git a/libavdevice/avfoundation.m b/libavdevice/avfoundation.m
index 43b2edb44d..9f8186b4d7 100644
--- a/libavdevice/avfoundation.m
+++ b/libavdevice/avfoundation.m
@@ -168,6 +168,7 @@ static void unlock_frames(AVFContext* ctx)
_context = context;
// start observing if a device is set for it
+#if !TARGET_OS_IPHONE && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070
if (_context->observed_device) {
NSString *keyPath = NSStringFromSelector(@selector(transportControlsPlaybackMode));
NSKeyValueObservingOptions options = NSKeyValueObservingOptionNew;
@@ -177,14 +178,19 @@ static void unlock_frames(AVFContext* ctx)
options: options
context: _context];
}
+#endif
}
return self;
}
- (void)dealloc {
// stop observing if a device is set for it
- NSString *keyPath = NSStringFromSelector(@selector(transportControlsPlaybackMode));
- [_context->observed_device removeObserver: self forKeyPath: keyPath];
+#if !TARGET_OS_IPHONE && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070
+ if (_context->observed_device) {
+ NSString *keyPath = NSStringFromSelector(@selector(transportControlsPlaybackMode));
+ [_context->observed_device removeObserver: self forKeyPath: keyPath];
+ }
+#endif
[super dealloc];
}
@@ -537,6 +543,7 @@ static int add_video_device(AVFormatContext *s, AVCaptureDevice *video_device)
}
[ctx->video_output setAlwaysDiscardsLateVideoFrames:ctx->drop_late_frames];
+#if !TARGET_OS_IPHONE && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070
// check for transport control support and set observer device if supported
int trans_ctrl = [video_device transportControlsSupported];
AVCaptureDeviceTransportControlsPlaybackMode trans_mode = [video_device transportControlsPlaybackMode];
@@ -545,6 +552,7 @@ static int add_video_device(AVFormatContext *s, AVCaptureDevice *video_device)
ctx->observed_mode = trans_mode;
ctx->observed_device = video_device;
}
+#endif
ctx->avf_delegate = [[AVFFrameReceiver alloc] initWithContext:ctx];