From 1a6c97fc89d2168fc6938b2d21562e5d5523fda9 Mon Sep 17 00:00:00 2001 From: Kateryna Kostiuk <kateryna.kostiuk@savoirfairelinux.com> Date: Fri, 4 Jan 2019 16:12:21 -0500 Subject: [PATCH] macOS: fix add video device Add device should be called after initializing video device monitor. Change-Id: I2f4dda929086837ccc1fb1f854b6827d203092d8 --- .../osxvideo/video_device_monitor_impl.mm | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/media/video/osxvideo/video_device_monitor_impl.mm b/src/media/video/osxvideo/video_device_monitor_impl.mm index eecca91ee3..f8ce211c86 100644 --- a/src/media/video/osxvideo/video_device_monitor_impl.mm +++ b/src/media/video/osxvideo/video_device_monitor_impl.mm @@ -62,11 +62,15 @@ class VideoDeviceMonitorImpl { VideoDeviceMonitorImpl::VideoDeviceMonitorImpl(VideoDeviceMonitor* monitor) : monitor_(monitor) +{ +} + +void VideoDeviceMonitorImpl::start() { /* Enumerate existing devices */ auto myVideoDevices = [[AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo] - arrayByAddingObjectsFromArray: - [AVCaptureDevice devicesWithMediaType:AVMediaTypeMuxed]]; + arrayByAddingObjectsFromArray: + [AVCaptureDevice devicesWithMediaType:AVMediaTypeMuxed]]; if ( [myVideoDevices count] == 0 ) { RING_ERR("Can't find any suitable video device"); @@ -79,20 +83,16 @@ VideoDeviceMonitorImpl::VideoDeviceMonitorImpl(VideoDeviceMonitor* monitor) : { AVCaptureDevice* avf_device = [myVideoDevices objectAtIndex:ivideo]; printf("avcapture %d/%d %s %s\n", ivideo + 1, - deviceCount, - [[avf_device modelID] UTF8String], - [[avf_device uniqueID] UTF8String]); + deviceCount, + [[avf_device modelID] UTF8String], + [[avf_device uniqueID] UTF8String]); try { monitor_->addDevice([[avf_device uniqueID] UTF8String]); } catch (const std::runtime_error &e) { RING_ERR("%s", e.what()); } } - return; -} - -void VideoDeviceMonitorImpl::start() -{ + NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter]; id deviceWasConnectedObserver = [notificationCenter addObserverForName:AVCaptureDeviceWasConnectedNotification object:nil -- GitLab