From c810a9502cebe32e1dd08ee3d0d17053dde44aa9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Thu, 30 Apr 2020 13:34:13 +0300 Subject: [PATCH] avfoundation: Fix building on iOS Apparently the changes from 3c9185bf3a83395d12a987f626dbdb985eac4320 aren't enough; even with that in place, I got errors like this when trying to build for iOS: src/libavdevice/avfoundation.m:135:5: error: 'AVCaptureDeviceTransportControlsPlaybackMode' is unavailable: not available on iOS AVCaptureDeviceTransportControlsPlaybackMode observed_mode; ^ --- libavdevice/avfoundation.m | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libavdevice/avfoundation.m b/libavdevice/avfoundation.m index 0b1888693f..59d5b0af4f 100644 --- a/libavdevice/avfoundation.m +++ b/libavdevice/avfoundation.m @@ -132,7 +132,9 @@ typedef struct CMSampleBufferRef current_audio_frame; AVCaptureDevice *observed_device; +#if !TARGET_OS_IPHONE && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 AVCaptureDeviceTransportControlsPlaybackMode observed_mode; +#endif int observed_quit; } AVFContext; @@ -200,6 +202,7 @@ static void unlock_frames(AVFContext* ctx) change:(NSDictionary *)change context:(void *)context { if (context == _context) { +#if !TARGET_OS_IPHONE && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 AVCaptureDeviceTransportControlsPlaybackMode mode = [change[NSKeyValueChangeNewKey] integerValue]; @@ -209,6 +212,7 @@ static void unlock_frames(AVFContext* ctx) } _context->observed_mode = mode; } +#endif } else { [super observeValueForKeyPath: keyPath ofObject: object