From dd4c5d55789be5f9a34d4e95d196f9c971d58c9d Mon Sep 17 00:00:00 2001 From: Andrey Moskvin Date: Fri, 15 Feb 2019 19:06:16 +0200 Subject: [PATCH] Tutorials + changelog update --- CHANGELOG.md | 6 +- tutorials/sources/Podfile.lock | 24 +- .../OMSDK-Oath2/OMSDK_Oath2/OMIDAdEvents.h | 1 - .../OMSDK-Oath2/OMSDK_Oath2/OMIDAdSession.h | 1 - .../OMSDK_Oath2/OMIDAdSessionConfiguration.h | 1 - .../OMSDK_Oath2/OMIDAdSessionContext.h | 1 - .../OMSDK-Oath2/OMSDK_Oath2/OMIDImports.h | 1 - .../OMSDK-Oath2/OMSDK_Oath2/OMIDPartner.h | 1 - .../Public/OMSDK-Oath2/OMSDK_Oath2/OMIDSDK.h | 1 - .../OMSDK_Oath2/OMIDScriptInjector.h | 1 - .../OMSDK_Oath2/OMIDVASTProperties.h | 1 - .../OMIDVerificationScriptResource.h | 1 - .../OMSDK-Oath2/OMSDK_Oath2/OMIDVideoEvents.h | 1 - .../PlayerControls/PlayerControls-umbrella.h | 17 +- .../PlayerControls/PlayerControls.modulemap | 7 +- .../PlayerCore/PlayerCore-iOS-umbrella.h | 17 +- .../PlayerCore/PlayerCore-iOS.modulemap | 8 +- .../PlayerCore/PlayerCore-tvOS-umbrella.h | 17 +- .../PlayerCore/PlayerCore-tvOS.modulemap | 8 +- .../VerizonVideoPartnerSDK-iOS-umbrella.h | 17 +- .../VerizonVideoPartnerSDK-iOS.modulemap | 8 +- .../VerizonVideoPartnerSDK-tvOS-umbrella.h | 17 +- .../VerizonVideoPartnerSDK-tvOS.modulemap | 8 +- .../VideoRenderer-iOS-umbrella.h | 17 +- .../VideoRenderer/VideoRenderer-iOS.modulemap | 8 +- .../VideoRenderer-tvOS-umbrella.h | 17 +- .../VideoRenderer-tvOS.modulemap | 8 +- tutorials/sources/Pods/Manifest.lock | 24 +- .../resources/AdVideoControls.xib | 101 +- .../{skip => ad skip}/Contents.json | 0 .../ad-icon-skip.imageset/Contents.json | 13 +- .../ad-skip-btn-ipad.png | Bin 0 -> 2925 bytes .../ad-icon-skip.imageset/ad-skip-btn.png | Bin 0 -> 1929 bytes .../ad-skip-btn@2x-ipad.png | Bin 0 -> 7189 bytes .../ad-icon-skip.imageset/ad-skip-btn@2x.png | Bin 0 -> 5226 bytes .../ad-icon-skip.imageset/ad-skip-btn@3x.png | Bin 0 -> 9463 bytes .../ad-icon-skip.imageset/ad-icon-skip.png | Bin 490 -> 0 bytes .../ad-icon-skip.imageset/ad-icon-skip@2x.png | Bin 871 -> 0 bytes .../ad-icon-skip.imageset/sm-ad-icon-skip.png | Bin 475 -> 0 bytes .../sm-ad-icon-skip@2x.png | Bin 809 -> 0 bytes .../sm-ad-icon-skip@3x.png | Bin 1213 -> 0 bytes .../sources/AdVideoControls.swift | 43 +- .../sources/AirPlayActiveView.swift | 5 +- .../PlayerControls/sources/BundleHelper.swift | 23 + .../Codable_PlayerControls.generated.swift | 42 +- .../DefaultControlsViewController.swift | 15 +- .../EnumPrism_PlayerControls.generated.swift | 25 +- .../PlayerControls/sources/Utils.swift | 2 +- .../PlayerCore/OpenMeasurement.swift | 6 +- .../PlayerCore/OpenMeasurement_Tracking.swift | 8 +- .../PlayerCore/PlaybackBuffering.swift | 1 + .../PlayerCore/RendererDescriptor.swift | 2 +- .../Pods/PlayerCore/PlayerCore/SkipAd.swift | 8 + .../PlayerCore/PlayerCore/SkipAdAction.swift | 6 + .../PlayerCore/VRMCoreResultSelection.swift | 16 + .../{SkipAd.swift => DropAd.swift} | 4 +- ....swift => VRMCoreGroupActionCreator.swift} | 8 + .../VRMCoreItemSchedulingActionCreator.swift | 37 + .../VRMCoreResultSelectionActionCreator.swift | 14 + .../VRMTimeoutActionsCreator.swift | 18 + .../PlayerCore/action creators/PlayAd.swift | 35 +- .../VRMCoreItemSchedulingActionCreator.swift | 25 - ...{SkipAdAction.swift => DropAdAction.swift} | 2 +- ...ing.swift => VRMCoreGroupProcessing.swift} | 7 + .../New VRM Core/VRMTimeoutActions.swift | 18 + .../PlayerCore/actions/ShowAdAction.swift | 11 +- .../actions/UpdateCameraAnglesAction.swift | 2 +- .../actions/VRMCoreItemScheduling.swift | 20 +- .../PlayerCore/actions/VRMItemActions.swift | 16 +- .../PlayerCore/PlayerCore/components/Ad.swift | 97 +- .../PlayerCore/components/AdCreative.swift | 72 +- .../components/AdFinishTracker.swift | 24 +- .../PlayerCore/components/AdKill.swift | 1 + .../PlayerCore/components/AdPixels.swift | 16 +- .../PlayerCore/components/AdVASTModel.swift | 42 +- .../PlayerCore/components/AdVRMManager.swift | 10 +- .../components/AdVRMManager_Hashable.swift | 34 - .../PlayerCore/components/CurrentTime.swift | 2 +- .../PlayerCore/components/Duration.swift | 6 +- .../components/InteractiveSeeking.swift | 4 +- .../components/LoadedTimeRanges.swift | 2 +- .../PlayerCore/components/Mute.swift | 2 +- .../New VRM Core/ScheduledVRMItems.swift | 24 +- .../New VRM Core/VRMCurrentGroup.swift | 4 + .../New VRM Core/VRMFetchItemQueue.swift | 19 +- .../New VRM Core/VRMFetchingError.swift | 19 + .../New VRM Core/VRMFinalResult.swift | 40 + .../New VRM Core/VRMItemResponseTime.swift | 83 + .../New VRM Core/VRMMaxAdSearchTimeout.swift | 20 + .../New VRM Core/VRMOtherError.swift | 19 + .../New VRM Core/VRMParseItemQueue.swift | 15 +- .../New VRM Core/VRMParsingError.swift | 19 + .../New VRM Core/VRMParsingResult.swift | 17 +- .../New VRM Core/VRMProcessingResult.swift | 26 + .../New VRM Core/VRMProcessingTimeout.swift | 24 + .../New VRM Core/VRMRedirectError.swift | 19 + .../New VRM Core/VRMRequestStatus.swift | 14 +- .../components/New VRM Core/VRMResponse.swift | 2 + .../New VRM Core/VRMTimeoutError.swift | 19 + .../New VRM Core/VRMTopPriorityItem.swift | 4 + .../components/PlaybackStatus.swift | 14 +- .../PlayerCore/components/Rate.swift | 5 +- .../PlayerCore/components/State.swift | 50 +- .../PlayerCore/components/VPAIDErrors.swift | 2 +- .../PlayerCore/components/VPAIDState.swift | 5 +- .../components/VRMGroupsQueue.swift | 2 + .../PlayerCore/phantom types/Progress.swift | 8 +- .../player model/PlaybackModel.swift | 50 +- .../VRM/VMRCoreProcessingResult.swift | 10 + .../player model/VRM/VRMCoreNamespace.swift | 1 - .../player model/VRM/VRMCoreVASTModel.swift | 11 +- .../player model/VRM/VRMResponseModel.swift | 4 +- .../Thumbnail+VideoProviderResponse.swift | 2 +- .../Pods/Pods.xcodeproj/project.pbxproj | 5170 +++++++++-------- .../OMSDK-Oath2/OMSDK-Oath2.xcconfig | 9 + .../PlayerControls/PlayerControls-umbrella.h | 16 + .../PlayerControls/PlayerControls.modulemap | 6 + .../PlayerControls/PlayerControls.xcconfig | 3 +- ...e-PlayerControls-PlayerControls-Info.plist | 24 + .../PlayerCore-iOS/PlayerCore-iOS-umbrella.h | 16 + .../PlayerCore-iOS/PlayerCore-iOS.modulemap | 7 + .../PlayerCore-iOS/PlayerCore-iOS.xcconfig | 3 +- .../PlayerCore-tvOS-umbrella.h | 16 + .../PlayerCore-tvOS/PlayerCore-tvOS.modulemap | 7 + .../PlayerCore-tvOS/PlayerCore-tvOS.xcconfig | 3 +- .../Pods-Tutorial/Pods-Tutorial-resources.sh | 29 +- .../Pods-Tutorial.debug.xcconfig | 5 +- .../Pods-Tutorial.release.xcconfig | 5 +- .../Pods-Tutorial_tvOS.debug.xcconfig | 2 +- .../Pods-Tutorial_tvOS.release.xcconfig | 2 +- .../VerizonVideoPartnerSDK-iOS-umbrella.h | 16 + .../VerizonVideoPartnerSDK-iOS.modulemap | 7 + .../VerizonVideoPartnerSDK-iOS.xcconfig | 7 +- .../VerizonVideoPartnerSDK-tvOS-umbrella.h | 16 + .../VerizonVideoPartnerSDK-tvOS.modulemap | 7 + .../VerizonVideoPartnerSDK-tvOS.xcconfig | 6 +- .../VideoRenderer-iOS-umbrella.h | 16 + .../VideoRenderer-iOS.modulemap | 7 + .../VideoRenderer-iOS.xcconfig | 2 +- .../VideoRenderer-tvOS-umbrella.h | 16 + .../VideoRenderer-tvOS.modulemap | 7 + .../VideoRenderer-tvOS.xcconfig | 2 +- .../Pods/VerizonVideoPartnerSDK/README.md | 45 +- .../sources/VVPSDK.swift | 65 +- .../sources/VVPSDK_Version.swift | 6 +- .../advertisements/AdManagerPresenter.swift | 20 +- .../sources/advertisements/AdMetrics.swift | 10 + .../advertisements/AdURLProvider.swift | 2 +- .../advertisements/AdURLProviderProcess.swift | 2 +- .../sources/advertisements/AdVRMEngine.swift | 7 +- .../advertisements/MidrollDetector.swift | 25 +- .../sources/advertisements/VASTModel.swift | 7 +- .../sources/advertisements/VASTParser.swift | 71 +- .../advertisements/VASTParser_Offset.swift | 77 + .../Controllers/FetchVRMItemController.swift | 3 +- .../FinishVRMGroupProcessingController.swift | 73 + .../MaxAdSearchTimeController.swift | 37 + .../Controllers/ParseVRMItemController.swift | 3 +- .../StartVRMGroupProcessingController.swift | 22 +- .../Controllers/VRMItemController.swift | 34 +- .../VRMMidrollProcessorController.swift | 73 + ...ft => VRMPrerollProcessorController.swift} | 8 +- .../Controllers/VRMProcessingController.swift | 65 + .../Controllers/VRMRequestController.swift | 12 +- .../VRMSelectFinalResultController.swift | 57 + .../Controllers/VRMTimeoutController.swift | 65 + .../sources/advertisements/VRMProvider.swift | 4 +- .../MP4AdCreativeController.swift | 45 + .../VPAIDAdCreativeController.swift | 29 + .../sources/config/Context.swift | 2 +- .../PlayerViewController.swift | 4 +- .../PlayerViewController_Binding.swift | 15 +- .../PlayerViewController_Clickthrough.swift | 8 +- .../SystemPlayerViewControlller_Binding.swift | 2 +- .../JavaScriptObserver.swift | 4 +- .../dynamic analytics/PropsMapping.swift | 34 +- .../AdMaxShowTimeDetector.swift | 3 +- .../detectors/ad skip/AdSkipDetector.swift | 25 + .../ad view time/AdViewTimeDetector.swift | 2 +- .../AdPlaybackCycleDetector.swift | 28 + ...ift => ContentPlaybackCycleDetector.swift} | 4 +- .../SlotOpportunityDetector.swift | 21 +- .../vrm/AdEngineRequestDetector.swift | 37 + .../vrm/AdEngineResponseDetector.swift | 86 + .../detectors/vrm/VRMRequestDetector.swift | 44 + .../OpenMeasurementContext.swift | 3 +- .../OpenMeasurementController.swift | 9 +- .../TrackingPixelsConnector.swift | 7 +- .../TrackingPixelsConnector_Ad.swift | 252 +- .../sources/player/PlayerInterface.swift | 11 +- .../sources/player/PlayerProperties.swift | 4 +- .../player/PlayerProperties_Init.swift | 24 +- .../sources/player/Store.swift | 3 +- .../sources/player/VideoSelector.swift | 2 +- .../sources/player/observer/Observer.swift | 2 +- .../sources/telemetry/Metrics.swift | 23 +- .../video detectors/Player_VideoEvents.swift | 6 +- .../VideoProviderResponse.swift | 2 + .../Dictionary+ParseJSON.swift | 12 + .../provider/VideoProviderParsing.swift | 22 +- .../Tutorial.xcodeproj/project.pbxproj | 22 +- 201 files changed, 5306 insertions(+), 3351 deletions(-) delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdEvents.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSession.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionConfiguration.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionContext.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDImports.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDPartner.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDSDK.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDScriptInjector.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVASTProperties.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVerificationScriptResource.h delete mode 120000 tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVideoEvents.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls-umbrella.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls.modulemap mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h mode change 100644 => 120000 tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap rename tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/{skip => ad skip}/Contents.json (100%) rename tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/{skip => ad skip}/ad-icon-skip.imageset/Contents.json (57%) create mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn-ipad.png create mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn.png create mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@2x-ipad.png create mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@2x.png create mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@3x.png delete mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/ad-icon-skip.png delete mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/ad-icon-skip@2x.png delete mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/sm-ad-icon-skip.png delete mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/sm-ad-icon-skip@2x.png delete mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/sm-ad-icon-skip@3x.png create mode 100644 tutorials/sources/Pods/PlayerControls/PlayerControls/sources/BundleHelper.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAd.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAdAction.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/VRMCoreResultSelection.swift rename tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/{SkipAd.swift => DropAd.swift} (68%) rename tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/{VRMCoreStartGroupActionCreator.swift => VRMCoreGroupActionCreator.swift} (55%) create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreItemSchedulingActionCreator.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreResultSelectionActionCreator.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMTimeoutActionsCreator.swift delete mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/VRMCoreItemSchedulingActionCreator.swift rename tutorials/sources/Pods/PlayerCore/PlayerCore/actions/{SkipAdAction.swift => DropAdAction.swift} (87%) rename tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/{VRMCoreStartGroupProcessing.swift => VRMCoreGroupProcessing.swift} (64%) create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMTimeoutActions.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchingError.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFinalResult.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMItemResponseTime.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMMaxAdSearchTimeout.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMOtherError.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingError.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingResult.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingTimeout.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRedirectError.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTimeoutError.swift create mode 100644 tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VMRCoreProcessingResult.swift create mode 100644 tutorials/sources/Pods/Target Support Files/OMSDK-Oath2/OMSDK-Oath2.xcconfig create mode 100644 tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls-umbrella.h create mode 100644 tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.modulemap create mode 100644 tutorials/sources/Pods/Target Support Files/PlayerControls/ResourceBundle-PlayerControls-PlayerControls-Info.plist create mode 100644 tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS-umbrella.h create mode 100644 tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.modulemap create mode 100644 tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-umbrella.h create mode 100644 tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.modulemap create mode 100644 tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-umbrella.h create mode 100644 tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.modulemap create mode 100644 tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-umbrella.h create mode 100644 tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.modulemap create mode 100644 tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS-umbrella.h create mode 100644 tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.modulemap create mode 100644 tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS-umbrella.h create mode 100644 tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.modulemap create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser_Offset.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FinishVRMGroupProcessingController.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/MaxAdSearchTimeController.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMMidrollProcessorController.swift rename tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/{StartAdProcessingController.swift => VRMPrerollProcessorController.swift} (83%) create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMProcessingController.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMSelectFinalResultController.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMTimeoutController.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/MP4AdCreativeController.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/VPAIDAdCreativeController.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad skip/AdSkipDetector.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/AdPlaybackCycleDetector.swift rename tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/{PlaybackCycleDetector.swift => ContentPlaybackCycleDetector.swift} (90%) create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineRequestDetector.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineResponseDetector.swift create mode 100644 tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/VRMRequestDetector.swift diff --git a/CHANGELOG.md b/CHANGELOG.md index 83ff176..d361f5d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,11 @@ # Change Log -## [Unreleased](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-iOS/tree/HEAD) - -[Full Changelog](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-iOS/compare/1.2.1...HEAD) +## [1.2.2](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-iOS/tree/1.2.2) (2019-02-15) +[Full Changelog](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-iOS/compare/1.2.1...1.2.2) **Merged pull requests:** +- Update change log [\#73](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-iOS/pull/73) ([VladyslavAnokhin](https://github.com/VladyslavAnokhin)) - Update podspec and sdk version to 1.2.1 [\#72](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-iOS/pull/72) ([VladyslavAnokhin](https://github.com/VladyslavAnokhin)) ## [1.2.1](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-iOS/tree/1.2.1) (2019-02-14) diff --git a/tutorials/sources/Podfile.lock b/tutorials/sources/Podfile.lock index 7022275..6b37401 100644 --- a/tutorials/sources/Podfile.lock +++ b/tutorials/sources/Podfile.lock @@ -1,13 +1,13 @@ PODS: - OMSDK-Oath2 (1.0.0) - - PlayerControls (1.27) - - PlayerCore (1.0.2) - - VerizonVideoPartnerSDK (1.1.0): + - PlayerControls (1.30) + - PlayerCore (1.0.4) + - VerizonVideoPartnerSDK (1.2.2): - OMSDK-Oath2 (= 1.0.0) - - PlayerControls (= 1.27) - - PlayerCore (= 1.0.2) - - VideoRenderer (= 1.25) - - VideoRenderer (1.25) + - PlayerControls (= 1.30) + - PlayerCore (= 1.0.4) + - VideoRenderer (= 1.26) + - VideoRenderer (1.26) DEPENDENCIES: - VerizonVideoPartnerSDK @@ -22,11 +22,11 @@ SPEC REPOS: SPEC CHECKSUMS: OMSDK-Oath2: 641f95e29744bba047d4dc03081c3f2340ab338c - PlayerControls: 54af32ee1fa9da39dcf3bfcc43426c427a5f9049 - PlayerCore: 39322c51d14ba2c706cc66b33d590a4c5be99205 - VerizonVideoPartnerSDK: 65f743334454d4ab8bcbfb4b936ce2bb40f74690 - VideoRenderer: 9374dc7e0108f21eb1b0c8aa7b2a18a947197164 + PlayerControls: caea5a34aa29a1823573eda6c48529c1ace7a529 + PlayerCore: 354444537679ceb7bf3e7a27d3945973fd6edc11 + VerizonVideoPartnerSDK: 51a5112d7048262c887398ad39563a5754531690 + VideoRenderer: 282fb7d8067c0220ae1d7f53706fa3f9134e47fd PODFILE CHECKSUM: 37cfeb4d6c1e15a6f75c529aaa1bd7a1ebf783b6 -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.0 diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdEvents.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdEvents.h deleted file mode 120000 index a00ffc6..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdEvents.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDAdEvents.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSession.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSession.h deleted file mode 120000 index 0e2c9ef..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSession.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDAdSession.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionConfiguration.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionConfiguration.h deleted file mode 120000 index debb2ce..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionConfiguration.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDAdSessionConfiguration.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionContext.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionContext.h deleted file mode 120000 index a441dc1..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDAdSessionContext.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDAdSessionContext.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDImports.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDImports.h deleted file mode 120000 index bc46be2..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDImports.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDImports.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDPartner.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDPartner.h deleted file mode 120000 index 702560e..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDPartner.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDPartner.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDSDK.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDSDK.h deleted file mode 120000 index fb7626c..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDSDK.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDSDK.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDScriptInjector.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDScriptInjector.h deleted file mode 120000 index 83f859b..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDScriptInjector.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDScriptInjector.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVASTProperties.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVASTProperties.h deleted file mode 120000 index e5c6b15..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVASTProperties.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDVASTProperties.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVerificationScriptResource.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVerificationScriptResource.h deleted file mode 120000 index 8acbd64..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVerificationScriptResource.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDVerificationScriptResource.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVideoEvents.h b/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVideoEvents.h deleted file mode 120000 index d43b8a3..0000000 --- a/tutorials/sources/Pods/Headers/Public/OMSDK-Oath2/OMSDK_Oath2/OMIDVideoEvents.h +++ /dev/null @@ -1 +0,0 @@ -../../../../OMSDK-Oath2/OMSDK_Oath2.framework/Versions/A/Headers/OMIDVideoEvents.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls-umbrella.h b/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls-umbrella.h deleted file mode 100644 index 78834b2..0000000 --- a/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls-umbrella.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -FOUNDATION_EXPORT double PlayerControlsVersionNumber; -FOUNDATION_EXPORT const unsigned char PlayerControlsVersionString[]; - diff --git a/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls-umbrella.h b/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls-umbrella.h new file mode 120000 index 0000000..15097f8 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls-umbrella.h @@ -0,0 +1 @@ +../../../Target Support Files/PlayerControls/PlayerControls-umbrella.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls.modulemap b/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls.modulemap deleted file mode 100644 index 4bb8a42..0000000 --- a/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -module PlayerControls { - umbrella header "PlayerControls-umbrella.h" - - export * - module * { export * } -} diff --git a/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls.modulemap b/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls.modulemap new file mode 120000 index 0000000..00462a1 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/PlayerControls/PlayerControls.modulemap @@ -0,0 +1 @@ +../../../Target Support Files/PlayerControls/PlayerControls.modulemap \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h deleted file mode 100644 index 834437e..0000000 --- a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -FOUNDATION_EXPORT double PlayerCoreVersionNumber; -FOUNDATION_EXPORT const unsigned char PlayerCoreVersionString[]; - diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h new file mode 120000 index 0000000..813bf8a --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h @@ -0,0 +1 @@ +../../../Target Support Files/PlayerCore-iOS/PlayerCore-iOS-umbrella.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap deleted file mode 100644 index 0fca215..0000000 --- a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -module PlayerCore { - umbrella header "PlayerCore-iOS-umbrella.h" - exclude header "PlayerCore-tvOS-umbrella.h" - - export * - module * { export * } -} diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap new file mode 120000 index 0000000..7cd8b28 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap @@ -0,0 +1 @@ +../../../Target Support Files/PlayerCore-iOS/PlayerCore-iOS.modulemap \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h deleted file mode 100644 index 834437e..0000000 --- a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -FOUNDATION_EXPORT double PlayerCoreVersionNumber; -FOUNDATION_EXPORT const unsigned char PlayerCoreVersionString[]; - diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h new file mode 120000 index 0000000..6be5acc --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h @@ -0,0 +1 @@ +../../../Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-umbrella.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap deleted file mode 100644 index de8fc64..0000000 --- a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -module PlayerCore { - umbrella header "PlayerCore-tvOS-umbrella.h" - exclude header "PlayerCore-iOS-umbrella.h" - - export * - module * { export * } -} diff --git a/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap new file mode 120000 index 0000000..6b8afd4 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap @@ -0,0 +1 @@ +../../../Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.modulemap \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h deleted file mode 100644 index 750e7a3..0000000 --- a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -FOUNDATION_EXPORT double VerizonVideoPartnerSDKVersionNumber; -FOUNDATION_EXPORT const unsigned char VerizonVideoPartnerSDKVersionString[]; - diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h new file mode 120000 index 0000000..004bd84 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h @@ -0,0 +1 @@ +../../../Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-umbrella.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap deleted file mode 100644 index e24eee8..0000000 --- a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -module VerizonVideoPartnerSDK { - umbrella header "VerizonVideoPartnerSDK-iOS-umbrella.h" - exclude header "VerizonVideoPartnerSDK-tvOS-umbrella.h" - - export * - module * { export * } -} diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap new file mode 120000 index 0000000..de2d022 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap @@ -0,0 +1 @@ +../../../Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.modulemap \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h deleted file mode 100644 index 750e7a3..0000000 --- a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -FOUNDATION_EXPORT double VerizonVideoPartnerSDKVersionNumber; -FOUNDATION_EXPORT const unsigned char VerizonVideoPartnerSDKVersionString[]; - diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h new file mode 120000 index 0000000..b9e1f75 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h @@ -0,0 +1 @@ +../../../Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-umbrella.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap deleted file mode 100644 index 99882e2..0000000 --- a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -module VerizonVideoPartnerSDK { - umbrella header "VerizonVideoPartnerSDK-tvOS-umbrella.h" - exclude header "VerizonVideoPartnerSDK-iOS-umbrella.h" - - export * - module * { export * } -} diff --git a/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap new file mode 120000 index 0000000..bdc30a5 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap @@ -0,0 +1 @@ +../../../Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.modulemap \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h deleted file mode 100644 index 93302aa..0000000 --- a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -FOUNDATION_EXPORT double VideoRendererVersionNumber; -FOUNDATION_EXPORT const unsigned char VideoRendererVersionString[]; - diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h new file mode 120000 index 0000000..7ef11ef --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h @@ -0,0 +1 @@ +../../../Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS-umbrella.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap deleted file mode 100644 index 936b55b..0000000 --- a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -module VideoRenderer { - umbrella header "VideoRenderer-iOS-umbrella.h" - exclude header "VideoRenderer-tvOS-umbrella.h" - - export * - module * { export * } -} diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap new file mode 120000 index 0000000..0292af9 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap @@ -0,0 +1 @@ +../../../Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.modulemap \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h deleted file mode 100644 index 93302aa..0000000 --- a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - - -FOUNDATION_EXPORT double VideoRendererVersionNumber; -FOUNDATION_EXPORT const unsigned char VideoRendererVersionString[]; - diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h new file mode 120000 index 0000000..a0ea490 --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h @@ -0,0 +1 @@ +../../../Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS-umbrella.h \ No newline at end of file diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap deleted file mode 100644 index dc469c0..0000000 --- a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -module VideoRenderer { - umbrella header "VideoRenderer-tvOS-umbrella.h" - exclude header "VideoRenderer-iOS-umbrella.h" - - export * - module * { export * } -} diff --git a/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap new file mode 120000 index 0000000..72f272e --- /dev/null +++ b/tutorials/sources/Pods/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap @@ -0,0 +1 @@ +../../../Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.modulemap \ No newline at end of file diff --git a/tutorials/sources/Pods/Manifest.lock b/tutorials/sources/Pods/Manifest.lock index 7022275..6b37401 100644 --- a/tutorials/sources/Pods/Manifest.lock +++ b/tutorials/sources/Pods/Manifest.lock @@ -1,13 +1,13 @@ PODS: - OMSDK-Oath2 (1.0.0) - - PlayerControls (1.27) - - PlayerCore (1.0.2) - - VerizonVideoPartnerSDK (1.1.0): + - PlayerControls (1.30) + - PlayerCore (1.0.4) + - VerizonVideoPartnerSDK (1.2.2): - OMSDK-Oath2 (= 1.0.0) - - PlayerControls (= 1.27) - - PlayerCore (= 1.0.2) - - VideoRenderer (= 1.25) - - VideoRenderer (1.25) + - PlayerControls (= 1.30) + - PlayerCore (= 1.0.4) + - VideoRenderer (= 1.26) + - VideoRenderer (1.26) DEPENDENCIES: - VerizonVideoPartnerSDK @@ -22,11 +22,11 @@ SPEC REPOS: SPEC CHECKSUMS: OMSDK-Oath2: 641f95e29744bba047d4dc03081c3f2340ab338c - PlayerControls: 54af32ee1fa9da39dcf3bfcc43426c427a5f9049 - PlayerCore: 39322c51d14ba2c706cc66b33d590a4c5be99205 - VerizonVideoPartnerSDK: 65f743334454d4ab8bcbfb4b936ce2bb40f74690 - VideoRenderer: 9374dc7e0108f21eb1b0c8aa7b2a18a947197164 + PlayerControls: caea5a34aa29a1823573eda6c48529c1ace7a529 + PlayerCore: 354444537679ceb7bf3e7a27d3945973fd6edc11 + VerizonVideoPartnerSDK: 51a5112d7048262c887398ad39563a5754531690 + VideoRenderer: 282fb7d8067c0220ae1d7f53706fa3f9134e47fd PODFILE CHECKSUM: 37cfeb4d6c1e15a6f75c529aaa1bd7a1ebf783b6 -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.0 diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/AdVideoControls.xib b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/AdVideoControls.xib index dcf265f..a21d8a2 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/AdVideoControls.xib +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/AdVideoControls.xib @@ -1,6 +1,6 @@ - + @@ -12,6 +12,7 @@ + @@ -19,22 +20,21 @@ - - + - + - + @@ -42,7 +42,7 @@ - + @@ -50,10 +50,10 @@ - + - + - + - - + @@ -173,15 +174,14 @@ + + - - - @@ -194,7 +194,6 @@ - @@ -210,7 +209,7 @@ - + @@ -222,6 +221,6 @@ - + diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/Contents.json b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/Contents.json similarity index 100% rename from tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/Contents.json rename to tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/Contents.json diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/Contents.json b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/Contents.json similarity index 57% rename from tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/Contents.json rename to tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/Contents.json index 8342c4b..c0d600f 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/Contents.json +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/Contents.json @@ -2,32 +2,35 @@ "images" : [ { "idiom" : "iphone", - "filename" : "sm-ad-icon-skip.png", + "filename" : "ad-skip-btn.png", "scale" : "1x" }, { "idiom" : "iphone", - "filename" : "sm-ad-icon-skip@2x.png", + "filename" : "ad-skip-btn@2x.png", "scale" : "2x" }, { "idiom" : "iphone", - "filename" : "sm-ad-icon-skip@3x.png", + "filename" : "ad-skip-btn@3x.png", "scale" : "3x" }, { "idiom" : "ipad", - "filename" : "ad-icon-skip.png", + "filename" : "ad-skip-btn-ipad.png", "scale" : "1x" }, { "idiom" : "ipad", - "filename" : "ad-icon-skip@2x.png", + "filename" : "ad-skip-btn@2x-ipad.png", "scale" : "2x" } ], "info" : { "version" : 1, "author" : "xcode" + }, + "properties" : { + "template-rendering-intent" : "template" } } \ No newline at end of file diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn-ipad.png b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn-ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..e1f61b144451aeb1d2a31d2726d287aebed494dd GIT binary patch literal 2925 zcmV-z3zGDSP)Px=CrLy>RCodHoC$0d*A<3&<7Y57#MppsY@FH+ltLO~NP!eWF_D2ND1ayxDxv|E zR^X^0T6S7M1&aVu17cALASio@1c6pil|_(Z7DK^+9JTDb7Zw}uJMQ-n9v8>UTfh!c z=SaV2=FXivqx0W$?z!jQXGb&7#6fkz=jP3uJ%fURM)>;rb~6m4gO86-nA7PDaX1_; zJZsXfU55tBkw;}^Wtl>8aq+DiH*Wl6+_-W7ymIAA5%tSJ1$YW7f!iYT+!56?u3o*` zB|JQQa*Gx%J`}+@IXNk5X=(p{{P=NJdU|@+ty{OUb8~acD=RDAZP%T5|KHVV-n_X_ zR8&+ObRFCl2@4C04h;?cA$l#z&dxrXl9IAz@ZiB;q8O213fv~%9b$|N7cO+@+`01t ze}Dh+Po6wUK7IQ1vBirQpF4j1cs?&vPg9R8uR3@8<Ar`JVv;$EfcGJR-8+0iA(f*b?YNM5;%PQ{NWvH6VSf6UfMdLG;j}L*pMle0UM!?=M-h zoIdMZ63zG$JA*mRZx^ z@yMBD$BvDotUYjxbRW5KS#}lK19|YRss_}n)Wd9fbu=J8`;ErznKNhpoLaJMk?om_sJD6hMk8rJ)-GZLM~)oXtDvCZ?)B@}4{+TD zD8`Z}s3i`jUJ;O;|6G8kUgEZEsMVrf(3BdmNDo@Nbm=g7EL*v9Wda}Y9U!-_`!&Re zp0SQ``vRr$KmnS@Y`O7Tl_|63)zg4@l6!B@c)p8y`d6Iy1oF@|T)Tq|S~s#drB%IR zAQcpiD?qcyY?SaV5|QpVb?Vff6%`c)J9qA!$8{&5`Fk~&2G+fnl-+R(W!;)*%azyY z6DYt`%I$&&>X z2+EPGm)O#X8o**r(heU!yn|J-4^Evr^_OA8hKWq2P-~G+&rp4p>*$Jb)5>w_hkEqr zp#WT7LG3yW*0bN#5+@gO=S83lc$|Fa8C$&2z~;@HPq7L%zfGGqZ*AYcecy~3GrmtV zmZiHQw!SxtzX}LHi$OYSk(&gvcr_i}vPID#)7NBR*@(!y2N^7{Sm+hIBSBP@v^a!6q9eG?n=I z`IYdl$IF*5Po6Mg!bhxQ6tKpK?5?j3U;u>vy){t!|XYBGbJ)@HrUWu=ltB& zJF)CA)j4|fsD^A)M0jRMNQg2xBHXKnpEYIweL)TQV2P7SmMmq6-H&yzX1e@@Hgnn3 zsG-(Vap1Yb$5FnhurT5}OsW*l0wrfWTO(j^b zAL-RqkezVo(4kKtdn@mjWv2tV;t~RDZxUe+HlN0mW6=tzI?S{D%A!S!y3otYXV0Gf zOA5aSl+3qDM+uE7j~+ehgWfA~+jkhF3)ih%H;ec62TFs600ms;5UbQGOV?j`0>Em7pPHJPZ93!P;yTjP z(vp&r{zPFn&>B?tFwSjx$r@nX4j(;wv=%nxRo?(@fa0iH!)ab#-cQ+}xQ~0P+o7&H zlv!eAW@Zjyv?$@XXg{OyT@V2jpP3?JTb(&`W;#=}+M2cuv-qbWo>M18~X3sd*B?j@>bjI#nvTWMlAnR5~QA|*ylc>P}_OuNq zV$3^n;=~%RI{_u{U40ByY1j?@02T7Zbb>TdUGo>dEE>Yq!os(}lgQS%t*Bqaah1B3r?oTVzwu z6p^m6J7WC!@$a)lcaVn5h%Niyv__wCykN+kX%-nWRf zZ1Vj1^CwU)vipE2AW!TO+0-{hM9P{q@V_~4-n{Xw=$wK03SN}L^z9RV*`TpPb3Anp z)m02&L7l;d_d2lj=*N0?6kc{RnYlx z5rYN|iq?)9{>xA>OMJn6r0Uu70vfg7Uol>3n<(Ac3m5>MKG_JsY{(tt&r2(G9?DaWEJ zh;VHww=B9rtEOJHcteVw5k#&aqGi?36K>U^*cLA|Ai{;`36~2O!8)p3usQ~(?#X`v XUb0TvpX69u00000NkvXXu0mjf#C@U+ literal 0 HcmV?d00001 diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn.png b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn.png new file mode 100644 index 0000000000000000000000000000000000000000..a685ee7ccdf6c1a2899120824e89c38ef860e028 GIT binary patch literal 1929 zcmV;42X^?0P)Px+LrFwIRA>e5n{7;$Wf;df=g6BWB+?6Fsk}%InM+D+EGKDg>Rb+IS;*!_I;J@` znHuJDebHttXIrC*t+mn*sI8e!Ck|W#=2BT`h(soAAcFED@(u_3{oxQD<8Yos_(h&; z`}>^dxv%>^p6mZy_jTRZePi+RK>GXpBm4UL)^J^7u~FMbysI9F%6&V?MlOJyPQ#GJSC=nsR(E4fgmxbvAItpt^Ctt}n3$N!%a<>Ym^W|U%e=(R4<0=Da_iQu-yA=F zyc1jWyR*lrrw4Ov-P$F^_Z&I@7p;aRl<54pAheOVtcWzYh8QT@PEV5-e# zo0*!Lx@70hohyTbgMF*3t9M65Mg2%y4{%EoI>Q1fR&W5f{1cY9(UJl-fEW-2CIgW) z3FtpED#^4@G?6`I7tK1dlk6qC#q8g|{{S9zx1yrrI|!P}GvhN3q)Y{8y1Tpc7cN}* z4xK*$u^v%}@=N2tmGzaw&Gg|4;mIM?} zTuN+gtT&7OyQ^2P{um`W2*n<|eMeng-4A@+0+cbBUV{;ghz#G>)<(irb2Bk9QSm}m z0Vn%8$kB@*;ATuqYip}YJ15Z#12$CxmgME-sVG+i4Ap$lGsR(nUAuOD+TPyYedNfI zpIA`7&g1_OWYAds)F{v6g)`CD!qnTU>T*FrfvTks<>42h#u1_cFa`gDh-5AKuImGV*9iz)0UxO#wjJ+7$H_IYDF!swk_vtl(ve=N6FNx+rAsC@n4Bo05|9 zSx!z)2G5@MWGKAwK8cz7s8DKA%xR>IFpV2|k4X+j7^5im_p*l*&b2u=H@AavUh`zE zh=_>kENhzRqg2{r)s7tl`g1d4D(K1J6Iu7*!GlT!PFk(jgp7=g4cXb*is1?shJ{pm zMsII#9UZzr|0I~Yqa8bL#uUU1fAbTpn2?YVNTzm<7rl>l%I33Y&nnxx4sLkzv+=lD z9UUF_=+h4Rt)y>-%a$#R?5+ zZdiynZ{E6fOZ{3wpBFoF(F|Nq!`nQN2bp5f0tzyCOM6L4$tho7-<5QGA4GwF);iMR zeiImV5sI3HS*#{0DJd1*r9fkN+3=n}ICzlBXR|^eix?CP+IR8d#cb5K0TDABIK^%c z$ccyOGWu@;0~G?UUS9R}^&eJMRjDBccXu0R%}iI`Y0qGMP{1p{N>s^&vOP_KF1^sIb5uI6qf;R|e1Nj)K^S2?1!6Rn<%*cObLXySY(bf_ zTW7H9992Dl_CU&La*oIYq~HbSgxL546XvtyBnm zm%Z~i5SpK#uiV}w%wau9P>>JdG}9|A?$=Vt{8}r2k)m~sBV8T}{sa3qj~agH-knj^ zE^kqwdWoXm(&Xgi*tod3Q0>@hV~DbkQa>{;VFZT^{Cy5Da=nU}w{PFRo|&0he)Q;3 z*+|ZnXbh7WjPQtvAQ7Oge?eZNt6}*Y{O%>wcI8|8 P00000NkvXXu0mjfdBd6f literal 0 HcmV?d00001 diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@2x-ipad.png b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@2x-ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..5b1c478979fcff063551cd0fa1d78d3919f517f6 GIT binary patch literal 7189 zcmX9@Wk6Kl(-syN7Ff_lT2ewu0V!!&kP<2B5`m?=I|L-8Q@TN^MY>nId#Ru@$Jt_~C((u4K$OI*R>Q3vuc2;!*zP7TG;G-6V&fR`2N2>A%zqQ-o@Gz-C2clGC zmwv=jZa(0R;H^xQdlc1`KG=qnjcp!B;ApAUdwnERB!!%ejBCEhbuZ6#56PJ!6N}DOunIz-Q#tuAVI5+NF;H4Ifx%@`e7Z1c|xY?r? zw9BY9?T?3je7jSCE!Upl9qHR|xGMA0!l_uZT-WspZxd$uVl`F5lS<{=138+nwLUBQ zkS?y<>~^5`?Dyxh&EW+^9j9KMO};Bi5mfVo)L^sqklZ~F7zEs%{-s5*4ppl(^ewQQ zEaJp`43#{*nQ@l36%TW#9DVrm+kDt-d;j;SVTW)C{Sz^5=Slpy(Pt$Yhw&2%f>u-8 z_#Ef%ed?EQ<(?M!9(58+WN4|VyneX9J@P+l+{#)Q%8obO*DJ#RyEuQsYsy7zE-uht4bNm;cj#zvI zYM}?u?Bu=6&Oer*9;4M+(IL!+Z`==2#g)y6O(|JkyRUAU`K7AXa%1xLAi4rE;VPa2 z3AU3jRRKx4fl6%+G=ys4I^V1h)^98)3Xr3I7r)zzF}relW87Rm z4|kVz?Kiu>ibYTRUNoT)L5jNaHj!o_O455~8%*vc#x?UVUkqre0Rjb!(r{+HaGmy& z3BU$oH(TJNma`F`vTHdL6;9#gV|1qb(sgHvYJLy5c9k(_7&=Jwc#d0(UD=O0A&n1) zWTJ2bm@a`Kxs?VE<1*w1lFIoV^%GaXomVR!V{|Tn0|Y}3$YJ{ztqM<_UpE)gLijI| z$&#?jZN8P?R2+4t0&Om@U-uz_F2MHzSjH4gbYi|Y=eVFcTY?OocE7tIx`(UY&a34! zYAjFV{HIh;1%9)>3Ni`fMP9ypxe`qyqG?j-ukchEck5BO7!@I|5kRx*Mb&imX`O}U zyN$2NN;S65yL>1(F$@^QJVP(<(ZBRW?pzwNy7JP25qTqVY`0~444YiOzo=)w<|cmg z*w9*BX9F6MBPoGj%lIscp{$*lk{8Mt>5P~&#t|Zt+a>D2x5{-L2ju?NbvUGEwxZXg znoZgED)K7Tg^A7NBdSW(i7oRqq_fXsa%UU-GG%N?cb_f}cNGkCEAcZU@_^{OXjDLq)I&z8c9Z^P!gM&i=>9J3t?K(>Pv?d0v2|0I`^jxmQ9 z$bv8?$0S+$YX@XU&muKVlt% zx^LP_YJU8YM|erxZ7o7^AO5A+u{f{$eqdDp2#7!6r_LJ=;a3@cLyxFkYuX_qai~j+^mE zTi(ZP@nR=^Zk-X~g8ge|GJpkZER6ST$Z`MNAw|_O76_7n1P*A(D5YPXFDGDMksyuKBrny&_dS4!%p33Er z+n)b3I(w>kkm|-uV0*IG9pe;;#Dw5()=i<5v%h`h8_ECvA~6!k)DZZah2zkn39ad2 ztFheEtCm?Wx66Ml#^#K>c5Y<;xw&0a!@lv!>Ri6fNzSZrZp*6 z(ENKCd?~kIZfm8jMeuKB`@{d5%PL8K%Zw_8d#t`uc8iZdi&M^e+7so8L__kP&r+=j z(|u>4hH^$xTb?NK>zbX)^}E;g#F3XBGIJYP7AFl*o^eIuT(&%w{*vDk#_M^C_U=0; zD0eSW8rTRE9v}0Hw$6&9C}qc?MgXh8``Ag%{|Fv`!=$1t_>Eb4`_9m^!$>IEN1RSl zA=Nd#j`}Xno}cr^6x;DDrzKOKPUUKeJr{fAQ`0IECLOg*W}_>VQ1$&jb851vCJjuK+2CE7Uo#%vxt z>HDR2X)3X|zWQ!lYb%905e-r>y4vKZR%yN|*X>|FUe)^7V?t97mVtW>p-!hkI_fCn z#=+g>u!X_)Kk^AIVoFV&!Ahz$(7aww8;ywadbIL&IGtL3q`sDDD`zhAC7H2o-0VvR zh3QGj6fT32uoZWg{n_!3#Dc_?CL~BgPLZi4Vb#?OE52L<+)a*B*=yaybX$FdX)?K3 zvHQ_dw23Eozb(~aeetnhb7ZivABgD=@hH4Zu|kBl%*~}=RW|WwDHh|Xw2|NSMz~V# zAr#EFxC0@1UcYS3yLb!nd}NgO*;8At#kgpTM~|~ouinn>mCFNPYqS{pBHt%#o7GRw zw5_d`OfSf~_J5`PvpDcSU{=jr0DgBS5=O_qC{jw}-T6bnz29AdGeea;ALMK+^DWeU zrunEXJvRM-YWa5Q(ks@gmf0PTu*m5y%I<33TuKVzb6+#f@7$SSj*4taKbQ zCG*6J?6_}DEY~F|bj6$&3IZB~r=!uz>?|yw6af@+;+Z?#k)MoUU zAWPf6iR4IIGxU5uc6NLAQ8-hHEC;6`gWz(n;SX^H!|VR?ziuK5Q<6#3l0Q&X@Zl)W z%I)#|-okTOvCilFU&1C`->mU!40hAtae4OXXkdY_+V zmjyYA?R}&B1Lyr7Qhde{V|p11rd|S>6%a4Q+j7=nb%^=e^&K=A5+ymY{NRi$AVMe4 z#-T9TnuH7(^*GkfT!0rDwfohJo(=KM@bEC780y5ip!MuqU0Ex2=i8I`h{QfwF=dWE z@_$DOK{!z>B}_qlh#M^%qkwM@G_>^Lybu(U1A=K+rDRmcI>cnCYZ~j1q9@tcxV z6oyVX(AR6~p*Kw$UAZ$di#CXoBD*wSss79dq65afr%n95x=FQ$ZdQr?g@8wHpj%-= zy870QWWB@Y>&e5IS8gsZSnQ^@Rbs@*e@H52`*gRsGc3e*L|phV^LwWBw8Uunv%s$9TcXMv9T&ZPn*amvLr~yW=&y1)aFK7w@gg zNf0uE^cF)Lu_C?P5jHF($N+~Xn$!QGllPk^QR!qT?s)+*O#JOb*+IG5)((3Z%H@w6 zNjl$K`*3h-szXDyw@`0CQCQc2(`EaWm-$lyw&gr=sa9oH$cWV{uOg&AAJ`T|C5JZ> ztNxyh&ohY2hIOzH9XH)#CG5A>70y1FB>1P#Q!^w6NS2V^=lLxyg!h?cqu?o5{oOZ* zJRD*?)}A+3Il5K>lJh(qro2f5^(t5m?UA7B@3&{!4>n_S9Z7Ju+>p_qDqOG;=05`^ zJ-F}O87&i?9J$4hm(7QN)C$NjxlJ&9yjc47wZ83Eyc z-I(jgcWYPFtAxcELWlS9mY^vPtUc(?)OvUj6TKk``MQDr>2vetnh)6&?{>z$aEH5V znk+kFjQvvX|I%pai=(Row$;xa{eSyhJAF~7k^r?42|>-9mq5Hzyjtj?BuR24gjR z!8I5*M|LK5*u!X;S#fYE?7SIuG*vp8?J(|Z35`71ubq}O*^9SE(1cEyn5);Id|Md| zyVW3rERD==CauogZC7iJ&>>q-CuO14ue40@3s{aI+S{f7z+^^pG)ru6G+W}q-9>d& ze#T9t(%aA(9ru33xc&1@swk)nNt&`99m49XKT+0?$^S9hkGc7Rrikzd#bs?1J=%VQ z#6ey@5sPxelaEM~U3o|!Ct@)ggWrYxvDw+n1vxn@nwp;}Eo3OAbp04uBC+>FJwkK`N@ zpBC;~8e=pIa^BwjM*iFL$&bsOx)0yTWtbvI+fB#slBb&117~$*gJC-09LIL(=5V@J z3`5h?!zcUcAM(O%)1p#wosM?Co>?vE5st7H(U5NlDaTHQ{$p+=mvzej`tp+&pzPnR z=EMD+f47TTdDib?rtmJLiK5Nosbt20LwBPuse8E z@&Xcut9tfc-WOKe+s~SfivM5$0olpCX#D@EXc~B8D%P;Q6JJ*<+f}~$NJWbUE>>Ax za5ZVvfTlw^bb=Kp9>aZf?fNs{i1Qjc9eM4;ds)(hp0P`0LD}Hc0T!+QvlN(O=(Y1y z)8HCljkk+bc*0qetQ*;Sq>@rls=*+R6h5za9L+9z?KOAt06w03sS{I>(T(2BoHi@V zzhLr56H>f3rjQ1Fm`g;Bd;Lm$`RN0o+0gr-)~IUplCCtBY}C)K3duf)WFCFqS&?|p zZ`Sur;?9*H*Xp%TtL^?Qd=yTj@6>NA#^j}@`JjS&<#RCyvv*xEGq7*JyHKAKfB7Bb zCp7VAF4i}=Cx#Sn(fOW_6RW+DXNY4yk8s)bEA6eCoK)G+c*i^8^fby|r0n9_d=tN% zL#CoQH>r+D02(ji*e@U1?HB61SLAbYM#*-B+ahg#A7Z?-c4Q1JuQ zJUcexqp@29Mz0Z)S~Je*Za;!a$;ypRATjUt2Dv_3WtxYcSO`=E^>n;%TZ`mqPf3?! zSl*%S1TACd2RyeWIIj*yn4e`cI#Q2a(jvN>hZydJjc%940_>WSxU3oa88NV4XeEhl zQKlPkkpp=BjRT}8V^g6%G}&?!jFlr8>*8iV_$U1t$#68NrOWCe)OiV~`8Y5ZZ^nXkjX_9ukjyQJJ*Vl}W#7*0IkvCUV zX=$rP?V}p?lR|ztRV$j3k1?}@P%Qrn-#(!dh|}j{@J2s9+mWqRzi|R**21HuW=+rP zfs;IGXR>%1Dw~gJ)4Ww|wPN3rAEsoy>d)Gbi16Us1Vw{^1_7Lz120__yJ|5^q>YX0 z<>;37eIFQ{gPhkeNvRu`gRkwX9y>Jan>H3V;!M4%*}`V6o-LMm=2JSonE{P&6VyA< zEYps|nHfs$-w|}$w}?&C@nmCZ^!yi2Rf0_wOO91oLA000AL1EtRLG0O*hiFbH~S9cqvDM_3Q%?f1oR#ik=-?IqHqp-iVg(BC}pC1wZC?0*K z+M`eM-=Mc*WKB=5=(|j-OHRtETVugnycfC`Epl%5gp-(JksBU3?d2VZ2y{~~Qo4RB zs1VwFe4DbdwY7Ii2PAwxTN%4z_&+l_HdGFGb?Mk}9kUJ3wpaAaggKdyLxWbLsp;60 z9RD&dIs+^+(^}n}8yL>?QmR^hamvARM(OMzplDvqXp$%km@)LW<%&Bwp%nEFF3eVD zVInP> zEGEvrjDageJ=B?d-R=n$`AKteTtkO~%RXlxedecLIW!T}u{E6)?h-f{VCr@^FYwus zDRJog{%?ssCU!T!%Sv-FVudf;0+EzR`E;7g#z?uOLpVDkX639fW$j00og_Zr+&zyS zN=W2>q_FnMMQ1+g`~Os;i*d<_5Qg1}_BNv3eI>ju4SP+aOz1JkIo!3ob`~N+OmT}3 z=M)&!Vrn>)r1u!jl@5#6uQrwE-I~T;(|y)BEd&y6jWTxv_8H2&aMgG{qc=OKH zfo4lJ5hEWk9cc@8w-Bn3x?;L6#+T_hGa8>+;F=Y}(ZJQjb+y`ZE4Gd4^DQyhcHofi zY3-BUUzLW=SF2%Lj?v>TxBH09Z%pqgRexpzozfI;?2k>YR>EIN8*pbi4ZMQPgV=y2 zAHuL$OJ{p4o@izGNN8arm~EVmUms|Ta9@%>wt27gE-P;%!V5G=>#>3b%lwYhw1P>F1Ci%#dUhHpPZq?>>NFYB`-0*SFstP+~;IbE@!WYMaN@ z9Zhcpieehcemo3@tI4ZXsTo|4MwSJP;qSTO#w(u7w%ANK52f-*dtDxiRblk-3%UzP z*^NTaAUTP!PgvVcbB#;(ScfhBVh8*~f#&P5Hs4bA#u@Os@|5H&{zr~`)#AD@#PP-+ zoeHoV$jv9g&R(}IOsCmwNEYqqeY~4L8czu201Er@kF0K2pn36bEjC@_mZWpsb}l~bL*v7(8| zT}Ua9pk7Qf{d3JGMicTQX56)PT-4(O6@l+gG;5-6>-;h>)OY1qG1kr0uN@OEv*=#6 z(61?H_uYR$BrHB(aoKQd#v-7#3#En0UAorgHKkpbS8a=GL`en%>8RvBQ2^7=*B)fw zxDa5n27AED0~@0yMe0kVV&B^f*VIDwdY#|qt`5Fzc~K}Xg{h8v>keZI)gv05fx1;g zdtb~Az)IEP#u`k_lqIcp3{v+*&QP8MF1^dc=@An9!-u3)ZVe|WUBOVkY><|t=_@fF z6ET#VMP%zMZ)l=4rpDPm02nSvCL}i{Eex#XIX%tVp#rW(SM6K)XL#3DI&JZse>~_I zECEbT^eqMChYJ#*EgV6Kf`1s%HAjvA37%yWH@vnh5Cze1pyP01$z_k4LUG60#EG2w zt!6?~b!ex6;{G=f%8F1g+?ssqnrM;-sLkAc6_|pO?R^{&VovR4|w`J-N>% z{OrA~A@kL_Ixo>9p(OAQqf>tdSTa|~UoU69NIJfKn0zd~3uncm#@zEgl9y42R=hI~ F`afD7{xbjo literal 0 HcmV?d00001 diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@2x.png b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..273fbf872dfaf87396df5c8abe1cb3a351ae2d6c GIT binary patch literal 5226 zcmX9?Wk3_&*WMTmi2)8&N^(dlT@unIAt0gBJvs!XyHh}k!K9Q9iP11ZK!J^v4k_UW zlkR%w|NU_9{dUeh_nh;b=ee;jv{fOb^rQd)0HUs@q=!E-_@#0OjNc=!%02K0&`VEM z0Z@fu+yVe-VCqWpFW&=kxnv0jlg<5)ENUZiDk6YbF`5StI(?SWq3729Nv2QT7TffAo`PZeDzM7lP=UwIgWoLfj0`Gu z-&|jw;NHA4Hg58`zBqof6m*HhF$e5*{T@b$XSmKceY4qJY)2YV7aa!`{OrLtnt>n; zVihyBwu3o#!`ZftPE%E8e=xa-njx3TGK1$Q4b=wahV5rM3Iz&xL?|!)b`A#lmj;5= zY5WV%>UsFbtxBkRMz+laXeLgo&Oiv+^R=|jC&o3)?ZnIh?w9$B(N|uQa$#Ki<1A)O zOAJBbV4km`13q4!p0!aF4`(m>7~FP73RRO`kGH4XQrp_zW05k4MpY(~?QTmQw-)9k zYKRAAP!E?s(M&;WRBhms5;F3IHn{bq;<7tb)%bq+K`;*$ zNhG19GHAAJdDshH|wB8dQs^{n>m!rt+4IS^dEJ0 z!?Rte6GL0dbRiFxVaPnXFi(OYFIEgC zQvSSR9T5hSf*R?ua(etU+$i~KYpV2pQS{N7G& zcWP>?_vySBmcK;4AOYAI5|qb&##-~ukeaYNFM{P(57J9G_NZYvsVADU^W(|;d=z;s zh4jGyyLjD_W{y_O(TC`RW0AXXi>+Iq?O!+zo-}B{sPc=X zfx;YE!s$m;8YVZUJ+WE{vC33wVoIiYQJVp(v{$Lcj>zbPA*6CFpr@{=_=AWwT5g1B zEv(Ey2`C>1F4G02sv?GQi91W3w_ZQ$0xwSz6SOyngL=f~q)U~x)9-!B(ISM+iA34^ z(W@WoTNLuv(UI`nfr_L6A!?*9jiV7H)KyY`N1O6L>a4!Ub$;V#&J@^tzaAmvTEkKV z%aRekD?mYu+=3Ip@lm=pfVESiKRmHsc`5qvZ2a8l0Z4!HQ8Uk@lyzbjPxF&;_mAB6 zJ;KyL6r3CzRxD2<-*HSI^CPV_;QS!Vj}#p97e0roEWDTti)&nHKCvWoR|4cB0-MeZ zEq=~;Qv>^=OTP!3(83&+`Nl&~Ii|(hxf|r9riD2EHz;S4%Zm`^P+=*ODmYo3yt*fC zVt!UG;#!WWL;@r!sWyUcR08RuT=4Zh;i<@Y~cRMG=cUXvr2b!KRzSPrUc^I}s64=PK5R=uhZ4C#i%lJr_IX&4BtdVm}6A zXB5yJD?tG!p)aWb3pCKRMXl(|s@TTIV5aQui8;sLfm|IehJx&=ss}CAFl3+3fAUth z4WUd1K*cDWBqx~?J0Vl>l}G!KfB>V!&zXtCt(m@1y!%oIxt=2HKv{n23y~=<{aV36 z-KGvWw8JDz@0CgM#9Di9aGjZ<-uO}&Mw=|gMZt8P(hM76$Oez5rCs0@; zJ~w0KK%5pg509V!(dHAZ*O2T1y_~3QQ9lk3C?nUj zX6E?$*gtNkeOE%64ZX;*U+6Lc`Dk`VO`D@n2J5nz~Enccfr`qwiUfsUfRDFppOY+e;xjiv1R<#Y0z5mLq zs~(Ctj1*FM|GxL9Wy;JSNA1>ezTs9nI-5UdDs*!||8D?CsSd zb2-Z%*&Ju>7xMDLuc>0CJ7;`RwcDAQY*%Ycsp#?N%9vGEHJYoS5=vybdet6kJFd0FkurM&y~VhcL!Utm^dg z*qx;qXlQ0vo4vhqID^m+w1Mko5ERNrX1?nb9kL^c8g4cct+-=Nb0>mwx)_&FlL=}x ziSn;6Med!mIZhNE<8~R+HJ1`-Q)~PwhTiB6)-`;|(=3%-ZEB9Rph5J~y4M(cs3anP*>>KZVCi&DL z?Q;#}zf@EK)y8u*ZYd7rM!O@)c3XC82N!J@Zd4S%4qLF-^eoEuCy>n4``pLyeTJ&K zWo9!WQd`j#wSDF5>-+g` zmCIh*R8V_HI8?QoIwl+%W@8Alc}wlqe*7!t`IF|gAjh9i1J3qZjm!g&&p46qyEnp6 z4hI@z(^Z1;8~V>2?Q4dL-sbN`bttsI-?t*Epyg3Hex4*mdqe-+oEnGjo^RUgQ*6Tb zl#Mn>Q(3Iu|MYK^1Bn^$`v&~vzwMHG>PLqlLs`QTUC7&$EcLuoq8tk(C!tb4JH}lt z0RnvK5_X3_*;e+TqXA;jAWmeYW%l{@viCpia9nOX#5mbPj#xXCIIsB3I3zx6;XE0p z0nX;r>gKsc`7N8P@YoD|RcZZNkFd;s)wb%wX!tXRGXq+6@8DbRBfPmlvA+L8sjBiL zSm-9@=$KKankA?hS$g$C)fobq7VC&Hu9_P($yV>?_d=IJQV_2Zbc{2IQ>O@(-}2uT z+!#g}#Z6`PV+eZ~E^6GZ2>k86GgwU&N#unJLRV($>~B5rqNG~CMaO#%8fA;8G>ni* zs?u3CMbn?g!Lrv!P=vDevYZzNuLzQqGez85UlY?2kG2B z^eBGIzCGWCQD&LD!05+U#iL}QOzcBvi-Ay`uw`#;U4!WlV941K>Nkt#P;9vbc+K~^g$60yJ6)LEHc8r5$e3x@WDu{*75P?(Tp9?Mry;|lRxiIDNz_9 zr06*)RS7XRU>a1Z>$!s{dPIyng=hc2nZNJghc;uV5zOx3cXqUZ#T{R!vp%8rb4HcI zq~I6in1}NJD0-l8o*qOTLy1=bhE4!#H{uhA?S!zPI0TMZCDc4r z8||*Aoug~xgfnaRYp{Af-*8_IRhc5bYx8-3RlLv7o=+x+O2qw>17O_sj_g>U2i30d z$P5+keqP}wD2VXL%CkVhO3g4@+K1oI>z%Pc-EtdtfPle5Y=g(ZIMR`vlL+#%5G=5j zy=?1(@ELwU?%sj?&kbxHV*O_}ES;@_%Lb3kv&S|2A@>B591Pqd2yl#$wSR0lkRF}> zPf0lR?;=Iusey7)cB>&cM7(^Yq6kJt8K!D&#?>PED7pHBcBX*53iu$WpsHroc?uBm z?f(UY&O3_VNaCsvxkedw({>0>n>l=6 z*S!H{R?XCL-L-iC=}071<;@LbuL1W+4pHsi8s(+Ko2uX`!XRWb01%>ND3#VQ;5Y9G zu*-ewtw~!%Lxx15YJ?qFhUw8JxcU0ek2E9^chvrId%UH-6Mx|pLsb^vAzSg)+}K54 z!-_Ko@w+5+jln}%!u<(|YiWb6ft3S1z;8_gRA%Xv*a<|8^)WWss)GB}K_ZOs4&IX?IG_6 z0+CqL0PGs%&dZ@hl@%DV)Vse|Aa*Lhb5=bJ84Pa^PoNWqZ!!b+0LGM7l0VCVSSx?A zn};=$1PNf26KM#l98x?{nd&I9?(MN@x8BmSftL#p#^8Pijjjs^+mq$?El;60KZ0V8 z?)SbXk|l8J66<`nQcUxtX*sMgCv)t@p3ObW{fEB*CxxmtkjI`Rtxq(y@1NpQJ~Q!t|dEybGaSkYGrpb`nrUgKO;|C0s$tL(#Rn=W6%A5i=5WykUpy zrItbaH6AN&9<;rpbDiHTzf(1}F14R{wbo$1d#qR#q(6%7Isd}@Y_=y}&5QxBs_N;{ zt2EU4H0P55PPs9fj1>QYAm`k=uSdB;quo);ZF$5OW$nrg zHt>^5-_}WO8cXvr^ym?aWX;h5sIQIZG3{}%PesBGnil)K6b}F#gy$-dvy_i43Rp|p zN3V`xD=b_ZRnPAy`@4RWA-BzeWwB_Vlk%DK)A+NgTSaMgr*morP_!!ECTraBj03L> z^a^OEb0!mh%jeIs!mdc}i&lI!64J^!c;{p)2-9dYyJ7lSozW>)K@2GgJy42ij~UE_ g?RO+NZQlaZ`{P)E^xYx&&qIK^vbIu{f<@T>0sTt=y8r+H literal 0 HcmV?d00001 diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@3x.png b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/ad skip/ad-icon-skip.imageset/ad-skip-btn@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..c69d85af6f8d2951965cc2811f125edc82456dec GIT binary patch literal 9463 zcmXY%Wn7fc*Tz|T$)&qvQECC{kVd+@Yw46$r1M8AoeM~}bR*p^ol1&?AT7Fs1!K#yqL&RA$lo>Ahb048O*ZAD`Y82sX+xN z(QXVSZg(p}ht;7157fZ|!zy{r3qUN&lv1U=2JJbU3_YeI{mz5A$KNBRI26xMIyQfr z9&@xy5AHUG(~5DysLDIOplA#$ z*=|~N59eNhVhJ2#+#dAwD0p?W+G78Esh&>!q!$IltCH0{nYhi0j2~!dm^`Q5YO=>g z4Q>@inUcI9U*g1fovtzM$jcP+*t#G61h%XE4x@p@gPT> zDd&~O{iv-J2uVgS3Du+=mm?#Jn{y+)4c3ts?XuJzc!!Z6^my}Sf3`G8*lsH4kM~+V zPl_f`2|Jp+_&bXCL^Hn2jk#Sf#kDXxN8G?+-;%^qxpwJT7&@-w3L?~!cuIbeCaq#6 z{?M+QM;j=#yT$c;yJC5HId-E{4~SGy)VJH5T7+v{(~( zvl&HaCS=(cezan)SjLt@HU?z1s6apF+M)883kyQ^8H>#skV(JnnUajL?e*%-L1lMY zL&K9uNKu2TGiR%wsz>)gvhYNv~ouyU> zt<6s?%4us}k2k-9s^qCEEr*#tI9uxcE+PEj8bbkm^62wMX3jiX?esrCFH%VSa9lr3 zJFaC-5>iYNo*|ECg+`It*KMFklTqdo$G~APciR(syRnOtVuKDx3IkGY!z~J-FX)x1 z@y9&R#1m5ZG+&7!=Z(?K$a<|b$oO6D3wFd_PgV5Imc9>8Nw7YhB63Cv8kv6A24 z#Sud3$pH}Yv#YMLO*+Zcy}{ryQ^W<#$OHLV$hpM>*OQi>w81=<$J|j z97%W_YC=7PkHbtpHdSPzU+sQ>8^TcPu-W(iU-6!+#c4>&PRXh%MgfS{$RrRa$Lij4A~6wd|4e*UE6AddaHEVqp%9y$`7S1jPc{C>`~_*b&8cz zXH!LA*E%nM$ydVmDIcxrKd#g6^Eu5%t^Ti0J9;%w{GHj+a)X`1Wli=8#-`Gyk!84h z8{Bx0xe;`L{Q@}_A2@K{+I`g%S>ZYr%m*SsCr^)4A9}H!>M?$8OU;)@vDlT(?^glHQ8)ME;^JsZNcM)d2LA&)nOF4I@9f3uW6YIL z7vOE_m6!%ST$;|;bM@IGTe5EMY82E;vaRUQ*XkKcF8}wJbq?@6?i)4~R@XSUA>r*@ zkM(-}TC@I(*6qkT*UqQMyC--zRGPD(P(v&WrnXrysLCGm`e3&7o8bZ6zfbaOpQ@*w zc!ZubNS?;TbYxbOf2<4pQd zLZtEK_&e||hSD@Aj)jV?=Jo)5071WKhY|hSz}upRCbaXZ*5$&(Iw-)K zyIdMK#BUk;O4s`>dQM1DG$1_wG!YMmQLdWxO4#jiq1u7fS%r2_SH8tQA85Q8RoL!_ z!qDv;Ms38gGa!SFO-Y2h^NkWXowckHwUz_0gBg(bI`!W%Qp=H1?r(;j&(6*+X4dVS zy1e7+y3o>727OPqmO;fHww{$6$NIB6=wB)CtQAb16_Mj-k7;=HuXn!-Up82c3$!1+ zLW!1rnv&U@@rA864@C6#5pa_6lz76?L#*xhP5K)k-u^G2j0D+IG9~lfx1-t=gaUo+m%u%q|#_iA7=^OJwfL zzgQUIVgFVHF_%Fkkq|Q&m1u3parV0IlQIU;Pb2W})h*})1@jp6!Nw0acLM^XuH z3YeNM+2*xo^DYk;Yv-uEr)e%q^DHdOD$rIFBl5`(+|!^IhMgOlEVGr&mvuM*L63J; zQ>z>vEN{`CbL5VW7X|P_d5~1#g-&K&t`qVfD0&~v3E$Lo93ND@ybUYWlafRVQt4={ zM4AP@epRe+#MlD^{}1wQ$p12SLoTTR|KxbP^P`9X*Qi?H z0)xg%AVq7dN z04~tR=Z91Dy^h!X?aQ@_$8>5;+A2uzYv;)-njOv4l3x5K`(WtBrulA`Sc^`{U;6cL zRvgkAk`MJp2L}HiS2|$4R(D|*Eis#PA8<_~LLd@O%TH?1p$BV813S+FjSeNZ^f|J> zEtNM4ktTAOE-@r&%kXIGY3u7gX9-qE0T=oSq(cw-z_Dp=Pt$ZbeJ5=wEZXfm0nby@aDmg=A{ zl&EIwjgF3*keN!u;jA5Yy62g)oR4v(5|ZuRDw({$_CVRE)MX-;<^B#HJQKc@>t2Y; zB@OKrBU9?C0lUn6Ry^`jG@B12BOz^JI##?k5?Q9`Gpr}%lr#V}_kEc`h}w#9TEo}J zo##{g?HNC>)U|TUcoJzN1ce}V{7wses&$Gw06BtOvnFgnjTOK?aOw|Q=d1ivVxa4kWD2?8 z!{wsgxM()n@h7qDO@x}7l&v1CE%#xBWQ*0E(n@qP&*3{t+thnE+K#7{SG?ukOA)qk z#>lhYH;||ran4L%hj47GvV3 z*FV$ECEgEF*v;vNaZWNi$KgN9D5ORAv}JWNf1}Hw^>i!jq(qKXV{l|$iIP>t#f_j3 zDtW)MEBtns-m3L&YapxRZgE>#46&dcy%i2MwXo+-N6Y$$yCTZ|xaD3)gb`Wji@?tB z-ub9};(S)yhmT6{V?XzwNnq?JTNE z6&VMcnVSVtgyTYD>8ylnIU$(5!BJ_|`WNqEKWTiSQ0Va&iI=G2KV!go8Q$ZZEji@^ z?{?}TQ2C>e5xTT}q~VMAG5=+mO%36oV8Hw^DMFz{sK>=I zIEbk$;n;fyd&Kk;aCB*r-)^SroB8K1_@J5L2F_R3t5d)JaIbAN?o%V+5^tzTBp~eA z=CFpp(CPp7M{~Sdfj%bH-+rHRvBDAsLV9FDJU&gPi;E@)0L$YrMKm)CX11K3s2!rf zyG7*4G=8*fyKFXT^VB6Sl(_H1<~FGkkZ$QS8i%H!SWQI=!c5x+RCwTmk#}3f;ep)y98O`C)*a62_zYQSEU|k=oZ-rTg3>a`^iGjePy)Nk4q#u`(?-T~u=i*+{5rrB?)|M=2sYF{gkj82lj zV0Co#eAa}714t;emg9t=upE<8&cVSXtS>+)tbga%_ zRkjL>3QzSD!w1Fr^SpIy;V*7uTF^r!m>j?M8K){{3%bbL|n`5L1NLyH@@X*zBs^l&Ptt& z)O^qhB7IZu`F#;|%LW#@3i+XvDP-*rxcJ2J(zT#QvBIHvbf2vl@KBckzhopZD>Vx5 zq6guPG(M7B+%qEW%yus}6jJ>C?z;}@`cApYJ0AEmRex9fcCW~}0evD*qV7SHZTlt& z=($FrJq&8@RW4#~i!?See)F+ZUMwCtauSVmB62Y|o!$-V(yoO)Y%FG(8e% zEc5Q^_C8rcxaPF-Bfk)9g5G;0Scw&XT0UxtM3mfQ7K$Z%(Q=Y_`&XFe;qu8`pCF;0 z{C{F zzJm{pbUU-GVCB@Ct|B{jwcy{7Knuz3J6`W|MFv_WN8w@PERNR8Nx^mI3FavIvKTx0 z54n((;bb2yO`@if18s|J0T-j%*nL7;mOfHHCtJTaIt}z+L&nMp-e#9Zmer&1d;Qzp zL&2y=tls{Gy&L$>i#4Wi)r1kExrsH^mP%~SHIb@bl8lE>$~uH=T(Z!{L-P({{rmGM z3(?^R|3vmXOce;DoCtL)%W>jo=6TH5>}4kAFE4Kl$i!?Xes+5U<}Y; zlPrJx-J7!VYgIEln#)2iaZPdUKM_T>d&CdSUILoRFU73}Fk=Gn8W=`Xfc?Pl7c=LcRbkIzHZfsnjRBnxRIsnwT|ZAD`pG*wgO zgFZTyT9sQ_wA*mj&4Nu2qjh}M7)Jq{WJ(mLxw7f<`j?wvMcMNOlR2vazfBz37=WBH zxa)fBzo6+B%md>d;=t+!zC4u6d7r+qENKz|7~PGd2bTOnnmSarV~ovcP20H6;%m>m z)CI6;T?~>mtUXSHXqgI*HdkSZujckvTez7s%2M@nL347d%n0?YX(h@1PHfvP=x){i zXTQH5A0z^rk54V+9=!nLS)v%<8RbcHhIGV4$&Y4$apcGg$vrEKrSOi3Nx*{#6t~e6 zl=IVI*^I~RGPFYK@O*r+lU~4N=uj8G_}6tkjI9zq(8+?3lzWxZzcs@|F*06}Q~p9; z6ymb{#kO3+;(h<`RR{5mScT9su&o|fKRadmSe*B_`=$R;3OEaSBl63pD;vX1;zuWXPR zG>Yy72Q_}&C@9ZX{Dpa0zLz{j(;tQZq@sI_yDb6Y@5t{gECF9O{9Ksae4_#!x_Ws6 ze+jg7Q_cPduF%kTqN(AcaN0uze6hO3_!U;Kgh%}+qRGV1KDfPFs$UcvRnm6u2F?Mc>n%*_s74Y@NpvVc}_t`}8cet86+3fLXV3-#Io?Ssdj5hEch7dW2Q%5e#*Gq}urbI&0O4 z>f)k&dyy%YM~1D!o+646Bp<_>3envk-up*AOWoMyklIw4LoR%mw%cG>vbI%lwr?b? z-X;tf`mqjO_4|Yq;Zc@j+nCX1#p$rFLRd8UD8^QNq@8<^$()w9HkpmBE$1x$$7`$c zlo#6Vm9gW)TjGBgWD%7@BL~Oc=iIrP#k5ia(mI;U)7k=z&ID#vOEmyPu3?KjEMHx< zz$mpi;_V2{3v&0uEX69=edJIW5g+=){kyzee5pQYGK*h(sdp;%5&PhnivB`iHJaJs~}li2qL1`T1M$h?y5U+*ZWlXrNLu?4eHC$?Em2K8WDK#jvH3lBs4QRhKwVHEIWyI-@o(LD zPz2;pO-}5QF8jz6g}78edSnMc@UT*|gL;NFQ$aav)$7kfSwFsa-tgqob+wta>XCDJ z5m93Mxkh>Se2usFDNZ(1Zk*@(n3fhvwWKbjEhP13Pj&zO^I1C?Czo6zFSUfH*>C4m zVOv*y3XoP|TUOiCmY>ONE8!0qAAuHsom$|BQ{}v{SkYF#>|db0%ZHuK6f4&@Vrw3d zfWPg9PecolQ~>YslOatDZO_<{-Uufnn9&M-=zX88&WvZEfgLHAiC_Fw;uH?S$;`<@ zf{@bZSryFB_5v4*9WY|A9@6`Gy?5Y(kYGo!PQACpbBPpEB2Q{=B>19YP3-e1(~{7A z@(Qr!lX~)Q(^on+nCrn&AvUAwV@VR#0ZF_0l3c3!YJs4OS$SY}_zLpjA|8A9{ONOq z?kRlqs^#D+K9_0dUtk0*a0DA+@<(Auuh4~GAq$JM;=r@aU0Tz_({=x}ZYOY!)!Hr% zUYZr*x~w+amJ~*4$O!!=*YEN8$5T@P4vOBEZ4R+{wyHfhyV*eDcUUqJ$$j(%*-0(<{D*f zch}n964cd%PWs?!ccr^$C20%;bqBupA64?X{pehs3!y%oSZQ)f=XaRd5j%2XhJEI8 z{vXf6f=aH0z&IhenwjT_I<%SUP0EoteBC%*(ZZ@INwj zJa0DNX9OIOb@2WQ$T8*pZzBiuC8Y!Q(HZQPWX9(g7l!xB5|H<+D$&mD(}60auoru3 z(tT>V;6#E*Mm>)0H>qEyFtLpT0&YbD`5F_i_(6Srk@W5Vf|?4x2vrR6!^3^h_$;W{ z=mk0%i^RsHOtdA8EWz4SEf7&mGq*Ns%9POMSAB?$Dhzmg+#Ev$#+#RzTO?PH}p(@5&Fhn41He4LJsXVbc#5}C!?-j zAYP$ZZB}&Absl_mRo37!TlqEJYrxFA|bj$HPQ`xr(^=5P7pseV>+)y+6NUOvY(+ zVMo)CY)Tv4vb5B%`RsA;^(d0iFUYp=ON)RURq@p_Oy)xz;7`byl#EeP(9pD#OtsuQ zGK#+NzqWk~g$NY*>(FreW=(SG0xhHX*5a&9B<(XD4=>hlv+U=d@Ie{Jeoc^|Z=4_b z1sp3z!CD>bV(x*_3UPI#!6N)hT8*0d;6(YR>0GrqZYgRad*T z?x2&sR*&thL-O;L*txDb?|+~YL=HEoeW60k+rMpgb2W*LFP@|JSXJ9A%lL!h8LYQs z?xEj?B*;n=sVt3T^B8}9Cxc|>7iq?^t*Jz1w>TjJDWhO_aVQgkyLyZn7gToMb6}ArJINQ!(tGO5+Bm9$X_R zd}Raaug7kmqZM#DXX2>bcbH(1Sc~V+F+;>9x>-#wg568I;=Ftg1tvt1WR_ca_z8sx ztoJ&|{Q7{1PH{6ExnAGBL2q7K$*il(c!}#h89Sd26f5p;c>JYoY}PFac^)Y(Sst0- zzz&jQ+<%5H6B#_!7xLe+59TWuWmjKA{M`>_rwBO-46FXOa?Yf0Egr(^dOgmc%bCUq z&YOXQJwnq6uKF_!JfP`@O#l0IzAFmRJl3sx)**@VV(O4T6u*g^fudI4Dir_Ie zv#83>ATTPyMySH0z)*iXAhw|Ql$c&dA(U*3lJukJc587om1_lqhM&K)Ejm8!`;S&< ztenQpD%FS^AEIu;+U8XgT( zoNVLCz{wO&G(`b4&7uHWAg?XQ;Mktt3lgY_a&jD?hqAi2*0v6Sh8|}K+qAy7dso&t zY^Ll^W-r=5GcU?72#%z~pMw4zQdtfg?IjsF`{mi15{~{9sqA8>!TQlttRyoPz zeSxtiHeivDToIG-2NklNDlJQpqlACL9>P)44POvW~YJw{gN6p$Taw5ZZZ7{$cAE!~sy(i5?~ z-?hog5iQlTV~YA33`~f@FBZm2;b=pOCh0|y>BMoKO;}>E*>zvKnbYyoGbtqPmLX!1 z#meaTFDkM$G6QhXiwZZfyvu#~WA$sc;GYKJ!^t=akHFEC9sscsy%giK=#$S447R>e zHJE5L6eC5`Y!DUXDU^jFA=^pYZC0f2Hr1~u;OEOs{{P!MWc=sw3DE|~j1mzLqiJ#!!Mvv!wUw6QUeBtR|yOZRx=nF#0%!^3bX-AtO)Q4aRt&}zkYr6=n;?s z1Rp(B$TpEu{%%FJ8UOmXn{UREa{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$Ysfq^kTz$e5NsNnVM*MI)} zdH?=BkPQScU%veJ@87OnyC7U3dHncspvc_0bKxRD#=d>~e*ga6*474OU%7JS%a<=P zF)={4q@?7-hYx{fIyg80xj-WEI z$)-Prq7wH`nlLW-+~?B&bz-V+-H)jm=Gk+ytl}2u+6DYtmG9)VsnAuz?BlK?Pbq=d zhf95Agq|NR4Um`hQk>=?3JNX8ByV>Yh7ML)4HYBxyO%7OP_VIMg@k!oBxBvjBu-CF z$2Xf|E*Tx&RP@OrMO0*J*VNFELJO}@-@Ose!Hn&Tw`?ixD*ake5gu^=z=abxSlY{X zM*8%gIip)p(Q*6IsvEc5J6RGp6)}>ZxwE(6v<- zuHKQB`uxeWr;j;`-!&aNq{RBB=)jAvtp`-wMHv_l38;Knw9Qlr=wk*?S3j3^P6+9FA zKn4&jTej@`_wSc3T>`Rmb8~^>Teofn%Rq_7#zvrm`Sa()1?S9}^YiD=ii!%L$fHM( zfU>TxAY*}ofByVQO-+TU1aklW{aamK4c7=%2^48*0lE_eUcP(@Gz!9olQaBzQh*$j zk|4iehTQ4=tm2m@NgFzwYXS8$CV9KNFm$lWdH^|`1s;*bz_1hoVa7{$>;3=*BRyRlLpZJ{Cpa+n z_?*!(Fw>T{X74$C=;YC}hq)6!f8^%i;_P;?T$J=kXi`9EP0%HyO#$2H>}gsg)UtBT zqE*Y*F{Wi@Wv+ht;#1?zs$XnYX9ALWdV5L_`Y?!wvT^qpHqQlG!rY#@J diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/sm-ad-icon-skip@2x.png b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/sm-ad-icon-skip@2x.png deleted file mode 100644 index 3c85dd254951dde8097fed9405a10910c3cc1c0a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 809 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM3?#3wJbMaAv7|ftIx;Y9?C1WI$O_~uBzpw; zGB8xBF)%c=FfjZA3N^f7U???UV0e|lz+g3lfkC`r&aOZk1_nm=0G|+7po0JZ|Nr^( z=gXHb%F4<>?&HUg|Ni}Z?b++4Aexuf2QsLbyP3?%cUR1wdUZR;+*v0vVe( zZw89bpFbZic=YJe-@kvix3>dDu3o+R?c2AUoE#uqLPFyH{rew2eDL@82XfWb)t@|h z^8ER80|THtLBQMF`~Ca(r%#^-vY$SE3N#jIDUkjB`}cqU{sAolDFOqanLv>P2M$2E zU%!3@a!;H%!NkM_5dr!OD024fSqS&Xj~_tpl`B`+*w`Q2IwVv*_%f8NypWhw>|&cO>_%)r1c1j3A$?$-SQ3ZC$EaSYKopPZl|Y+z)#c|+3Vgyi$j9vo3S zeDv((v!{>uyE-`pctp5_@C3WXI0Z#`MY)M}_spr;*0gAn#j>6mD~h&tt&$R7#o-jg zy~DTXl=J)R_Y{2mcJkZT51)?<@N=Bu{FH#Q`4l_)_g-~ z@}yuN!=sWrf-YY&HriM*^R$Auny|M*A|r$Kbot8MZ5v{Neq!)+^>bP0l+XkKsewYa diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/sm-ad-icon-skip@3x.png b/tutorials/sources/Pods/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets/ad controls/skip/ad-icon-skip.imageset/sm-ad-icon-skip@3x.png deleted file mode 100644 index 3b77811fb61fd8508ddfeaa9965fcfdfa2c1202f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1213 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k3?#4J%UA`ZSkfJR9T^xl_H+M9WCijSl0AZa z85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#N0|OI#fKP}kP{Dsx@b&9g z1qB75I1oT&E?>S3;l6+W{@}rb5H^s!cJ12w_3PnWE-tP+ckcZA_iyIRnGiueJ-z48 zpa1&xtD&I*C=wbP`tIF3p!un(sSpLFrKMlKd;uC86%_>(X>D!&{{8!_SFdbsZGqhB z)2ILb{rka#2ePuVK<>JA>wqp{V`Brl;n1N&K#_|VFK*hj3CQ5)=6?9_;h#T$Bqb$* z+z%f<{Qdj)*|TR%OiVy75I{Wg>C-18BO_#yA3uJ$xVS(>ki~)a1_gma92r0i0ooEB z9Ss+U3#O;1Lj)lrKnD~S7NUt%S68EH1O^w-*Kk2(_5J<*$l?%VXUqUbArt^b7A;x? z|m#y-{`P zJOznEe}ZL0~Zf<|F%G1{!6FVZMh4T6;F7uhvAHYVSoHemwoFsu zOW!-P%=u6M=+3ba;6D1Rue~SFN^swwNo~CaHf-Ccwiemd&1xxj5N)5++*jfx##vTb zRhI86A1fC^$fT^vI!P9ME| zHOMJZg!RGVB!w<6Ese5dndps2!`>WW*}Z$W!N%RYuX|U;J;+JhQy5>r`T6{>>(3he zH%WUY#x(ha(1uOh1TUQkW4Up&+jmV7!-E$p3nyNg8LYR?Na*CDsTlqpyEGsHp zy7clwEoUQ(sVmI{v%<_KOrGuDJ}aI+#PhogA!_FT54R*L8H6wO41qZtL}pQ@+8pt-P$a`uEX2&mK%Lc0Yb>a`2*==?yRb9IB`+^)30s zw&?cm-|ffMU-8Y0kGucwzUjX&&o?h`>p!o5%V5&`m3G3_J06`{Vqf&^{AcbJo3krs TSeJ(a1E0au)z4*}Q$iB}Y>o!R diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AdVideoControls.swift b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AdVideoControls.swift index b31a119..ae7b798 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AdVideoControls.swift +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AdVideoControls.swift @@ -22,8 +22,10 @@ public final class AdVideoControls: UIViewController { @IBOutlet private var titleLabel: UILabel! /// Skip button. Not yet implemented, hidden by default. @IBOutlet private var skipButton: UIButton! - /// AirPlay active view. Shows when AirPlay is active + /// AirPlay active view. Shows when AirPlay is active. @IBOutlet private var airplayActiveView: AirPlayActiveView! + /// Ad Skip button to skip an active ad. + @IBOutlet private var adSkipButton: UIButton! @IBOutlet public weak var containerView: UIView! @@ -31,7 +33,8 @@ public final class AdVideoControls: UIViewController { seeker: nil, click: .nop, isLoading: true, - airplayActiveViewHidden: true) { + airplayActiveViewHidden: true, + adSkipState: .unavailable) { didSet { guard isViewLoaded else { return } view.setNeedsLayout() @@ -40,7 +43,7 @@ public final class AdVideoControls: UIViewController { public init() { super.init(nibName: "AdVideoControls", - bundle: Bundle(for: type(of: self))) + bundle: controlsBundle(for: type(of: self))) } required public init?(coder aDecoder: NSCoder) { @@ -64,6 +67,20 @@ public final class AdVideoControls: UIViewController { seekerView.accessibilityLabel = props.seeker?.accessibilityLabel ?? "" remainingPlayTimeLabel.text = props.seeker?.remainingPlayTime airplayActiveView.isHidden = props.airplayActiveViewHidden + + adSkipButton.isHidden = props.adSkipState.isUnavailable + + adSkipButton.isEnabled = props.adSkipState.available != nil + + switch props.adSkipState { + case .unavailable: break + case .available: + adSkipButton.titleLabel?.alpha = 1 + adSkipButton.setTitle("Skip", for: .normal) + case .awaiting(let time): + adSkipButton.titleLabel?.alpha = 0.5 + adSkipButton.setTitle("Skip in \(time)", for: .normal) + } } public struct Props: Codable { @@ -71,18 +88,24 @@ public final class AdVideoControls: UIViewController { seeker: nil, click: .nop, isLoading: true, - airplayActiveViewHidden: true) + airplayActiveViewHidden: true, + adSkipState: .unavailable) public let mainAction: MainAction public let seeker: Seeker? public let click: CommandWith public let isLoading: Bool public let airplayActiveViewHidden: Bool + public let adSkipState: AdSkipState public enum MainAction: Prism, AutoCodable { case play(Command) case pause(Command) } + public enum AdSkipState: Prism, AutoCodable { + case unavailable, available(Command), awaiting(Int) + } + public struct Seeker: Codable { public let remainingPlayTime: String public let currentValue: Double @@ -98,12 +121,14 @@ public final class AdVideoControls: UIViewController { seeker: Seeker?, click: CommandWith, isLoading: Bool, - airplayActiveViewHidden: Bool) { + airplayActiveViewHidden: Bool, + adSkipState: AdSkipState) { self.mainAction = mainAction self.seeker = seeker self.click = click self.isLoading = isLoading self.airplayActiveViewHidden = airplayActiveViewHidden + self.adSkipState = adSkipState } } @@ -126,18 +151,26 @@ public final class AdVideoControls: UIViewController { props.mainAction.pause?.perform() } + /// Ad Clickthrough command. @IBAction private func viewTouched() { props.click.perform(with: self) } + + /// Ad Skip button command. + @IBAction private func adSkipButtonTouched() { + props.adSkipState.available?.perform() + } } extension AdVideoControls { @IBAction func highlightButton(_ button: UIButton) { button.tintColor = view.tintColor + button.setTitleColor(view.tintColor, for: .highlighted) } @IBAction func normaliseButton(_ button: UIButton) { button.tintColor = .white + button.setTitleColor(.white, for: .normal) } } diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AirPlayActiveView.swift b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AirPlayActiveView.swift index 3420592..ff5a8aa 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AirPlayActiveView.swift +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/AirPlayActiveView.swift @@ -18,9 +18,8 @@ class AirPlayActiveView: UIView { } private func commonInit() { - Bundle(for: type(of: self)).loadNibNamed("AirPlayActiveView", - owner: self, - options: nil) + controlsBundle(for: type(of: self)) + .loadNibNamed("AirPlayActiveView", owner: self, options: nil) contentView.frame = bounds contentView.autoresizingMask = [.flexibleHeight, .flexibleWidth] addSubview(contentView) diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/BundleHelper.swift b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/BundleHelper.swift new file mode 100644 index 0000000..aebdf30 --- /dev/null +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/BundleHelper.swift @@ -0,0 +1,23 @@ +// +// BundleHelper.swift +// PlayerControls +// +// Created by amoskvin on 2/15/19. +// Copyright © 2019 Oath Inc. All rights reserved. +// + +import Foundation + +func controlsBundle(for class: AnyClass) -> Bundle { + let current = Bundle(for: `class`) + if let controlsBundleUrl = current.url(forResource: "PlayerControls", + withExtension: "bundle"), + let controls = Bundle(url: controlsBundleUrl) { + print("CocoaPods bundle") + return controls + } else { + print("Current bundle") + return current + } +} + diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Codable_PlayerControls.generated.swift b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Codable_PlayerControls.generated.swift index 468fb97..9667217 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Codable_PlayerControls.generated.swift +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Codable_PlayerControls.generated.swift @@ -1,4 +1,4 @@ -// Generated using Sourcery 0.14.0 — https://github.com/krzysztofzablocki/Sourcery +// Generated using Sourcery 0.15.0 — https://github.com/krzysztofzablocki/Sourcery // DO NOT EDIT @@ -17,6 +17,46 @@ fileprivate enum EnumCodingKeys: String, CodingKey { case `case`, value } +extension AdVideoControls.Props.AdSkipState: Codable { + +public enum Cases: String, Codable { +case unavailable +case available +case awaiting +} + + + +public init(from decoder: Decoder) throws { + let values = try decoder.container(keyedBy: EnumCodingKeys.self) + let `case` = try values.decode(Cases.self, forKey: .case) + switch `case` { + case .unavailable: + self = .unavailable + case .available: + self = .available( try values.decode( CommandWith.self, forKey: .value)) + case .awaiting: + self = .awaiting( try values.decode(Int.self, forKey: .value)) +} +return +} + +public func encode(to encoder: Encoder) throws { +var container = encoder.container(keyedBy: EnumCodingKeys.self) +switch self { + case .unavailable: + try container.encode(Cases.unavailable, forKey: .case) + case .available(let variable): + try container.encode(Cases.available, forKey: .case) + try container.encode(variable, forKey: .value) + case .awaiting(let variable): + try container.encode(Cases.awaiting, forKey: .case) + try container.encode(variable, forKey: .value) +} +} + +} + extension AdVideoControls.Props.MainAction: Codable { public enum Cases: String, Codable { diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/DefaultControlsViewController.swift b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/DefaultControlsViewController.swift index 635c6ef..b862df5 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/DefaultControlsViewController.swift +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/DefaultControlsViewController.swift @@ -6,15 +6,16 @@ import MediaPlayer /// You can replace commands with your own /// and customise controls according to your needs. public final class DefaultControlsViewController: ContentControlsViewController { + let defaultNibName = "DefaultControlsViewController" public init() { - super.init(nibName: "DefaultControlsViewController", - bundle: Bundle(for: type(of: self))) + super.init(nibName: defaultNibName, + bundle: controlsBundle(for: type(of: self))) setupVisibilityController() } required public init?(coder aDecoder: NSCoder) { - super.init(nibName: "DefaultControlsViewController", - bundle: Bundle(for: type(of: self))) + super.init(nibName: defaultNibName, + bundle: controlsBundle(for: type(of: self))) setupVisibilityController() } @@ -785,9 +786,9 @@ public final class DefaultControlsViewController: ContentControlsViewController airPlayView.props = AirPlayView.Props( icons: AirPlayView.Props.Icons( - normal: UIImage.init(named: "icon-airplay", in: Bundle(for: AirPlayView.self), compatibleWith: nil)!, - selected: UIImage.init(named: "icon-airplay-active", in: Bundle(for: AirPlayView.self), compatibleWith: nil)!, - highlighted: UIImage.init(named: "icon-airplay-active", in: Bundle(for: AirPlayView.self), compatibleWith: nil)!) + normal: UIImage.init(named: "icon-airplay", in: controlsBundle(for: AirPlayView.self), compatibleWith: nil)!, + selected: UIImage.init(named: "icon-airplay-active", in: controlsBundle(for: AirPlayView.self), compatibleWith: nil)!, + highlighted: UIImage.init(named: "icon-airplay-active", in: controlsBundle(for: AirPlayView.self), compatibleWith: nil)!) ) renderShadowView() diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/EnumPrism_PlayerControls.generated.swift b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/EnumPrism_PlayerControls.generated.swift index e9c7ea9..52b923a 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/EnumPrism_PlayerControls.generated.swift +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/EnumPrism_PlayerControls.generated.swift @@ -1,4 +1,4 @@ -// Generated using Sourcery 0.14.0 — https://github.com/krzysztofzablocki/Sourcery +// Generated using Sourcery 0.15.0 — https://github.com/krzysztofzablocki/Sourcery // DO NOT EDIT @@ -20,6 +20,29 @@ import Foundation /*Creates Bool var with given simple case*/ /*For each public enum with cases count > 0 is created extension with cases' prism vars*/ + public extension AdVideoControls.Props.AdSkipState { + public var isUnavailable: Bool { + guard case .unavailable = self else { return false } + return true + } + + /*Optional associated values not supported now*/ + public var available: + Command? + { + guard case let .available(available) = self else { return nil } + return available + } + + /*Optional associated values not supported now*/ + public var awaiting: + Int? + { + guard case let .awaiting(awaiting) = self else { return nil } + return awaiting + } + } + public extension AdVideoControls.Props.MainAction { /*Optional associated values not supported now*/ public var play: diff --git a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Utils.swift b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Utils.swift index f759bd4..dfaf8bb 100644 --- a/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Utils.swift +++ b/tutorials/sources/Pods/PlayerControls/PlayerControls/sources/Utils.swift @@ -20,7 +20,7 @@ extension UIView { func createImage(named name: String) -> UIImage { return UIImage(named: name, - in: Bundle(for: type(of: self)), + in: controlsBundle(for: type(of: self)), compatibleWith: traitCollection)! } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement.swift index 8710dfa..3fc98fe 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement.swift @@ -27,9 +27,6 @@ public enum OpenMeasurement { func reduce(state: OpenMeasurement, action: Action) -> OpenMeasurement { switch action { case let action as ShowAd where state != .disabled: - guard action.isOpenMeasurementEnabled else { - return .disabled - } guard action.adVerifications.isEmpty == false else { return .inactive } @@ -41,9 +38,10 @@ func reduce(state: OpenMeasurement, action: Action) -> OpenMeasurement { case is OpenMeasurementDeactivated where state != .disabled: return .inactive - case is SkipAd, + case is DropAd, is AdError, is ShowContent, + is SkipAd, is AdPlaybackFailed, is SelectVideoAtIdx, is AdStartTimeout, diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement_Tracking.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement_Tracking.swift index 31a7e4e..4e988a4 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement_Tracking.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/OpenMeasurement_Tracking.swift @@ -22,6 +22,7 @@ extension OpenMeasurement { public let pause: () -> Void public let click: () -> Void public let volumeChange: (CGFloat) -> Void + public let skip: () -> Void public enum AdPosition { case preroll, midroll @@ -37,7 +38,8 @@ extension OpenMeasurement { resume: @escaping () -> Void, pause: @escaping () -> Void, click: @escaping () -> Void, - volumeChange: @escaping (CGFloat) -> Void) { + volumeChange: @escaping (CGFloat) -> Void, + skip: @escaping () -> Void) { self.loaded = loaded self.bufferFinish = bufferFinish self.bufferStart = bufferStart @@ -50,6 +52,7 @@ extension OpenMeasurement { self.pause = pause self.click = click self.volumeChange = volumeChange + self.skip = skip } } @@ -70,5 +73,6 @@ extension OpenMeasurement.VideoEvents { resume: {}, pause: {}, click: {}, - volumeChange: {_ in}) + volumeChange: {_ in}, + skip: {}) } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/PlaybackBuffering.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/PlaybackBuffering.swift index 8a2ead5..aa30da5 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/PlaybackBuffering.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/PlaybackBuffering.swift @@ -23,6 +23,7 @@ func reduce(state: PlaybackBuffering, action: Action) -> PlaybackBuffering { is AdMaxShowTimeout, is AdStartTimeout, is AdPlaybackFailed, + is SkipAd, is ShowContent: return PlaybackBuffering(content: state.content, ad: .inactive) case is SelectVideoAtIdx: diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/RendererDescriptor.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/RendererDescriptor.swift index 6c12ca1..f4d9ca4 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/RendererDescriptor.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/RendererDescriptor.swift @@ -3,7 +3,7 @@ import Foundation -public struct Descriptor: Equatable { +public struct Descriptor: Hashable { public let id: String public let version: String diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAd.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAd.swift new file mode 100644 index 0000000..b4433d3 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAd.swift @@ -0,0 +1,8 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public func skipAd() -> Action { + return SkipAd() +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAdAction.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAdAction.swift new file mode 100644 index 0000000..97c6a12 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/SkipAdAction.swift @@ -0,0 +1,6 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +struct SkipAd: Action {} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/VRMCoreResultSelection.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/VRMCoreResultSelection.swift new file mode 100644 index 0000000..d244623 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/VRMCoreResultSelection.swift @@ -0,0 +1,16 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. +import Foundation + +extension VRMCore { + struct SelectInlineItem: Action { + let item: Item + let inlineVAST: Ad.VASTModel + let date: Date + } + + struct SelectFinalResult: Action { + let item: Item + let inlineVAST: Ad.VASTModel + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/SkipAd.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/DropAd.swift similarity index 68% rename from tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/SkipAd.swift rename to tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/DropAd.swift index 833aff2..7d58e28 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/SkipAd.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/DropAd.swift @@ -3,7 +3,7 @@ import Foundation -public func skipAd(id: UUID) -> Action { - return SkipAd(id: id) +public func dropAd(id: UUID) -> Action { + return DropAd(id: id) } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreStartGroupActionCreator.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreGroupActionCreator.swift similarity index 55% rename from tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreStartGroupActionCreator.swift rename to tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreGroupActionCreator.swift index 1a88a1d..516fa6a 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreStartGroupActionCreator.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreGroupActionCreator.swift @@ -6,4 +6,12 @@ public extension VRMCore { public static func startGroupProcessing(group: Group) -> Action { return StartGroupProcessing(group: group) } + + public static func noGroupsToProcess(id: UUID) -> Action { + return NoGroupsToProcess(id: id) + } + + public static func finishCurrentGroupProcessing() -> Action { + return FinishCurrentGroupProcessing() + } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreItemSchedulingActionCreator.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreItemSchedulingActionCreator.swift new file mode 100644 index 0000000..49f6c82 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreItemSchedulingActionCreator.swift @@ -0,0 +1,37 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. +import Foundation + +public extension VRMCore { + public static func startItemParsing(originalItem: Item, vastXML: String, startDate: Date = Date()) -> Action { + return StartItemParsing(originalItem: originalItem, vastXML: vastXML, startDate: startDate) + } + + public static func completeItemParsing(originalItem: Item, vastModel: VRMCore.VASTModel) -> Action { + return CompleteItemParsing(originalItem: originalItem, vastModel: vastModel) + } + + public static func failedItemParse(originalItem: Item, finishDate: Date = Date()) -> Action { + return ParsingError(originalItem: originalItem, finishDate: finishDate) + } + + public static func startItemFetch(originalItem: Item, url: URL, startDate: Date = Date()) -> Action { + return StartItemFetch(originalItem: originalItem, url: url, startDate: startDate) + } + + public static func failedItemFetch(originalItem: Item, finishDate: Date = Date()) -> Action { + return FetchingError(originalItem: originalItem, finishDate: finishDate) + } + + public static func unwrapItem(item: Item, url: URL) -> Action { + return UnwrapItem(url: url, item: item) + } + + public static func tooManyIndirections(item: Item, finishDate: Date = Date()) -> Action { + return TooManyIndirections(item: item, finishDate: finishDate) + } + + public static func otherError(item: Item, finishDate: Date = Date()) -> Action { + return OtherError(item: item, finishDate: finishDate) + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreResultSelectionActionCreator.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreResultSelectionActionCreator.swift new file mode 100644 index 0000000..6372e9f --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMCoreResultSelectionActionCreator.swift @@ -0,0 +1,14 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public extension VRMCore { + public static func selectInlineVAST(item: Item, inlineVAST: Ad.VASTModel, date: Date = Date()) -> Action { + return SelectInlineItem(item: item, inlineVAST: inlineVAST, date: date) + } + + public static func selectFinalResult(item: Item, inlineVAST: Ad.VASTModel) -> Action { + return SelectFinalResult(item: item, inlineVAST: inlineVAST) + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMTimeoutActionsCreator.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMTimeoutActionsCreator.swift new file mode 100644 index 0000000..8b49cbe --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/New VRM Core/VRMTimeoutActionsCreator.swift @@ -0,0 +1,18 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +extension VRMCore { + public static func softTimeoutReached() -> Action { + return SoftTimeout() + } + + public static func hardTimeoutReached(items: [VRMCore.Item], date: Date = Date()) -> Action { + return HardTimeout(items: items, date: date) + } + + public static func maxSearchTimeoutReached(requestID: UUID) -> Action { + return MaxSearchTimeout(requestID: requestID) + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/PlayAd.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/PlayAd.swift index c266678..26a313b 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/PlayAd.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/PlayAd.swift @@ -3,33 +3,40 @@ import Foundation -public func playAd(model: Ad.VASTModel, id: UUID, isOpenMeasurementEnabled: Bool) -> Action { +public func showMP4Ad(creative: AdCreative.MP4, id: UUID) -> Action { + return ShowMP4Ad(creative: creative, id: id) +} +public func showVPAIDAd(creative: AdCreative.VPAID, id: UUID) -> Action { + return ShowVPAIDAd(creative: creative, id: id) +} + +public func playAd(model: Ad.VASTModel, id: UUID) -> Action { let adCreative: AdCreative? = { - if let mp4MediaFile = model.mediaFiles.first(where: { $0.type == .mp4 }) { + if let mediaFile = model.mp4MediaFiles.first { return AdCreative.mp4( - .init( - url: mp4MediaFile.url, + [.init( + url: mediaFile.url, clickthrough: model.clickthrough, pixels: model.pixels, id: model.id, - scalable: mp4MediaFile.scalable, - maintainAspectRatio: mp4MediaFile.maintainAspectRatio)) + width: mediaFile.width, + height: mediaFile.height, + scalable: mediaFile.scalable, + maintainAspectRatio: mediaFile.maintainAspectRatio)]) } - if let vpaidMediaFile = model.mediaFiles.first(where: { $0.type == .vpaid }) { + if let mediaFile = model.vpaidMediaFiles.first { return AdCreative.vpaid( - .init( - url: vpaidMediaFile.url, + [.init( + url: mediaFile.url, adParameters: model.adParameters, clickthrough: model.clickthrough, pixels: model.pixels, - id: model.id)) + id: model.id)]) } return nil }() - guard let creative = adCreative else { return SkipAd(id: id) } + guard let creative = adCreative else { return DropAd(id: id) } return ShowAd(creative: creative, id: id, - adVerifications: model.adVerifications, - isOpenMeasurementEnabled: isOpenMeasurementEnabled) + adVerifications: model.adVerifications) } - diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/VRMCoreItemSchedulingActionCreator.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/VRMCoreItemSchedulingActionCreator.swift deleted file mode 100644 index aee63b2..0000000 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/action creators/VRMCoreItemSchedulingActionCreator.swift +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright 2018, Oath Inc. -// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. -import Foundation - -public extension VRMCore { - public static func startItemParsing(originalItem: Item, vastXML: String, startDate: Date = Date()) -> Action { - return StartItemParsing(originalItem: originalItem, vastXML: vastXML, startDate: startDate) - } - - public static func completeItemParsing(originalItem: Item, vastModel: VRMCore.VASTModel, startDate: Date = Date()) -> Action { - return CompleteItemParsing(originalItem: originalItem, vastModel: vastModel, date: startDate ) - } - - public static func failedItemParse(originalItem: Item, parseCandidate: VRMParseItemQueue.Candidate) -> Action { - return ParsingError(originalItem: originalItem, parseCandidate: parseCandidate) - } - - public static func startItemFetch(originalItem: Item, url: URL, startDate: Date = Date()) -> Action { - return StartItemFetch(originalItem: originalItem, url: url, startDate: startDate) - } - - public static func failedItemFetch(originalItem: Item, fetchCandidate: VRMFetchItemQueue.Candidate) -> Action { - return FetchingError(originalItem: originalItem, fetchCandidate: fetchCandidate) - } -} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/SkipAdAction.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/DropAdAction.swift similarity index 87% rename from tutorials/sources/Pods/PlayerCore/PlayerCore/actions/SkipAdAction.swift rename to tutorials/sources/Pods/PlayerCore/PlayerCore/actions/DropAdAction.swift index d6b1130..9477239 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/SkipAdAction.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/DropAdAction.swift @@ -3,6 +3,6 @@ import Foundation -struct SkipAd: Action { +struct DropAd: Action { let id: UUID } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMCoreStartGroupProcessing.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMCoreGroupProcessing.swift similarity index 64% rename from tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMCoreStartGroupProcessing.swift rename to tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMCoreGroupProcessing.swift index 8aeb403..9123ea0 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMCoreStartGroupProcessing.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMCoreGroupProcessing.swift @@ -7,4 +7,11 @@ extension VRMCore { struct StartGroupProcessing: Action { let group: Group } + + struct NoGroupsToProcess: Action { + let id: UUID + } + + struct FinishCurrentGroupProcessing: Action { + } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMTimeoutActions.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMTimeoutActions.swift new file mode 100644 index 0000000..99435e8 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/New VRM Core/VRMTimeoutActions.swift @@ -0,0 +1,18 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +extension VRMCore { + struct SoftTimeout: Action { + } + + struct HardTimeout: Action { + let items: [VRMCore.Item] + let date: Date + } + + struct MaxSearchTimeout: Action { + let requestID: UUID + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/ShowAdAction.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/ShowAdAction.swift index 007457f..d8be8fa 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/ShowAdAction.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/ShowAdAction.swift @@ -7,5 +7,14 @@ struct ShowAd: Action { let creative: AdCreative let id: UUID let adVerifications: [Ad.VASTModel.AdVerification] - let isOpenMeasurementEnabled: Bool +} + +struct ShowMP4Ad: Action { + let creative: AdCreative.MP4 + let id: UUID +} + +struct ShowVPAIDAd: Action { + let creative: AdCreative.VPAID + let id: UUID } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/UpdateCameraAnglesAction.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/UpdateCameraAnglesAction.swift index c00285e..21aa280 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/UpdateCameraAnglesAction.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/UpdateCameraAnglesAction.swift @@ -1,6 +1,6 @@ // Copyright 2018, Oath Inc. // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. -struct UpdateCameraAngles: Action { +struct UpdateCameraAngles: Action, Hashable { let horizontal: Float let vertical: Float } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMCoreItemScheduling.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMCoreItemScheduling.swift index fbf23f5..bef4318 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMCoreItemScheduling.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMCoreItemScheduling.swift @@ -14,12 +14,11 @@ extension VRMCore { struct CompleteItemParsing: Action { let originalItem: Item let vastModel: VASTModel - let date: Date } struct ParsingError: Action { let originalItem: Item - let parseCandidate: VRMParseItemQueue.Candidate + let finishDate: Date } struct StartItemFetch: Action { @@ -30,6 +29,21 @@ extension VRMCore { struct FetchingError: Action { let originalItem: Item - let fetchCandidate: VRMFetchItemQueue.Candidate + let finishDate: Date + } + + struct UnwrapItem: Action { + let url: URL + let item: Item + } + + struct TooManyIndirections: Action { + let item: Item + let finishDate: Date + } + + struct OtherError: Action { + let item: Item + let finishDate: Date } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMItemActions.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMItemActions.swift index bd7d43e..24e2852 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMItemActions.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/actions/VRMItemActions.swift @@ -39,7 +39,7 @@ extension VRMItem { } } -public struct VRMMetaInfo { +public struct VRMMetaInfo: Hashable { public let engineType: String? public let ruleId: String? public let ruleCompanyId: String? @@ -61,17 +61,3 @@ public struct VRMMetaInfo { self.cpm = cpm } } - -extension VRMMetaInfo: Hashable { - public var hashValue: Int { - return vendor.hashValue - } - - public static func ==(lhs: VRMMetaInfo, rhs: VRMMetaInfo) -> Bool { - return lhs.engineType == rhs.engineType && - lhs.ruleId == rhs.ruleId && - lhs.ruleCompanyId == rhs.ruleCompanyId && - lhs.vendor == rhs.vendor && - lhs.name == rhs.name - } -} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Ad.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Ad.swift index 5043d93..bf81391 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Ad.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Ad.swift @@ -6,13 +6,13 @@ public struct Ad { public let playedAds: Set public let midrolls: [Midroll] - public struct Midroll { + public struct Midroll: Hashable { public let cuePoint: Int public let url: URL public let id: UUID } - public enum State { + public enum State: Hashable { case empty case play @@ -21,56 +21,99 @@ public struct Ad { return true } } - public var adCreative: AdCreative + public let mp4AdCreative: AdCreative.MP4? + public let vpaidAdCreative: AdCreative.VPAID? public let currentAd: State public let currentType: AdType } func reduce(state: Ad, action: Action) -> Ad { + + func markIDAsPlayed(id: UUID) -> Ad { + var playedAds = state.playedAds + playedAds.insert(id) + return Ad(playedAds: playedAds, + midrolls: state.midrolls, + mp4AdCreative: state.mp4AdCreative, + vpaidAdCreative: state.vpaidAdCreative, + currentAd: state.currentAd, + currentType: state.currentType) + } + switch action { case let action as AdRequest: return Ad(playedAds: state.playedAds, midrolls: state.midrolls, - adCreative: .none, + mp4AdCreative: nil, + vpaidAdCreative: nil, currentAd: state.currentAd, currentType: action.type) case let action as VRMCore.AdRequest: return Ad(playedAds: state.playedAds, midrolls: state.midrolls, - adCreative: .none, + mp4AdCreative: nil, + vpaidAdCreative: nil, currentAd: state.currentAd, currentType: action.type) case let action as ShowAd: + var playedAds = state.playedAds + playedAds.insert(action.id) + switch action.creative { + case .mp4(let creatives): + return Ad(playedAds: playedAds, + midrolls: state.midrolls, + mp4AdCreative: creatives.first, + vpaidAdCreative: nil, + currentAd: .play, + currentType: state.currentType) + case .vpaid(let creatives): + return Ad(playedAds: playedAds, + midrolls: state.midrolls, + mp4AdCreative: nil, + vpaidAdCreative: creatives.first, + currentAd: .play, + currentType: state.currentType) + case .none: + fatalError("AdCreative.none has to create SkipAd action") + } + + case let action as ShowMP4Ad: var playedAds = state.playedAds playedAds.insert(action.id) return Ad(playedAds: playedAds, midrolls: state.midrolls, - adCreative: action.creative, + mp4AdCreative: action.creative, + vpaidAdCreative: nil, currentAd: .play, currentType: state.currentType) - case let action as SkipAd: + case let action as ShowVPAIDAd: var playedAds = state.playedAds playedAds.insert(action.id) return Ad(playedAds: playedAds, midrolls: state.midrolls, - adCreative: state.adCreative, - currentAd: state.currentAd, + mp4AdCreative: nil, + vpaidAdCreative: action.creative, + currentAd: .play, currentType: state.currentType) + case let action as DropAd: + return markIDAsPlayed(id: action.id) + case let action as VRMCore.VRMResponseFetchFailed: - var playedAds = state.playedAds - playedAds.insert(action.requestID) - return Ad(playedAds: playedAds, - midrolls: state.midrolls, - adCreative: state.adCreative, - currentAd: state.currentAd, - currentType: state.currentType) + return markIDAsPlayed(id: action.requestID) + + case let action as VRMCore.NoGroupsToProcess: + return markIDAsPlayed(id: action.id) + + case let action as VRMCore.MaxSearchTimeout: + return markIDAsPlayed(id: action.requestID) case is ShowContent, + is SkipAd, is AdPlaybackFailed, is AdError, is AdStartTimeout, @@ -80,33 +123,19 @@ func reduce(state: Ad, action: Action) -> Ad { is AdNotSupported: return Ad(playedAds: state.playedAds, midrolls: state.midrolls, - adCreative: state.adCreative, + mp4AdCreative: state.mp4AdCreative, + vpaidAdCreative: state.vpaidAdCreative, currentAd: .empty, currentType: state.currentType) case let action as SelectVideoAtIdx: return Ad(playedAds: [], midrolls: action.midrolls, - adCreative: .none, + mp4AdCreative: nil, + vpaidAdCreative: nil, currentAd: .empty, currentType: action.hasPrerollAds ? .preroll : .midroll) default: return state } } - -extension Ad.Midroll: Equatable { - public static func ==(lhs: Ad.Midroll, rhs: Ad.Midroll) -> Bool { - return lhs.cuePoint == rhs.cuePoint - && lhs.url == rhs.url - && lhs.id == rhs.id - } - - public static func >(left: Ad.Midroll, right: Ad.Midroll) -> Bool { - return left.cuePoint > right.cuePoint - } - - public static func <(left: Ad.Midroll, right: Ad.Midroll) -> Bool { - return left.cuePoint < right.cuePoint - } -} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdCreative.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdCreative.swift index fca6020..67523aa 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdCreative.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdCreative.swift @@ -2,43 +2,55 @@ // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. import Foundation -public enum AdCreative { - case mp4(MP4), vpaid(VPAID), none +public enum AdCreative: Hashable { + case mp4([MP4]), vpaid([VPAID]), none - public struct MP4 { + public struct MP4: Hashable { + public let internalID: UUID public let url: URL public let clickthrough: URL? public let pixels: AdPixels public let id: String? + public let width: Int + public let height: Int public let scalable: Bool public let maintainAspectRatio: Bool - public init(url: URL, - clickthrough: URL?, - pixels: AdPixels, - id: String?, - scalable: Bool, - maintainAspectRatio: Bool) { + public init( internalID: UUID = UUID(), + url: URL, + clickthrough: URL?, + pixels: AdPixels, + id: String?, + width: Int, + height: Int, + scalable: Bool, + maintainAspectRatio: Bool) { + self.internalID = internalID self.url = url self.clickthrough = clickthrough self.pixels = pixels self.id = id + self.width = width + self.height = height self.scalable = scalable self.maintainAspectRatio = maintainAspectRatio } } - public struct VPAID { + public struct VPAID: Hashable { + public let internalID: UUID public let url: URL public let adParameters: String? public let clickthrough: URL? public let pixels: AdPixels public let id: String? - public init(url: URL, + public init(internalID: UUID = UUID(), + url: URL, adParameters: String?, clickthrough: URL?, pixels: AdPixels, id: String?) { + self.internalID = internalID self.url = url self.adParameters = adParameters self.clickthrough = clickthrough @@ -47,3 +59,41 @@ public enum AdCreative { } } } + +func reduce(state: AdCreative, action: Action) -> AdCreative { + switch action { + case let action as VRMCore.SelectFinalResult: + let mp4AdCreatives: [AdCreative.MP4] = action.inlineVAST.mp4MediaFiles.compactMap { + return .init( + url: $0.url, + clickthrough: action.inlineVAST.clickthrough, + pixels: action.inlineVAST.pixels, + id: action.inlineVAST.id, + width: $0.width, + height: $0.height, + scalable: $0.scalable, + maintainAspectRatio: $0.maintainAspectRatio) + } + guard mp4AdCreatives.isEmpty else { + return .mp4(mp4AdCreatives) + } + let vpaidAdCreatives: [AdCreative.VPAID] = action.inlineVAST.vpaidMediaFiles.compactMap { + return .init( + url: $0.url, + adParameters: action.inlineVAST.adParameters, + clickthrough: action.inlineVAST.clickthrough, + pixels: action.inlineVAST.pixels, + id: action.inlineVAST.id) + } + guard vpaidAdCreatives.isEmpty else { + return .vpaid(vpaidAdCreatives) + } + return .none + case let action as ShowAd: + return action.creative + case is VRMCore.AdRequest: + return .none + default: return state + } +} + diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdFinishTracker.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdFinishTracker.swift index fa87580..6953c70 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdFinishTracker.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdFinishTracker.swift @@ -3,21 +3,27 @@ import Foundation -public struct AdFinishTracker { - public let isFinished: Bool +public enum AdFinishTracker { + case forceFinished + case successfullyCompleted + case skipped + case unknown } func reduce(state: AdFinishTracker, action: Action) -> AdFinishTracker { switch action { - case is ShowAd, is AdMaxShowTimeout: - return AdFinishTracker(isFinished: false) - - case is ShowContent, is SkipAd, is VRMCore.VRMResponseFetchFailed, + case is AdRequest: + return .unknown + case is DropAd, is VRMCore.VRMResponseFetchFailed, is AdSkipped, is AdStopped, - is AdStartTimeout: - return AdFinishTracker(isFinished: true) - + is AdStartTimeout, is AdMaxShowTimeout, + is VRMCore.NoGroupsToProcess, is VRMCore.MaxSearchTimeout: + return .forceFinished + case is ShowContent: + return .successfullyCompleted + case is SkipAd: + return .skipped default: return state } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdKill.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdKill.swift index b939ff4..89c7e75 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdKill.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdKill.swift @@ -14,6 +14,7 @@ func reduce(state: AdKill, action: Action) -> AdKill { case is AdMaxShowTimeout: return .maxShowTime case is ShowContent, + is SkipAd, is AdPlaybackFailed, is AdError, is AdStopped, diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdPixels.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdPixels.swift index 9f2d225..41932a7 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdPixels.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdPixels.swift @@ -4,7 +4,7 @@ import Foundation -public struct AdPixels: Equatable { +public struct AdPixels: Hashable { public typealias URLs = [URL] public var impression: URLs public var error: URLs @@ -25,6 +25,7 @@ public struct AdPixels: Equatable { public var close: URLs public var closeLinear: URLs public var collapse: URLs + public var progress: [Progress] public init(impression: URLs = [], error: URLs = [], @@ -44,7 +45,8 @@ public struct AdPixels: Equatable { acceptInvitationLinear: URLs = [], close: URLs = [], closeLinear: URLs = [], - collapse: URLs = []) { + collapse: URLs = [], + progress: [Progress] = []) { self.impression = impression self.error = error self.clickTracking = clickTracking @@ -64,5 +66,15 @@ public struct AdPixels: Equatable { self.close = close self.closeLinear = closeLinear self.collapse = collapse + self.progress = progress + } + public struct Progress: Hashable { + public let url: URL + public let offset: Ad.VASTModel.VASTOffset + + public init(url: URL, offset: Ad.VASTModel.VASTOffset) { + self.url = url + self.offset = offset + } } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVASTModel.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVASTModel.swift index 080e95d..61cfc46 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVASTModel.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVASTModel.swift @@ -3,38 +3,56 @@ import Foundation extension Ad { - public struct VASTModel: Equatable { + public struct VASTModel: Hashable { public let adVerifications: [AdVerification] - public let mediaFiles: [MediaFile] + public let mp4MediaFiles: [MP4MediaFile] + public let vpaidMediaFiles: [VPAIDMediaFile] + public let skipOffset: VASTOffset public let clickthrough: URL? public let adParameters: String? public let pixels: AdPixels public let id: String? - public struct MediaFile: Equatable { + public struct MP4MediaFile: Hashable { public let url: URL - public let type: VideoType public let width: Int public let height: Int public let scalable: Bool public let maintainAspectRatio: Bool public init(url: URL, - type: VideoType, width: Int, height: Int, scalable: Bool, maintainAspectRatio: Bool) { self.url = url - self.type = type self.width = width self.height = height self.scalable = scalable self.maintainAspectRatio = maintainAspectRatio } - public enum VideoType { case mp4, vpaid } } - public struct AdVerification: Equatable { + public struct VPAIDMediaFile: Hashable { + public let url: URL + public let scalable: Bool + public let maintainAspectRatio: Bool + + public init(url: URL, + scalable: Bool, + maintainAspectRatio: Bool) { + self.url = url + self.scalable = scalable + self.maintainAspectRatio = maintainAspectRatio + } + } + + public enum VASTOffset: Hashable { + case none + case time(Int) + case percentage(Int) + } + + public struct AdVerification: Hashable { public let vendorKey: String? public let javaScriptResource: URL public let verificationParameters: URL? @@ -51,13 +69,17 @@ extension Ad { } } public init(adVerifications: [AdVerification], - mediaFiles: [MediaFile], + mp4MediaFiles: [MP4MediaFile], + vpaidMediaFiles: [VPAIDMediaFile], + skipOffset: VASTOffset, clickthrough: URL?, adParameters: String?, pixels: AdPixels, id: String?) { self.adVerifications = adVerifications - self.mediaFiles = mediaFiles + self.mp4MediaFiles = mp4MediaFiles + self.vpaidMediaFiles = vpaidMediaFiles + self.skipOffset = skipOffset self.clickthrough = clickthrough self.adParameters = adParameters self.pixels = pixels diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager.swift index 6913f72..23205ef 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager.swift @@ -64,16 +64,16 @@ public struct AdVRMManager { } } - public enum Timeout { case beforeSoft, afterSoft, afterHard } + public enum Timeout: Hashable { case beforeSoft, afterSoft, afterHard } - public struct StartItem { + public struct StartItem: Hashable { public let info: VRMMetaInfo public let itemID: UUID public let url: URL public let requestDate: Date } - public struct CompleteItem { + public struct CompleteItem: Hashable { public let adId: String? public let itemID: UUID public let info: VRMMetaInfo @@ -83,7 +83,7 @@ public struct AdVRMManager { public let requestTimeoutBarrier: Int } - public struct TimeoutItem { + public struct TimeoutItem: Hashable { public let info: VRMMetaInfo public let itemID: UUID public let transactionID: String? @@ -121,7 +121,7 @@ func reduce(state: AdVRMManager, action: Action) -> AdVRMManager { state.request.state = .failed(.init(transactionID: finish.transactionID, slot: finish.slot)) - case (is SkipAd, .finish(let finish)): + case (is DropAd, .finish(let finish)): state.request.state = .skipped(.init(transactionID: finish.transactionID, slot: finish.slot, startItems: finish.startItems, diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager_Hashable.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager_Hashable.swift index 402a243..d0dac96 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager_Hashable.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/AdVRMManager_Hashable.swift @@ -3,40 +3,6 @@ import Foundation -extension AdVRMManager.StartItem: Hashable { - public static func ==(lhs: AdVRMManager.StartItem, rhs: AdVRMManager.StartItem) -> Bool { - return lhs.itemID == rhs.itemID && - lhs.url == rhs.url && - lhs.requestDate == rhs.requestDate - } - - public var hashValue: Int { - return itemID.hashValue - } -} - -extension AdVRMManager.CompleteItem: Hashable { - public static func ==(lhs: AdVRMManager.CompleteItem, rhs: AdVRMManager.CompleteItem) -> Bool { - return lhs.itemID == rhs.itemID && - lhs.responseTime == rhs.responseTime - } - - public var hashValue: Int { - return itemID.hashValue ^ responseTime.hashValue - } -} - -extension AdVRMManager.TimeoutItem: Hashable { - public static func ==(lhs: AdVRMManager.TimeoutItem, rhs: AdVRMManager.TimeoutItem) -> Bool { - return lhs.itemID == rhs.itemID && - lhs.responseTime == rhs.responseTime - } - - public var hashValue: Int { - return itemID.hashValue - } -} - extension AdVRMManager.OtherErrorItem: Hashable { public static func ==(lhs: AdVRMManager.OtherErrorItem, rhs: AdVRMManager.OtherErrorItem) -> Bool { return lhs.itemID == rhs.itemID && diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/CurrentTime.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/CurrentTime.swift index 34af414..ee80acf 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/CurrentTime.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/CurrentTime.swift @@ -67,7 +67,7 @@ func reduce(state: CurrentTime, action: Action) -> CurrentTime { isSeekInProgress: false), ad: CMTime.zero) - case (is ShowAd, _): + case (is ShowMP4Ad, _), (is ShowVPAIDAd, _), (is ShowAd, _): return CurrentTime(content: state.content, ad: CMTime.zero) default: return state diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Duration.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Duration.swift index 26a90c3..eeaa96b 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Duration.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Duration.swift @@ -18,13 +18,17 @@ func reduce(state: Duration, action: Action) -> Duration { case let action as UpdateContentDuration: return Duration(ad: state.ad, content: action.newDuration) - case is SkipAd, + case is DropAd, is ShowContent, + is SkipAd, is AdStopped, is AdStartTimeout, is AdMaxShowTimeout, is AdError, is AdSkipped, + is VRMCore.NoGroupsToProcess, + is VRMCore.MaxSearchTimeout, + is VRMCore.VRMResponseFetchFailed, is AdNotSupported: return Duration(ad: nil, content: state.content) diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/InteractiveSeeking.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/InteractiveSeeking.swift index 0ff9ca2..e74c021 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/InteractiveSeeking.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/InteractiveSeeking.swift @@ -9,8 +9,8 @@ func reduce(state: InteractiveSeeking, action: Action) -> InteractiveSeeking { case is StartInteractiveSeeking: return InteractiveSeeking(isSeekingInProgress: true) case is StopInteractiveSeeking: return InteractiveSeeking(isSeekingInProgress: false) case is SelectVideoAtIdx: return InteractiveSeeking(isSeekingInProgress: false) - case is ShowAd: return InteractiveSeeking(isSeekingInProgress: false) - case is ShowContent, is SkipAd: return InteractiveSeeking(isSeekingInProgress: false) + case is ShowMP4Ad, is ShowVPAIDAd, is ShowAd: return InteractiveSeeking(isSeekingInProgress: false) + case is ShowContent, is DropAd: return InteractiveSeeking(isSeekingInProgress: false) default: return state } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/LoadedTimeRanges.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/LoadedTimeRanges.swift index 69a21b4..5cc2903 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/LoadedTimeRanges.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/LoadedTimeRanges.swift @@ -18,7 +18,7 @@ func reduce(state: LoadedTimeRanges, action: Action) -> LoadedTimeRanges { case is ShowContent: return LoadedTimeRanges(content: state.content, ad: state.ad) - case is ShowAd: + case is ShowMP4Ad, is ShowVPAIDAd, is ShowAd: return LoadedTimeRanges(content: state.content, ad: []) case is SelectVideoAtIdx: diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Mute.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Mute.swift index edaf263..dae9eb6 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Mute.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Mute.swift @@ -16,7 +16,7 @@ func reduce(state: Mute, action: Action) -> Mute { case let action as AdVolumeChange: let isVPAIDMuted = action.volume == 0 return Mute(player: state.player, vpaid: isVPAIDMuted) - case is ShowAd: + case is ShowMP4Ad, is ShowVPAIDAd, is ShowAd: return Mute(player: state.player, vpaid: state.player) default: return state } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/ScheduledVRMItems.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/ScheduledVRMItems.swift index eb3464b..29628c8 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/ScheduledVRMItems.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/ScheduledVRMItems.swift @@ -4,16 +4,32 @@ import Foundation public struct ScheduledVRMItems { - static let initial = ScheduledVRMItems(items: []) + static let initial = ScheduledVRMItems(items: [:]) - public let items: Set + public struct Candidate: Hashable { + public let id = VRMCore.ID() + public let source: VRMCore.Item.Source + } + + public var items: [VRMCore.Item: Set] } func reduce(state: ScheduledVRMItems, action: Action) -> ScheduledVRMItems { switch action { case let startGroupAction as VRMCore.StartGroupProcessing: - let allScheduledItems = state.items.union(startGroupAction.group.items) - return ScheduledVRMItems(items: allScheduledItems) + var newState = state + startGroupAction.group.items.forEach { item in + newState.items[item] = Set(arrayLiteral: .init(source:item.source)) + } + return newState + + case let unwrapAction as VRMCore.UnwrapItem: + var newState = state + let candidate = ScheduledVRMItems.Candidate(source: .url(unwrapAction.url)) + newState.items[unwrapAction.item]?.insert(candidate) + return newState + case is VRMCore.AdRequest: + return .initial default: return state } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMCurrentGroup.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMCurrentGroup.swift index b783798..be65785 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMCurrentGroup.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMCurrentGroup.swift @@ -12,6 +12,10 @@ func reduce(state: VRMCurrentGroup, action: Action) -> VRMCurrentGroup { switch action { case let currentGroupAction as VRMCore.StartGroupProcessing: return VRMCurrentGroup(currentGroup: currentGroupAction.group) + case is VRMCore.FinishCurrentGroupProcessing: + return VRMCurrentGroup(currentGroup: nil) + case is VRMCore.AdRequest: + return .initial default: return state } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchItemQueue.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchItemQueue.swift index 50bf552..09b31c9 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchItemQueue.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchItemQueue.swift @@ -8,8 +8,8 @@ public struct VRMFetchItemQueue { static let initial = VRMFetchItemQueue(candidates: []) public struct Candidate: Hashable { + public let id = VRMCore.ID() public let parentItem: VRMCore.Item - public let id: VRMCore.ID public let url: URL } @@ -17,14 +17,27 @@ public struct VRMFetchItemQueue { } func reduce(state: VRMFetchItemQueue, action: Action) -> VRMFetchItemQueue { + func remove(item: VRMCore.Item ) -> VRMFetchItemQueue { + let filteredCandidates = state.candidates + .filter { $0.parentItem != item } + return VRMFetchItemQueue(candidates: Set(filteredCandidates)) + } + switch action { case let fetchAction as VRMCore.StartItemFetch: let candidate = VRMFetchItemQueue.Candidate(parentItem: fetchAction.originalItem, - id: VRMCore.ID(), - url: fetchAction.url) + url: fetchAction.url) var newState = state newState.candidates.insert(candidate) return newState + case let parsingAction as VRMCore.StartItemParsing: + return remove(item: parsingAction.originalItem) + case let fetchingError as VRMCore.FetchingError: + return remove(item: fetchingError.originalItem) + + case is VRMCore.AdRequest, + is VRMCore.HardTimeout: + return .initial default: return state } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchingError.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchingError.swift new file mode 100644 index 0000000..20edaf8 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFetchingError.swift @@ -0,0 +1,19 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMFetchingError { + public let erroredItems: Set +} + +func reduce(state: VRMFetchingError, action: Action) -> VRMFetchingError { + switch action { + case let fetchError as VRMCore.FetchingError: + return VRMFetchingError(erroredItems: state.erroredItems.union([fetchError.originalItem])) + case is VRMCore.AdRequest: + return VRMFetchingError(erroredItems:[]) + default: + return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFinalResult.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFinalResult.swift new file mode 100644 index 0000000..f65e743 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMFinalResult.swift @@ -0,0 +1,40 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public enum VRMFinalResult: Equatable { + static let initial = VRMFinalResult.empty + + case empty + case selected(result: VRMCore.Result) + case failed(result: VRMCore.Result) + + public var successResult: VRMCore.Result? { + guard case let .selected(result) = self else { return nil } + return result + } + + public var failedResult: VRMCore.Result? { + guard case let .failed(result) = self else { return nil } + return result + } +} + +func reduce(state: VRMFinalResult, action: Action) -> VRMFinalResult { + switch action { + case let finalResult as VRMCore.SelectFinalResult: + return .selected( result: .init(item: finalResult.item, + inlineVAST: finalResult.inlineVAST)) + case is AdPlaybackFailed, + is AdStartTimeout, + is AdError, + is AdNotSupported: + guard let result = state.successResult else { return state } + return .failed(result: result) + + case is VRMCore.AdRequest: + return .empty + default: return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMItemResponseTime.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMItemResponseTime.swift new file mode 100644 index 0000000..ede79e8 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMItemResponseTime.swift @@ -0,0 +1,83 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMItemResponseTime { + typealias Container = [VRMCore.Item: TimeRange] + + static let initial = VRMItemResponseTime(timeRangeContainer: [:]) + + public struct TimeRange: Hashable { + public let startAt: Date + public let finishAt: Date? + } + + public let timeRangeContainer: [VRMCore.Item: TimeRange] +} + +func reduce(state: VRMItemResponseTime, action: Action) -> VRMItemResponseTime { + + func updateFinishTime(for item: VRMCore.Item, + with date: Date, + in container: VRMItemResponseTime.Container) -> VRMItemResponseTime { + guard let range = container[item] else { + fatalError("get finish error action for item which wasn't started") + } + + var newTimeContainer = container + newTimeContainer[item] = .init(startAt: range.startAt, finishAt: date) + return VRMItemResponseTime(timeRangeContainer: newTimeContainer) + } + + func updateStartTime(for item: VRMCore.Item, + with date: Date) -> VRMItemResponseTime { + var newTimeContainer = state.timeRangeContainer + newTimeContainer[item] = .init(startAt: date, finishAt: nil) + return VRMItemResponseTime(timeRangeContainer: newTimeContainer ) + } + + switch action { + case let failedFetch as VRMCore.FetchingError: + return updateFinishTime(for: failedFetch.originalItem, + with: failedFetch.finishDate, + in: state.timeRangeContainer) + + case let failedParse as VRMCore.ParsingError: + return updateFinishTime(for: failedParse.originalItem, + with: failedParse.finishDate, + in: state.timeRangeContainer) + + case let indirectionError as VRMCore.TooManyIndirections: + return updateFinishTime(for: indirectionError.item, + with: indirectionError.finishDate, + in: state.timeRangeContainer) + + case let selectInlineVAST as VRMCore.SelectInlineItem: + return updateFinishTime(for: selectInlineVAST.item, + with: selectInlineVAST.date, + in: state.timeRangeContainer) + + case let otherError as VRMCore.OtherError: + return updateFinishTime(for: otherError.item, + with: otherError.finishDate, + in: state.timeRangeContainer) + + case let startFetching as VRMCore.StartItemFetch: + return updateStartTime(for: startFetching.originalItem, + with: startFetching.startDate) + + case let startParsing as VRMCore.StartItemParsing where state.timeRangeContainer[startParsing.originalItem] == nil: + return updateStartTime(for: startParsing.originalItem, + with: startParsing.startDate) + + case let hardTimeout as VRMCore.HardTimeout: + return hardTimeout.items.reduce(state) { result, item in + updateFinishTime(for: item, + with: hardTimeout.date, + in: result.timeRangeContainer) + } + + default: return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMMaxAdSearchTimeout.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMMaxAdSearchTimeout.swift new file mode 100644 index 0000000..cf31895 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMMaxAdSearchTimeout.swift @@ -0,0 +1,20 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMMaxAdSearchTimeout { + static let initial = VRMMaxAdSearchTimeout(isReached: false) + + public let isReached: Bool +} + +func reduce(state: VRMMaxAdSearchTimeout, action: Action) -> VRMMaxAdSearchTimeout { + switch action { + case is VRMCore.MaxSearchTimeout: + return VRMMaxAdSearchTimeout(isReached: true) + case is VRMCore.AdRequest: + return VRMMaxAdSearchTimeout(isReached: false) + default: return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMOtherError.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMOtherError.swift new file mode 100644 index 0000000..ecdbd44 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMOtherError.swift @@ -0,0 +1,19 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMOtherError { + public let erroredItems: Set +} + +func reduce(state: VRMOtherError, action: Action) -> VRMOtherError { + switch action { + case let otherError as VRMCore.OtherError: + return VRMOtherError(erroredItems: state.erroredItems.union([otherError.item])) + case is VRMCore.AdRequest: + return VRMOtherError(erroredItems:[]) + default: + return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParseItemQueue.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParseItemQueue.swift index 62d890d..c1ff483 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParseItemQueue.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParseItemQueue.swift @@ -7,8 +7,8 @@ public struct VRMParseItemQueue { static let initial = VRMParseItemQueue(candidates: []) public struct Candidate: Hashable { + public let id = VRMCore.ID() public let parentItem: VRMCore.Item - public let id: VRMCore.ID public let vastXML: String } @@ -16,14 +16,25 @@ public struct VRMParseItemQueue { } func reduce(state: VRMParseItemQueue, action: Action) -> VRMParseItemQueue { + func remove(item: VRMCore.Item ) -> VRMParseItemQueue { + let filteredCandidates = state.candidates + .filter { $0.parentItem != item } + return VRMParseItemQueue(candidates: Set(filteredCandidates)) + } + switch action { case let parseAction as VRMCore.StartItemParsing: let candidate = VRMParseItemQueue.Candidate(parentItem: parseAction.originalItem, - id: VRMCore.ID(), vastXML: parseAction.vastXML) var newState = state newState.candidates.insert(candidate) return newState + case let finishParsing as VRMCore.CompleteItemParsing: + return remove(item: finishParsing.originalItem) + case let failedParsing as VRMCore.ParsingError: + return remove(item: failedParsing.originalItem) + case is VRMCore.AdRequest: + return .initial default: return state } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingError.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingError.swift new file mode 100644 index 0000000..85d4e9d --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingError.swift @@ -0,0 +1,19 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMParsingError { + public let erroredItems: Set +} + +func reduce(state: VRMParsingError, action: Action) -> VRMParsingError { + switch action { + case let parsingError as VRMCore.ParsingError: + return VRMParsingError(erroredItems: state.erroredItems.union([parsingError.originalItem])) + case is VRMCore.AdRequest: + return VRMParsingError(erroredItems:[]) + default: + return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingResult.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingResult.swift index aef752a..89bb96e 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingResult.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMParsingResult.swift @@ -6,7 +6,12 @@ import Foundation public struct VRMParsingResult { static let initial = VRMParsingResult(parsedVASTs: [:]) - var parsedVASTs: [VRMCore.Item: VRMCore.VASTModel] + public struct Result: Hashable { + public let id = VRMCore.ID() + public let vastModel: VRMCore.VASTModel + } + + public var parsedVASTs: [VRMCore.Item: Result] } func reduce(state: VRMParsingResult, action: Action) -> VRMParsingResult { @@ -15,25 +20,27 @@ func reduce(state: VRMParsingResult, action: Action) -> VRMParsingResult { case let finishParsing as VRMCore.CompleteItemParsing: var newState = state - if let currentVASTModel = newState.parsedVASTs[finishParsing.originalItem] { + if let currentVASTModel = newState.parsedVASTs[finishParsing.originalItem]?.vastModel { switch(currentVASTModel, finishParsing.vastModel) { case let (.wrapper(currentWrapper), .wrapper(processedWrapper)): let mergedWrapper = processedWrapper.merge(with: currentWrapper.pixels, and: currentWrapper.adVerifications) - newState.parsedVASTs[finishParsing.originalItem] = .wrapper(mergedWrapper) + newState.parsedVASTs[finishParsing.originalItem] = .init(vastModel: .wrapper(mergedWrapper)) return newState case let (.wrapper(currentWrapper), .inline(resultModel)): let mergedResult = resultModel.merge(with: currentWrapper.pixels, and: currentWrapper.adVerifications) - newState.parsedVASTs[finishParsing.originalItem] = .inline(mergedResult) + newState.parsedVASTs[finishParsing.originalItem] = .init(vastModel: .inline(mergedResult)) case (.inline, _): fatalError("Tried to complete already completed item") } } else { - newState.parsedVASTs[finishParsing.originalItem] = finishParsing.vastModel + newState.parsedVASTs[finishParsing.originalItem] = .init(vastModel: finishParsing.vastModel) } return newState + case is VRMCore.AdRequest: + return .initial default: return state } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingResult.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingResult.swift new file mode 100644 index 0000000..6590614 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingResult.swift @@ -0,0 +1,26 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMProcessingResult { + static let initial = VRMProcessingResult(processedAds: []) + + public let processedAds: Set +} + +func reduce(state: VRMProcessingResult, action: Action) -> VRMProcessingResult { + + switch action { + case let selectResult as VRMCore.SelectInlineItem: + let result = VRMCore.Result(item: selectResult.item, + inlineVAST: selectResult.inlineVAST) + + return VRMProcessingResult(processedAds: state.processedAds.union([result])) + case is VRMCore.StartGroupProcessing, + is VRMCore.AdRequest: + return VRMProcessingResult(processedAds: []) + default: + return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingTimeout.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingTimeout.swift new file mode 100644 index 0000000..06dcaa6 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMProcessingTimeout.swift @@ -0,0 +1,24 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public enum VRMProcessingTimeout { + case none + case soft + case hard +} + +func reduce(state: VRMProcessingTimeout, action: Action) -> VRMProcessingTimeout { + switch action { + case is VRMCore.StartGroupProcessing, + is VRMCore.AdRequest: + return .none + case is VRMCore.SoftTimeout: + return .soft + case is VRMCore.HardTimeout: + return .hard + default: + return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRedirectError.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRedirectError.swift new file mode 100644 index 0000000..deeeb37 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRedirectError.swift @@ -0,0 +1,19 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMRedirectError { + public let erroredItems: Set +} + +func reduce(state: VRMRedirectError, action: Action) -> VRMRedirectError { + switch action { + case let redirectError as VRMCore.TooManyIndirections: + return VRMRedirectError(erroredItems: state.erroredItems.union([redirectError.item])) + case is VRMCore.AdRequest: + return VRMRedirectError(erroredItems:[]) + default: + return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRequestStatus.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRequestStatus.swift index 772abc7..9ac8270 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRequestStatus.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMRequestStatus.swift @@ -3,22 +3,22 @@ import Foundation public struct VRMRequestStatus { - static let initial = VRMRequestStatus(request: .none, requestsFired: 0) + static let initial = VRMRequestStatus(request: nil, requestsFired: 0) - public enum Request { - case none - case request(url: URL, id: UUID) + public struct Request { + public let url: URL + public let id: UUID } - public let request: Request + public let request: Request? public let requestsFired: Int } func reduce(state: VRMRequestStatus, action: Action) -> VRMRequestStatus { switch action { case let adRequest as VRMCore.AdRequest: - return VRMRequestStatus(request: .request(url: adRequest.url, - id: adRequest.id), + return VRMRequestStatus(request: .init(url: adRequest.url, + id: adRequest.id), requestsFired: state.requestsFired+1) default: return state diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMResponse.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMResponse.swift index 827470b..f753d1a 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMResponse.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMResponse.swift @@ -15,6 +15,8 @@ func reduce(state: VRMResponse?, action: Action) -> VRMResponse? { return VRMResponse(transactionId: adResponse.transactionId, slot: adResponse.slot, groups: adResponse.groups) + case is VRMCore.AdRequest: + return nil default: return state } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTimeoutError.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTimeoutError.swift new file mode 100644 index 0000000..88e905c --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTimeoutError.swift @@ -0,0 +1,19 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +public struct VRMTimeoutError { + public let erroredItems: Set +} + +func reduce(state: VRMTimeoutError, action: Action) -> VRMTimeoutError { + switch action { + case let timeoutError as VRMCore.HardTimeout: + return VRMTimeoutError(erroredItems: state.erroredItems.union(timeoutError.items)) + case is VRMCore.AdRequest: + return VRMTimeoutError(erroredItems:[]) + default: + return state + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTopPriorityItem.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTopPriorityItem.swift index 2d0fa5a..486d3c4 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTopPriorityItem.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/New VRM Core/VRMTopPriorityItem.swift @@ -12,6 +12,10 @@ func reduce(state: VRMTopPriorityItem, action: Action) -> VRMTopPriorityItem { switch action { case let startGroupAction as VRMCore.StartGroupProcessing: return VRMTopPriorityItem(item: startGroupAction.group.items.first) + case is VRMCore.SoftTimeout: + return VRMTopPriorityItem(item: nil) + case is VRMCore.AdRequest: + return .initial default: return state } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/PlaybackStatus.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/PlaybackStatus.swift index 9edced1..2dce518 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/PlaybackStatus.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/PlaybackStatus.swift @@ -2,7 +2,7 @@ // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. import Foundation -public enum Status { +public enum Status: Hashable { case unknown case ready case errored(NSError) @@ -51,15 +51,3 @@ public func reduce(state: PlaybackStatus, action: Action) -> PlaybackStatus { ad: reduceAd(state: state.ad, action: action) ) } - -extension Status: Equatable { - public static func ==(lhs: Status, rhs: Status) -> Bool { - switch (lhs, rhs) { - case (.unknown, .unknown): return true - case (.ready, .ready): return true - case (.errored(let lError), .errored(let rError)): - return lError == rError - default: return false - } - } -} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Rate.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Rate.swift index b867443..6e28dd2 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Rate.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/Rate.swift @@ -55,7 +55,7 @@ func reduce(state: Rate, action: Action) -> Rate { isAttachedToViewPort: state.isAttachedToViewPort, currentKind: state.currentKind) - case (is ShowContent, .ad), (is SkipAd, .ad): + case (is ShowContent, .ad), (is DropAd, .ad): return Rate(contentRate: .init(player: true, stream: state.contentRate.stream), adRate: .init(player: false, @@ -63,7 +63,7 @@ func reduce(state: Rate, action: Action) -> Rate { isAttachedToViewPort: state.isAttachedToViewPort, currentKind: .content) - case (is ShowAd, .content): + case (is ShowMP4Ad, .content), (is ShowVPAIDAd, .content), (is ShowAd, .content): return Rate(contentRate: .init(player: false, stream: state.contentRate.stream), adRate: .init(player: true, @@ -169,6 +169,7 @@ func reduce(state: Rate, action: Action) -> Rate { (is AdStartTimeout, .ad), (is AdMaxShowTimeout, .ad), (is AdNotSupported, .ad), + (is SkipAd, .ad), (is AdError, .ad): return Rate(contentRate: .init(player: true, stream: state.contentRate.stream), diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/State.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/State.swift index 4e0f54f..e0bd35e 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/State.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/State.swift @@ -1,12 +1,14 @@ // Copyright 2018, Oath Inc. // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. public struct State { + public let timeoutBarrier: Double public let playlist: Playlist public let rate: Rate public let duration: Duration public let ad: Ad public let adKill: AdKill public let adMaxShowTime: TimerSession + public let selectedAdCreative: AdCreative public let openMeasurement: OpenMeasurement public let serviceScript: OpenMeasurementServiceScript public let currentTime: CurrentTime @@ -41,6 +43,16 @@ public struct State { public let vrmFetchItemsQueue: VRMFetchItemQueue public let vrmParseItemsQueue: VRMParseItemQueue public let vrmParsingResult: VRMParsingResult + public let vrmProcessingResult: VRMProcessingResult + public let vrmProcessingTimeout: VRMProcessingTimeout + public let vrmMaxAdSearchTimeout: VRMMaxAdSearchTimeout + public let vrmFetchingError: VRMFetchingError + public let vrmParsingError: VRMParsingError + public let vrmTimeoutError: VRMTimeoutError + public let vrmRedirectError: VRMRedirectError + public let vrmOtherError: VRMOtherError + public let vrmFinalResult: VRMFinalResult + public let vrmItemResponseTime: VRMItemResponseTime } @@ -55,8 +67,10 @@ extension State { hasPrerollAds: Bool, midrolls: [Midroll], timeoutBarrier: Double, - maxAdDuration: Int) { + maxAdDuration: Int, + isOpenMeasurementEnabled: Bool) { self = State( + timeoutBarrier: timeoutBarrier, playlist: Playlist(currentIndex: 0), rate: Rate(contentRate: Rate.Value(player: isPlaybackInitiated, stream: false), adRate: Rate.Value(player: false, stream: false), @@ -65,14 +79,16 @@ extension State { duration: Duration(ad: nil, content: nil), ad: Ad(playedAds: [], midrolls: midrolls.map { .init(cuePoint: $0.cuePoint, url: $0.url, id: UUID()) }, - adCreative: .none, + mp4AdCreative: nil, + vpaidAdCreative: nil, currentAd: .empty, currentType: hasPrerollAds ? .preroll : .midroll), adKill: .none, adMaxShowTime: .init(state: .stopped, startAdSession: nil, allowedDuration: Double(maxAdDuration)), - openMeasurement: OpenMeasurement.inactive, + selectedAdCreative: .none, + openMeasurement: isOpenMeasurementEnabled ? .inactive : .disabled, serviceScript: OpenMeasurementServiceScript.none, currentTime: CurrentTime(content: nil, ad: CMTime.zero), loadedTimeRanges: LoadedTimeRanges(content: [] as [CMTimeRange], ad: [] as [CMTimeRange]), @@ -95,7 +111,7 @@ extension State { playbackDuration: PlaybackDuration(startTime: nil, duration: 0), playbackBuffering: PlaybackBuffering(content: .unknown, ad: .unknown), averageBitrate: AverageBitrate(content: 0, ad: 0), - adTracker: AdFinishTracker(isFinished: false), + adTracker: .unknown, adVRMManager: AdVRMManager(timeoutBarrier: Int(timeoutBarrier * 1000), requestsFired: 0, request: .initial()), @@ -117,19 +133,31 @@ extension State { vrmScheduledItems: .initial, vrmFetchItemsQueue: .initial, vrmParseItemsQueue: .initial, - vrmParsingResult: .initial + vrmParsingResult: .initial, + vrmProcessingResult: .initial, + vrmProcessingTimeout: .none, + vrmMaxAdSearchTimeout: .initial, + vrmFetchingError: VRMFetchingError(erroredItems: []), + vrmParsingError: VRMParsingError(erroredItems: []), + vrmTimeoutError: VRMTimeoutError(erroredItems: []), + vrmRedirectError: VRMRedirectError(erroredItems: []), + vrmOtherError: VRMOtherError(erroredItems: []), + vrmFinalResult: .initial, + vrmItemResponseTime: .initial ) } } public func reduce(state: State, action: Action) -> State { return State( + timeoutBarrier: state.timeoutBarrier, playlist: reduce(state: state.playlist, action: action), rate: reduce(state: state.rate, action: action), duration: reduce(state: state.duration, action: action), ad: reduce(state: state.ad, action: action), adKill: reduce(state: state.adKill, action: action), adMaxShowTime: reduce(state: state.adMaxShowTime, action: action), + selectedAdCreative: reduce(state: state.selectedAdCreative, action: action), openMeasurement: reduce(state: state.openMeasurement, action: action), serviceScript: reduce(state: state.serviceScript, action: action), currentTime: reduce(state: state.currentTime, action: action), @@ -163,6 +191,16 @@ public func reduce(state: State, action: Action) -> State { vrmScheduledItems: reduce(state: state.vrmScheduledItems, action: action), vrmFetchItemsQueue: reduce(state: state.vrmFetchItemsQueue, action: action), vrmParseItemsQueue: reduce(state: state.vrmParseItemsQueue, action: action), - vrmParsingResult: reduce(state: state.vrmParsingResult, action: action) + vrmParsingResult: reduce(state: state.vrmParsingResult, action: action), + vrmProcessingResult: reduce(state: state.vrmProcessingResult, action: action), + vrmProcessingTimeout: reduce(state: state.vrmProcessingTimeout, action: action), + vrmMaxAdSearchTimeout: reduce(state: state.vrmMaxAdSearchTimeout, action: action), + vrmFetchingError: reduce(state: state.vrmFetchingError, action: action), + vrmParsingError: reduce(state: state.vrmParsingError, action: action), + vrmTimeoutError: reduce(state: state.vrmTimeoutError, action: action), + vrmRedirectError: reduce(state: state.vrmRedirectError, action: action), + vrmOtherError: reduce(state: state.vrmOtherError, action: action), + vrmFinalResult: reduce(state: state.vrmFinalResult, action: action), + vrmItemResponseTime: reduce(state: state.vrmItemResponseTime, action: action) ) } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDErrors.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDErrors.swift index ef94a7a..5351ead 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDErrors.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDErrors.swift @@ -32,7 +32,7 @@ func reduce(state: VPAIDErrors, action: Action) -> VPAIDErrors { return VPAIDErrors(abusedEvents: state.abusedEvents, javaScriptEvaluationErrors: state.javaScriptEvaluationErrors, isAdNotSupported: true) - case is ShowAd, is SkipAd, is AdStopped, is ShowContent, is SelectVideoAtIdx: + case is ShowMP4Ad, is ShowVPAIDAd, is ShowAd, is DropAd, is AdStopped, is ShowContent, is SelectVideoAtIdx: return VPAIDErrors(abusedEvents: [], javaScriptEvaluationErrors: [], isAdNotSupported: false) diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDState.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDState.swift index 8ec2e04..1459967 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDState.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VPAIDState.swift @@ -14,11 +14,14 @@ func reduce(state: VPAIDState, action: Action) -> VPAIDState { switch action { case let ad as ShowAd: guard case .vpaid(let creative) = ad.creative else { return state } - return VPAIDState(events: [], adClickthrough: creative.clickthrough) + return VPAIDState(events: [], adClickthrough: creative.first?.clickthrough) + case let ad as ShowVPAIDAd: + return VPAIDState(events: [], adClickthrough: ad.creative.clickthrough) case is AdStopped, is AdRequest, is VRMCore.AdRequest, is ShowContent, + is SkipAd, is SelectVideoAtIdx: return VPAIDState(events: [], adClickthrough: nil) case is AdLoaded: diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VRMGroupsQueue.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VRMGroupsQueue.swift index 44f8fc3..759aced 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VRMGroupsQueue.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/components/VRMGroupsQueue.swift @@ -15,6 +15,8 @@ func reduce(state: VRMGroupsQueue, action: Action) -> VRMGroupsQueue { case let currentGroupAction as VRMCore.StartGroupProcessing: let newGroups = state.groupsQueue.filter{ $0 != currentGroupAction.group } return VRMGroupsQueue(groupsQueue: newGroups) + case is VRMCore.AdRequest: + return .initial default: return state } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/phantom types/Progress.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/phantom types/Progress.swift index 31bc859..5175fa4 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/phantom types/Progress.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/phantom types/Progress.swift @@ -2,7 +2,7 @@ // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. import CoreMedia -public struct Progress { +public struct Progress: Hashable { public typealias NativeValue = Double public let value: NativeValue @@ -54,9 +54,3 @@ extension Progress: ExpressibleByFloatLiteral { self.init(NativeValue(value)) } } - -extension Progress: Equatable { - public static func ==(lhs: Progress, rhs: Progress) -> Bool { - return lhs.value == rhs.value - } -} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/PlaybackModel.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/PlaybackModel.swift index 3ffcffe..ddb3706 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/PlaybackModel.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/PlaybackModel.swift @@ -86,14 +86,14 @@ public struct Model { } public init(playlist: [Video], - autoplay: Bool = true, - controlsAnimationSupported: Bool = false, - isVPAIDAllowed: Bool = false, - isOpenMeasurementAllowed: Bool = false, - isNewVRMCoreEnabled: Bool = false, - adSettings: AdSettings = .default, - vpaidSettings: VPAIDSettings, - omSettings: OMSettings) { + autoplay: Bool = true, + controlsAnimationSupported: Bool = false, + isVPAIDAllowed: Bool = false, + isOpenMeasurementAllowed: Bool = false, + isNewVRMCoreEnabled: Bool = false, + adSettings: AdSettings = .default, + vpaidSettings: VPAIDSettings, + omSettings: OMSettings) { self.playlist = playlist self.isAutoplayEnabled = autoplay self.isControlsAnimationSupported = controlsAnimationSupported @@ -132,27 +132,35 @@ public struct Model { public struct AdSettings { public static let `default` = AdSettings(prefetchingOffset: 0, - softTimeout: 0.5, - hardTimeout: 2.5, - startTimeout: 3.5, - maxDuration: 90) + softTimeout: 0.5, + hardTimeout: 2.5, + startTimeout: 3.5, + maxSearchTime: 9.0, + maxDuration: 90, + maxVASTWrapperRedirectCount: 3) public let prefetchingOffset: Int public let softTimeout: Double public let hardTimeout: Double public let startTimeout: Double + public let maxSearchTime: Double public let maxDuration: Int + public let maxVASTWrapperRedirectCount: Int public init(prefetchingOffset: Int, softTimeout: Double, hardTimeout: Double, startTimeout: Double, - maxDuration: Int) { + maxSearchTime: Double, + maxDuration: Int, + maxVASTWrapperRedirectCount: Int) { self.prefetchingOffset = prefetchingOffset self.softTimeout = softTimeout self.hardTimeout = hardTimeout + self.maxSearchTime = maxSearchTime self.startTimeout = startTimeout self.maxDuration = maxDuration + self.maxVASTWrapperRedirectCount = maxVASTWrapperRedirectCount } } public struct VPAIDSettings { @@ -170,7 +178,7 @@ public struct Model { self.serviceScriptURL = serviceScriptURL } } - + public enum Video { public typealias Reason = String case available(Item) @@ -206,13 +214,13 @@ extension Model.Video { public let isPictureInPictureModeSupported: Bool public init(url: URL, - renderer: Descriptor, - ad: AdModel, - isAirPlayEnabled: Bool, - isPictureInPictureModeSupported: Bool, - brandedContent: BrandedContent?, - title: String = "", - thumbnail: Thumbnail? = nil) { + renderer: Descriptor, + ad: AdModel, + isAirPlayEnabled: Bool, + isPictureInPictureModeSupported: Bool, + brandedContent: BrandedContent?, + title: String = "", + thumbnail: Thumbnail? = nil) { self.url = url self.title = title self.renderer = renderer diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VMRCoreProcessingResult.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VMRCoreProcessingResult.swift new file mode 100644 index 0000000..4fdd759 --- /dev/null +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VMRCoreProcessingResult.swift @@ -0,0 +1,10 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. +import Foundation + +extension VRMCore { + public struct Result: Hashable { + public let item: VRMCore.Item + public let inlineVAST: Ad.VASTModel + } +} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreNamespace.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreNamespace.swift index c7e26f5..9857d60 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreNamespace.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreNamespace.swift @@ -1,5 +1,4 @@ // Copyright 2018, Oath Inc. // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. -import Foundation public enum VRMCore {} diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreVASTModel.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreVASTModel.swift index aef716e..f3a62ea 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreVASTModel.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMCoreVASTModel.swift @@ -6,9 +6,9 @@ import Foundation public extension VRMCore { /// Currently we support only InLine ads. - public enum VASTModel: Equatable { + public enum VASTModel: Hashable { - public struct WrapperModel: Equatable { + public struct WrapperModel: Hashable { public let tagURL: URL public let adVerifications: [Ad.VASTModel.AdVerification] public let pixels: AdPixels @@ -39,7 +39,9 @@ public extension Ad.VASTModel { public func merge(with pixels: AdPixels, and verifications: [Ad.VASTModel.AdVerification]) -> Ad.VASTModel { return PlayerCore.Ad.VASTModel( adVerifications: self.adVerifications + verifications, - mediaFiles: mediaFiles, + mp4MediaFiles: mp4MediaFiles, + vpaidMediaFiles: vpaidMediaFiles, + skipOffset: skipOffset, clickthrough: clickthrough, adParameters: adParameters, pixels: self.pixels.merge(with: pixels), @@ -68,7 +70,8 @@ public extension AdPixels { acceptInvitationLinear: acceptInvitationLinear + pixels.acceptInvitationLinear, close: close + pixels.close, closeLinear: closeLinear + pixels.closeLinear, - collapse: collapse + pixels.collapse + collapse: collapse + pixels.collapse, + progress: progress + pixels.progress ) } } diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMResponseModel.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMResponseModel.swift index 8b55bf7..82d4df2 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMResponseModel.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/VRM/VRMResponseModel.swift @@ -14,7 +14,9 @@ public extension VRMCore { } public struct Group: Equatable { - public let id: ID + public typealias ID = VRMCore.ID + + public let id: ID public let items: [Item] public init(items: [Item]) { diff --git a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/thumbnail/Thumbnail+VideoProviderResponse.swift b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/thumbnail/Thumbnail+VideoProviderResponse.swift index d7ea685..945d20b 100644 --- a/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/thumbnail/Thumbnail+VideoProviderResponse.swift +++ b/tutorials/sources/Pods/PlayerCore/PlayerCore/player model/thumbnail/Thumbnail+VideoProviderResponse.swift @@ -3,7 +3,7 @@ import Foundation -public struct Thumbnail { +public struct Thumbnail: Equatable { let width: Float let height: Float let url: URL diff --git a/tutorials/sources/Pods/Pods.xcodeproj/project.pbxproj b/tutorials/sources/Pods/Pods.xcodeproj/project.pbxproj index 5aba7d2..c67db6b 100644 --- a/tutorials/sources/Pods/Pods.xcodeproj/project.pbxproj +++ b/tutorials/sources/Pods/Pods.xcodeproj/project.pbxproj @@ -6,1103 +6,1206 @@ objectVersion = 48; objects = { +/* Begin PBXAggregateTarget section */ + E0895D7EE1F741F56B4F1C3D38264F7F /* OMSDK-Oath2 */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 70C7CDB18D92DCA6D872EC571D2D1C5F /* Build configuration list for PBXAggregateTarget "OMSDK-Oath2" */; + buildPhases = ( + ); + dependencies = ( + ); + name = "OMSDK-Oath2"; + }; +/* End PBXAggregateTarget section */ + /* Begin PBXBuildFile section */ - 0029E9A3860E744067B38D539565E8DC /* Pipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D87489F4BBC6FE65A87411F99402FA8 /* Pipeline.swift */; }; - 01B2633761BCBFE0C157E44055B94289 /* UpdateCurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = A402ADEFF7F87B82752402AD92E39F27 /* UpdateCurrentTime.swift */; }; - 01CFB68EEEB4BC46D9A7CAF9D1C55EE8 /* AdClickthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12EDBC85553EC56459B4AFFD2BC00DEB /* AdClickthrough.swift */; }; - 024F660D7F628A0F64C1405CE6B8B5E5 /* ShowContentAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36A5247CE66D428B4383A2ACDC5A4C1F /* ShowContentAction.swift */; }; - 026F3C1D9AEABFBCC2CE592558A7D4DC /* VideoLoadingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1AB631583E8AD76A39F6CC7107F7982 /* VideoLoadingDetector.swift */; }; - 0273CCA7AE36A4266A015656C7FD2002 /* 3secPlaybackDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22B3033FDC26C5EA83524CDC956AB10A /* 3secPlaybackDetector.swift */; }; - 0282BF9560F16BAF23B98DEE49998F46 /* UpdateCameraAngles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C20B6FA2D026F5770896C70DDFFFADF /* UpdateCameraAngles.swift */; }; - 02FDAEF51E439E7CD385DE72B1A71D4F /* VRMParsingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C29B6EF6CA72B2AE2F1676F9AA33B30 /* VRMParsingResult.swift */; }; - 04D3CB77F28F3F1C45A3CD3DE2C2CAF9 /* VVPSDKPlugins.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55C7CE7F718DD80837566C8586ADF744 /* VVPSDKPlugins.swift */; }; - 052E68715401EC95312C3ABBA46D2FCC /* ProcessGroupsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18C0BB836697B2766FB7C3FAA1EC744E /* ProcessGroupsAction.swift */; }; - 059E98E7F5B3AB8D2DFA8F490578529B /* Play.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6FBFBA8B34E78F824AB8208E18BE62A /* Play.swift */; }; - 05B5C0C15E26BFEF825A2FE4067A420C /* SeekGestureRecognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9FB50E7B0F3ACA1BD021113B4118A08 /* SeekGestureRecognizer.swift */; }; - 05E6AA91567657128CC25EBF86DD402E /* OpenMeasurementServiceScript.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F5098F9297DD3B239FFBF84AF87F044 /* OpenMeasurementServiceScript.swift */; }; - 06693EE9F1D06C5D29FB68F3F7FD1B05 /* State.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFCD08872ED4FD44C60DEAF7D668601E /* State.swift */; }; - 069F8A5CF50BEE3ADB03BCB88F87A2BE /* PlayerViewController_Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3302B6C31D787393624767A0EEA7D44D /* PlayerViewController_Binding.swift */; }; - 06E530AB600B6A22BD1EEE9B3D3BD4B4 /* MuteDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1651E5B23C9B5C51119273716C0BC1E6 /* MuteDetector.swift */; }; - 06FBE7CC4F62B700FFEC7C69CEDA6FC7 /* OMServiceScriptActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39F0708782DC0A936D163B220E4B20AD /* OMServiceScriptActionCreator.swift */; }; - 07AC8747AF1C0EE55BDD8405FBE35155 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B3243A549D845F8EB5894515FA46ECB6 /* CoreMedia.framework */; }; - 07E55225916BC03A136C5B4A219C8BE8 /* VideoTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79EA22D311E6C24766AEB0E0C0F7E3B7 /* VideoTimeDetector.swift */; }; - 08A81EF234DDC662A6C3059D77C6E273 /* OpenMeasurementAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E4F338D5383965D04E52E8DDC0FA692 /* OpenMeasurementAction.swift */; }; - 08CABFD620A258D05607E715E0F3A02B /* UpdateLoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6F83D60E9328390087D84237A137B8F /* UpdateLoadedTimeRanges.swift */; }; - 09309E401218116AD48E054B8696B791 /* UserActionInitiated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26D6DCCC3E2FB48015E6BDC2891B7DF4 /* UserActionInitiated.swift */; }; - 099CCAA590C3D71A460E0BFDFDEF234B /* SettingHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF97835F70ADC72148DDE977711C16B1 /* SettingHeaderView.swift */; }; - 09C267AD29698E879AECCAEC9FF4F2CA /* InteractiveSeeking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46B981960585FF391251AEC8976ACFCD /* InteractiveSeeking.swift */; }; - 09F3CAD79C8506A66195436E593DE85A /* VRMCoreStartGroupProcessing.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEE22018F9CD003D5A63236D9F801406 /* VRMCoreStartGroupProcessing.swift */; }; - 0A23E6EDCE4110AD2C7A58EFF98A649A /* MutePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D23CBF84EED3D47272FBD411AD256DF /* MutePlayer.swift */; }; - 0A40B356475EE123FFBAD023E05295F7 /* ProcessAdItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17E5691970CAF01CE5E29A902E14A0C2 /* ProcessAdItem.swift */; }; - 0AA0E744FB2454297A26C55B97DA2C8E /* VRMCoreStartGroupActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83310F3D198D2939833F53952B6A4156 /* VRMCoreStartGroupActionCreator.swift */; }; - 0AEDF5777C14132A718069AC73EB5487 /* Dispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = D60A46AAACB1BC39457A65E8974BA779 /* Dispatcher.swift */; }; - 0B3EA77D7EB51B6775A6F2446F0F01FB /* VRMCoreItemScheduling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AA52E2681A608952D2FE5184EEFEAC5 /* VRMCoreItemScheduling.swift */; }; - 0B46C6798437A80F452C515E93FC15E7 /* AdClickThroughAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADBD98169C953D6CF2CABA20C0EC92D7 /* AdClickThroughAction.swift */; }; - 0C10637A24DCFB5EA2B147EE9D7727EF /* BufferingStart.swift in Sources */ = {isa = PBXBuildFile; fileRef = 591465E5AC2A1E0E8A1F7A39A4ACAEA3 /* BufferingStart.swift */; }; - 0C8C033DCEDDD313D71FF4EF43504C6A /* VVPSDKPlugins.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55C7CE7F718DD80837566C8586ADF744 /* VVPSDKPlugins.swift */; }; - 0D06439CACB981A85CE52114ABD1C3DD /* Pause.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3B5A395D26DF4C5DB4E72DB2FA84013 /* Pause.swift */; }; - 0DD068D958D79FDD43F0810FEDDD9CD7 /* PlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5906EEFA1985A3A746665567688BE259 /* PlaybackStatus.swift */; }; - 0ED9D1E547343295750EB79C4ECB643E /* UpdateDurationAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 462489537F00B6A09CBDDCCA4C97CBB4 /* UpdateDurationAction.swift */; }; - 0EEA5FA91A4893DE515EEC22A6623163 /* PlayerCore-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D4446AE472B870BA1DB1C81F11A355C /* PlayerCore-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 0F33AE4402B5F68E5C3FE2806B57111A /* PlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EF704FA5014FFE1065AFFE439D41A4B /* PlaybackSession.swift */; }; - 0F9213ED3C9EF9D0213E37A270212DF0 /* VRMCurrentGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F9DC649FC969E25E64A75BF8EA18BA /* VRMCurrentGroup.swift */; }; - 0F9ACA529A5A1F41DF5135E74119D9CE /* AdURLProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62D2F928A95A153287553E0F2C52B5EC /* AdURLProvider.swift */; }; - 0FBF49D400C5EB84E0834B4FCE47A312 /* CurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62DFF5D1B39759E88B07710D0DC5E352 /* CurrentTime.swift */; }; - 0FD3FF8621F8E213E1D993A48EFC7560 /* VideoRenderer-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5DCD449B7D6FB8F4D06C8735C5DC05C7 /* VideoRenderer-iOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 0FF42266C5D90D7DC6786D9FD92662AE /* AverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 512BE73014C347312723D1227DE336B9 /* AverageBitrate.swift */; }; - 103B06CBFB941BEF6B2C86D5592CABFE /* DecileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3EC4B7840232ABAC87ABCC542A8A1B4 /* DecileDetector.swift */; }; - 10EE08C676BB37EF28AE67D27302DBBA /* VRMCoreAdResponseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1A805987D20AE9ADAE2FDF14D90BF6C /* VRMCoreAdResponseAction.swift */; }; - 123BADB39C303A87AFF0CD544432A8D4 /* TrackingPixelsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8BFD14F7BCB4F454474DD557EC8FB2F /* TrackingPixelsGenerator.swift */; }; - 125CE1728955134543382476BFD7959E /* UpdateExternalPlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3E375E20D4CA38592494A8AD33620EE /* UpdateExternalPlaybackStatus.swift */; }; - 1275BB522138A3614092EF63DF8EA9CB /* VPAIDMessageHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF741AE1D30E4B59132CC68D13FB30E5 /* VPAIDMessageHandler.swift */; }; - 12B23B255798C38A4D7904A25E443C1F /* VRMGroupsQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF3663C0AECC745A319F9D623FFAC521 /* VRMGroupsQueue.swift */; }; - 13006ADFA5309354C0C2F01C6C63A5DB /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B008AB6E6681D244A054584E886ED1F /* Action.swift */; }; - 13698B149E62F26AC4CF3BFF9843747B /* 3secPlaybackDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22B3033FDC26C5EA83524CDC956AB10A /* 3secPlaybackDetector.swift */; }; - 144ADBAED70E3D34F95A8CB084C24C92 /* AdURLProviderProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED32760CD4C760EDD487654D2FBB7488 /* AdURLProviderProcess.swift */; }; - 14A335CCFFF5F9B2E10D52A70F35BDF7 /* VASTParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C7E8BBB6BD3ED268CACBA696E83C390 /* VASTParser.swift */; }; - 1517EB068649C233ED76DEC43DA854B4 /* VASTWrapperProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = E638C9D630901ED04E17BD40FA99DF35 /* VASTWrapperProcessor.swift */; }; - 15313CB92AAF314511884138F213BE1E /* PlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = E37C4C9A91AED32895BDEBF5F4032EF6 /* PlaybackBuffering.swift */; }; - 15ABED82FB200653086097F3FFD7DA55 /* VASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79C4A6EA6FE7CBB68C15ABD5DA32F072 /* VASTModel.swift */; }; - 1859D492849A9DE3303D534D20A12BBB /* OpenMeasurement_Tracking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AC1AA457E993D50F4BE64B2939C767 /* OpenMeasurement_Tracking.swift */; }; - 18DE1242ED1FB039727391152C7D4985 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3A86F0C2ED4C170E8A84D0C7B65A649D /* Foundation.framework */; }; - 18E5B8A049039415B99C4310644FA8DD /* FetchVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 170C4A929624ABA3F1B5147254FBBBBB /* FetchVRMItemController.swift */; }; - 18EB8E703481AD7F745D452091B490E4 /* VPAIDState.swift in Sources */ = {isa = PBXBuildFile; fileRef = F80415A24D033D1D3F40A31C084CECC9 /* VPAIDState.swift */; }; - 19B19758C9180DBB7D30AFCDD9FDE072 /* HeartbeatDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4321E400DDE66BAAE0A740DD99522742 /* HeartbeatDetector.swift */; }; - 1A12F1D6FA4E516008150AD79031AFC5 /* SeekerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B89045B69B19780EB8C0D427DE59B2E0 /* SeekerController.swift */; }; - 1A80E46DA2BF33EEAC9F6B4DF811E15B /* Player.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D297474849F896A9CCDBFF4D43A7480 /* Player.swift */; }; - 1AC1646958CCBBFFDA5C08A046C96400 /* TrackingPixelsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8BFD14F7BCB4F454474DD557EC8FB2F /* TrackingPixelsGenerator.swift */; }; - 1AFD04F78A2D22312578ACF462F5550D /* ProcessAdItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17E5691970CAF01CE5E29A902E14A0C2 /* ProcessAdItem.swift */; }; - 1C680608FF759E456222265F745213DE /* VideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B05BA6B252496D76FA213610874800F3 /* VideoStreamViewController.swift */; }; - 1D4CD24BEE3F11B143DB0E79C91AA226 /* VRMTopPriorityItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0DEBB8DB976D1C444796C7EB6B6F1CB /* VRMTopPriorityItem.swift */; }; - 1D6407E0F5EC206ACAA6CF5BD1C9DE79 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C59DDE1D58FDAED51F4502FA0AF1C80 /* Disposable.swift */; }; - 1E86ACFD2083134368B915B7B7CE34F0 /* VideoRenderer-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 66821E99C6E07E9A39389B0C932EE183 /* VideoRenderer-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 1EC47A3A752148683372A72A47E60A5F /* VPAIDEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B599A9D718C8A78602A75080BFA991D /* VPAIDEvents.swift */; }; - 1F0A3724A866C1598C004638B6338145 /* ParseVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D66C71FA910DA59C2DD6FE366493616 /* ParseVRMItemController.swift */; }; - 204B5302D6298AA241C330BC116F6AD8 /* PictureInPictureControllerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5AF3EF885CF9EBCAB773C9CBF143175 /* PictureInPictureControllerObserver.swift */; }; - 20637D74F62B21E0F2A688DF1ECE3AC6 /* CompletePlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05B1B2816ED4C554DDB9303D17FF368D /* CompletePlayerSession.swift */; }; - 206B1F089A48D27FE631E8C425958355 /* AdKill.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60B9F3F5BB432696D504C5B6C51A1554 /* AdKill.swift */; }; - 20D429F00480C6B7CB595A716CD28102 /* OMServiceScriptActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39F0708782DC0A936D163B220E4B20AD /* OMServiceScriptActionCreator.swift */; }; - 22006A69313C02EB942FDDA04730D23D /* AdErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A2A26ABD658D25D4E442B40F361AA0B /* AdErrorDetector.swift */; }; - 2220032FC28D4A207E75F5A89C892E66 /* PictureInPictureUpdateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A391B11F749C6DE8AA14A316C6274FA /* PictureInPictureUpdateAction.swift */; }; - 225932FA70F5DF8E2A3455B40702EB9A /* PlayerProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8590C1D7E3789687685DBD5D7CF90FB6 /* PlayerProperties.swift */; }; - 2338F50DAF716965323EFEE3A000424C /* UpdateExternalPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8B632F0507A346EC1129210D3DE3BD6 /* UpdateExternalPlayback.swift */; }; - 23FC405C63670C17BD48F35AFF791645 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D139E9F005DCF621ADA8FFAA1CA71CC0 /* CoreMedia.framework */; }; - 24387EB1A5F30FA7616A0A5B507F0278 /* Nop.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B48433E6E9ECCE607F953FA02773B10 /* Nop.swift */; }; - 249669F8C36F08F5D4A42C623B145790 /* Next.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CBA4BCF2815045C1D4CF7CA0DBDDE5A /* Next.swift */; }; - 2528ECDA23087D20F6C9CE5D65D2AD94 /* Rate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CAEB6D5DBA7D8ABD8CBA8D414D5BEDF /* Rate.swift */; }; - 257EB64B769EA92D0B20E97BE20B45FF /* OpenMeasurementServiceScript.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82EF3817A266B768D751F271084995E6 /* OpenMeasurementServiceScript.swift */; }; - 264EA5B5CBF2E596E72E725177E876CE /* Memoise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54A2866430B6EF9B4B6981E56B8FCE0B /* Memoise.swift */; }; - 285634EEEA1B79CEAC1EF51EAE1FA197 /* SphereView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C0E2B7DF9056411131588C3D31055AB /* SphereView.swift */; }; - 28818B1BC14B573058980FEC03C84539 /* AdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045810D2B7A2421CA10E5823AC70CCD5 /* AdProcess.swift */; }; - 28EA3B5191278C89C681468B3F3619BA /* SphereVideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57C586F3179E8D955CCFCBAA8E680BA7 /* SphereVideoStreamViewController.swift */; }; - 28F222A7971F5FC2F63518D26F2E04E4 /* VRMDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 956CA8903BE26CEB879A446119E31306 /* VRMDetector.swift */; }; - 2AE0E881A697D06F38C24F28AC659271 /* Pause.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3B5A395D26DF4C5DB4E72DB2FA84013 /* Pause.swift */; }; - 2AE47F9323BE31EE39CFE25C84E11971 /* Seek.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBE4FB5C1CFEBB5DEA7CE979BEC54D95 /* Seek.swift */; }; - 2B9D05F06019D49192B828FEF7451798 /* LoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B54B5C1F9391D4606F19BD1DA9B7D9A /* LoadedTimeRanges.swift */; }; - 2C29E6861FEE8BC6F064156F0BAD0F9A /* BufferingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 379EE81D1FE68F7A64AFCA5A1F97168B /* BufferingDetector.swift */; }; - 2C41D2D766BDD489CF17147D3E98823B /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E4864552EC336B4FE0A5EF2E1CB7811 /* Timer.swift */; }; - 2C440192196FFCBF56852EA69297D53F /* VRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85B6A00D3FF5A49ECF73B009847F2D36 /* VRMItemController.swift */; }; - 2CFC0E86390C6F22014A55141AA3634D /* ErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52B058E513D4B95189C2216295A4F6BB /* ErrorDetector.swift */; }; - 2D13C9FC4E1E4338E9B2A04E3D7E5469 /* RendererDescriptor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBA68203FA38A75D2E16ECCAFD80F12A /* RendererDescriptor.swift */; }; - 2DBD8950D91B885F6B88610407A5749F /* Viewport.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96C8D4C2E1B6AC5850E03D6F9BA3A47 /* Viewport.swift */; }; - 2DF0D50C94E6B3942FF955761D57B98A /* Dispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = D60A46AAACB1BC39457A65E8974BA779 /* Dispatcher.swift */; }; - 2E2EB74BE2CA8DCBD84B7DC5D76A850A /* PlayerProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8590C1D7E3789687685DBD5D7CF90FB6 /* PlayerProperties.swift */; }; - 2E9350EFFF3B0E36940A5024EEF3F113 /* Progress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A383559DAE3DB38D22E11A5AC4F023B /* Progress.swift */; }; - 2EA25F928A92EB9D6CDBEEFE4286E3AC /* CompletePlayerSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2BDDD87D3B494A96246E20440F479F8 /* CompletePlayerSessionAction.swift */; }; - 2EFA3C9A5DC02EE14DE348267B04612E /* EndPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1254F86FCA694BEC7D513BFED2755C16 /* EndPlayback.swift */; }; - 2F49EE0B3FF10934B480CFFBD6EA0B2B /* StallingRecords.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4DBDA8FD59F9C64001EA31D981AE9D0 /* StallingRecords.swift */; }; - 2F7909E31B650D7095FBADEEA94CDB65 /* VRMCoreStartGroupProcessing.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEE22018F9CD003D5A63236D9F801406 /* VRMCoreStartGroupProcessing.swift */; }; - 2FA1201B378FCA368197FEAA8104B184 /* VerizonVideoPartnerSDK-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 837575562C788FA755344A8D5B212BFA /* VerizonVideoPartnerSDK-iOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 2FACB7C19CF50CCD91BC7C0C6C2A013F /* PlaybackFailed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07B7F0918426056110EBF06E940BA82D /* PlaybackFailed.swift */; }; - 2FE46B8A7E5432F69722FB73BB4026D1 /* Duration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981FCF0A9AAB9992E824F731B6924843 /* Duration.swift */; }; - 2FFD22BE224242E54FB8F43FA1094C4A /* JavaScriptObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7753BF54C19FA91D8D8C1291B6D3D94C /* JavaScriptObserver.swift */; }; - 316585A389443250EB4F843CECC89CFA /* Rethrow.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF60D4731856EC5C6CDDD8A899F613A2 /* Rethrow.swift */; }; - 31B9C590E2F26C95A64545388F9243B2 /* MidrollDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB771E978CA41E639189F89D52A9C09A /* MidrollDetector.swift */; }; - 31FA11C01F17C1812F93778B7E14ACC3 /* VPAIDErrors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62026BE0CC4B962614C3C34DE645DCFB /* VPAIDErrors.swift */; }; - 33374D7685D6CFAFF39BECB73ED7A197 /* ShowContentAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36A5247CE66D428B4383A2ACDC5A4C1F /* ShowContentAction.swift */; }; - 33984EEE5670A8DDDE25A2B135459F58 /* IntentDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19F6264CC0766D089541CDF6CEF3D79E /* IntentDetector.swift */; }; - 340450081AD4D6BB81D00B76FF61A0C6 /* Codable_PlayerControls.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = D921EEA1FDC52E6712233D73CFE9D0CA /* Codable_PlayerControls.generated.swift */; }; - 340E9E3DFC7EFCF9305DF0F25656B333 /* AdVRMManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00C8541BC89273217935B674255CDBCF /* AdVRMManager.swift */; }; - 3418FE0A9071FB53C46EFAD650B21263 /* HeartbeatDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4321E400DDE66BAAE0A740DD99522742 /* HeartbeatDetector.swift */; }; - 342E34C61B88F997F8C1AF6EFE01DD93 /* VRMCoreVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28AA53DD58EBA4F9D20A8F3F6B4819D6 /* VRMCoreVASTModel.swift */; }; - 34D988E8F1A35547A2F05395153B9CAD /* PictureInPictureToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = F09FAD92BB59C2212454C4B9252963F5 /* PictureInPictureToggleAction.swift */; }; - 355C4BE9C661FF0C43330BA24BB0F0B0 /* Context.swift in Sources */ = {isa = PBXBuildFile; fileRef = 460EE4014DF508E80E9909C09A765B56 /* Context.swift */; }; - 355E5A63D79602AD1EB7654B8B6EC81C /* PlayerControls-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4166C0D3C7B05C2E6C684E192C72FEF9 /* PlayerControls-dummy.m */; }; - 36280C61F04E8F333584B4A027FDC2B9 /* UpdateCurrentTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 001DF36A9EFCD0DCE34D82D1A1B6E40C /* UpdateCurrentTimeAction.swift */; }; - 36D4F6C1C21162DDA9B4BE2D08B30C53 /* AdVRMManager_Hashable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14D27AEA7B2E2A901251E2EDBC73796C /* AdVRMManager_Hashable.swift */; }; - 36FADDA766A89EFEAF164869FCDAEA27 /* VRMCoreAdResponseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1A805987D20AE9ADAE2FDF14D90BF6C /* VRMCoreAdResponseAction.swift */; }; - 3770D80E1F5774144C8F9CC207DF1519 /* ExecuteOnce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6410E471D1AA561B297ABE0AC6AEA0D6 /* ExecuteOnce.swift */; }; - 38403EAF626210238C677D8F87FFC81E /* AirPlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F576BF45DA2D2CEAEE5EC8E33055357 /* AirPlay.swift */; }; - 38950BF71A3A5169A6FFBD30F2EC7171 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9CDA438423EA9A1A5F33142AE0527696 /* AVFoundation.framework */; }; - 38EC323E693B3B5EC685777C27A3A33A /* VideoPlayDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = B413C6D53F3C0197CCB7A7813A8C44A0 /* VideoPlayDetector.swift */; }; - 3940B4121BFCAB9666FACBD3B10D7C50 /* SystemPlayerReplayDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1C0D528D7B2F30BE1DA9B1689C56FD2 /* SystemPlayerReplayDetector.swift */; }; - 398903F06F75367522D3BD94BAEB3277 /* ConfigurationParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB9B1E88711B17F9922543C2A2F45667 /* ConfigurationParser.swift */; }; - 39B8750D2661C3F0775D3563C638198A /* VASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79C4A6EA6FE7CBB68C15ABD5DA32F072 /* VASTModel.swift */; }; - 3A0E54BBD3C6526678D7314A2AF973F6 /* VRMResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5838EEB535181551DAC39253F01ECF8E /* VRMResponse.swift */; }; - 3A3722D020E59F6AFC2988357FDE5A0E /* AdKillAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F1D30730DED4F86AC121BF0EE8F0E2C /* AdKillAction.swift */; }; - 3A37E3B544D1201B9AF6190C6A9E7F14 /* Thumbnails.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B7BE45CA8617D5B741107076225FED6 /* Thumbnails.swift */; }; - 3A525E5230E782A839F2EF0DC50269B8 /* OpenMeasurementContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EBD64094E86036C2A92C9063BFC3426 /* OpenMeasurementContext.swift */; }; - 3B8DD2B4BA44B38EFAB1B05C29CBA5F3 /* UserActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4447F37C1E639EE2BD134D0A4687AE98 /* UserActionsDetector.swift */; }; - 3D8F8E8EE99CD9DD01F0840F5D9A87A7 /* PlaylistStatisticDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 461F3DE678AEF0C1034F0623ABB56D4C /* PlaylistStatisticDetector.swift */; }; - 3D99B163128F5910E93F4A614F7BC4EB /* XMLParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = E59632BF977DAE7576AFBB52C77BB28F /* XMLParser.swift */; }; - 3DA8707BFAC22176BDC48D71ED6FD4D2 /* VRMGroupsQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF3663C0AECC745A319F9D623FFAC521 /* VRMGroupsQueue.swift */; }; - 3DB9FF98ED05CEEF9CD5D19104D3615A /* SeekToTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 133FC706F5DFE798FB3CF33AC781F67D /* SeekToTimeAction.swift */; }; - 3E41ED840737EE09028F8F73D12CA60A /* ScheduledVRMItems.swift in Sources */ = {isa = PBXBuildFile; fileRef = E31B80BFF936795AA5C4A478B5EE0BA4 /* ScheduledVRMItems.swift */; }; - 3E9B1FB9273EBF17014E6D68BB085043 /* VideoSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = D30BEFD5ADDA7C97D87EFF200546858D /* VideoSelector.swift */; }; - 3F012DC36188529774CA5842A208969C /* Rate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CAEB6D5DBA7D8ABD8CBA8D414D5BEDF /* Rate.swift */; }; - 3F5F7A62D90D7A0A532F08A6DF0E41E7 /* CurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62DFF5D1B39759E88B07710D0DC5E352 /* CurrentTime.swift */; }; - 3F89218E201E24C079E97B698490ACD7 /* CompletePlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05B1B2816ED4C554DDB9303D17FF368D /* CompletePlayerSession.swift */; }; - 3FC81A105AB7BE1AB7B5811F740F701C /* UpdateAverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC0A6ECF684B52307079B294DA99828B /* UpdateAverageBitrate.swift */; }; - 3FE08325746FBDC5B374D9740C3D90F3 /* ContextStartedDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF871486FBC7DACBF9496DA298FD380 /* ContextStartedDetector.swift */; }; - 40C75F6D9E0708DA8AA47D9ABB8DF9CF /* VPAIDErrors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62026BE0CC4B962614C3C34DE645DCFB /* VPAIDErrors.swift */; }; - 426DB12AE681BA5853A02AE79B0DF326 /* MediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AC5C0DD018F44AA233111BC67356CF7 /* MediaOptions.swift */; }; - 433DE8C2D8364A82C9D462B8CB709463 /* UpdateDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 939688037004E5CE1676B7CEBBE9E08B /* UpdateDuration.swift */; }; - 43EECF9D3CBD21A96F0E133AA01E44B8 /* PictiureInPicture.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6D079AC9494A3CBF205BC2D6A6E46C4 /* PictiureInPicture.swift */; }; - 4421AAC74E600314B162370E7548EFFD /* VideoActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11907EA3ECC1DB9250FBE5CE3CE0C536 /* VideoActionsDetector.swift */; }; - 44EA35EFC96D517DF2F1B455AE81856D /* Playlist.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6C00520495895A29A48A2574D0DF87C /* Playlist.swift */; }; - 45276EFA7B9C9D83807DD2003F1F0550 /* StartVRMGroupProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EA4FAF0B10D00CFABACD0CBB6149805 /* StartVRMGroupProcessingController.swift */; }; - 45323D9EA72492097B35665E381F263D /* MetricsSender.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2F23D4A4092AFBBB20BDF9E97B1A15E /* MetricsSender.swift */; }; - 4562BBF8832A713351A851C632BF8D36 /* MediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AC5C0DD018F44AA233111BC67356CF7 /* MediaOptions.swift */; }; - 459B3E75A8B0D0914F19F3826016718C /* TrackingPixelsConnector_Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F47F287C07EF34BD266267D64BCEC15 /* TrackingPixelsConnector_Ad.swift */; }; - 464107F860D3544CA62C6E27D1764731 /* UpdateExternalPlaybackAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B59DAC509F4D05D438946DA8AB08C1 /* UpdateExternalPlaybackAction.swift */; }; - 46CEBF85385248A26EEA7C9462E98A84 /* SafariServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B5B7B58BF84B37AEF03D75A2389D742B /* SafariServices.framework */; }; - 47337944F6E16F03A914F5E58A4881ED /* PlayAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5659F0C868F2180006EA558B4CAF3C78 /* PlayAction.swift */; }; - 474AD31D8EC8AFED01DA1E0F0D8322D9 /* Telemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64FA5380686BEFF579D227DE32B9EC70 /* Telemetry.swift */; }; - 474ED64A0237765C94C3A927C9987C15 /* VRMItemActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B375FA8FEEE412E94048793C25D2E13A /* VRMItemActions.swift */; }; - 475A68CCB8371160DAE290AEF8D13F32 /* VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35685494010513F5E016E563F55A3A1A /* VideoProviderResponse.swift */; }; - 47727B82A6FD0459D8C815ACCEA135A8 /* AirPlayActiveView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E213B6FA430B7E01405FC1F578A03884 /* AirPlayActiveView.swift */; }; - 477A485CB74262412D0C384FC78F316C /* AdClickthroughActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = D521315A396FE12F6AE3BF25EC18CE64 /* AdClickthroughActionCreator.swift */; }; - 47A04231119A4E5AD0425FBC2F7AFAA4 /* VideoProviderParsing.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3BE20027FBB749F3E16F5B1B2A2CB98 /* VideoProviderParsing.swift */; }; - 4837BC001544542D1D43F4228794DF0F /* VideoPlayDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = B413C6D53F3C0197CCB7A7813A8C44A0 /* VideoPlayDetector.swift */; }; - 498C3871820812167D52915C2A44A3E8 /* Player.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D297474849F896A9CCDBFF4D43A7480 /* Player.swift */; }; - 4993845173128706A10483A179E98FCE /* PictureInPictureStatusUpdate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81DD3E91194AA98FE2439FADE4AC0E52 /* PictureInPictureStatusUpdate.swift */; }; - 4A29793386D570F4D16D536F4DC0B10A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6C3E401E7BE44C38AC689692AE758CD2 /* UIKit.framework */; }; - 4AC9F43656C56E18B395FB0863182F86 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C59DDE1D58FDAED51F4502FA0AF1C80 /* Disposable.swift */; }; - 4AD08A0112DF3C515BF2A7426880FAA8 /* SystemPlayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 895EF76FD2DEE6AA667425569B02ADCB /* SystemPlayerModel.swift */; }; - 4B13DA732A30EBE313EC9358A9090546 /* Stub.swift in Sources */ = {isa = PBXBuildFile; fileRef = 149FDBE670D31BBD5C59691364C96F07 /* Stub.swift */; }; - 4B471E5E9B4573166E251520B872D77F /* Duration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 981FCF0A9AAB9992E824F731B6924843 /* Duration.swift */; }; - 4B808F7298BB670C9829CE77F9A8944B /* PlaylistStatisticDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 461F3DE678AEF0C1034F0623ABB56D4C /* PlaylistStatisticDetector.swift */; }; - 4BB170EE3F0D05DA2C9F7425D072118C /* AdVRMManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00C8541BC89273217935B674255CDBCF /* AdVRMManager.swift */; }; - 4BDBC9EB9194C2FCF3EDDF2CC534C0C1 /* AdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1824C76AAFA51CFCF5207329529D3E4F /* AdRequestAction.swift */; }; - 4C095654AE7EC89A8CC68D3B6340AFC6 /* AdVRMManager_Hashable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14D27AEA7B2E2A901251E2EDBC73796C /* AdVRMManager_Hashable.swift */; }; - 4C1829423E3D787789A0AA919B1B3FB0 /* PlaybackCycleDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADBB37257086C69BE2D3A45E38621509 /* PlaybackCycleDetector.swift */; }; - 4CADBB953144A79B6A2DB23352D03C3F /* VRMItemActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B375FA8FEEE412E94048793C25D2E13A /* VRMItemActions.swift */; }; - 4D023C41FC336093448BE44E1C36FD4B /* PlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EF704FA5014FFE1065AFFE439D41A4B /* PlaybackSession.swift */; }; - 4D2963EC4ABB93BFC1DC1C7456F47710 /* VRMCurrentGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63F9DC649FC969E25E64A75BF8EA18BA /* VRMCurrentGroup.swift */; }; - 4D30845C042CC22DE73DBCBED9B75854 /* JavaScriptTelemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB47FFE162435F98B1E42218D37D636C /* JavaScriptTelemetry.swift */; }; - 4EE1185581FCB42BD830782C1AABB4E3 /* OnMainThread.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C8C9ED50FCB47458EBAF2F21528DA7F /* OnMainThread.swift */; }; - 4EE17B955EDBB51609F7D87982F6EAF9 /* TimerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = E720E2440EB170B1FF5F477CD2CF2A57 /* TimerSession.swift */; }; - 5025A3FEC182C7269B30B17E15B56814 /* TrackingPixelsReporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D2D12D0F6E4DC32ACB7C8A4C5909C0 /* TrackingPixelsReporter.swift */; }; - 515A6AFE9AF12FA54E67B8FF14F24D0F /* PlaybackModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADEB582B5F68BC8D3108EF44DE73C639 /* PlaybackModel.swift */; }; - 518F607F48890517C34C09625041D3B0 /* PropsMapping.swift in Sources */ = {isa = PBXBuildFile; fileRef = A64C0FABCA9E69947EF243310565FDFA /* PropsMapping.swift */; }; - 51B0CFD52277AED8644A674C427E4462 /* VVPSDK.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9EA918DED9C206E59D1F3D951C28CB6 /* VVPSDK.swift */; }; - 51FAE4F6EF5DF467BB6CAE4999796A03 /* Color.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DC0BF97B82A8D2D95082A17177C5DE2 /* Color.swift */; }; - 51FBEF460FB085B707A9B079084CEF15 /* SlotOpportunityDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 062D2F46B54C74934ED7F20311DB9D55 /* SlotOpportunityDetector.swift */; }; - 52C0287FF678EFAD3A6CBEE402892CBC /* AdInfoHolder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33134BB259E7102EA1B40C5EEBE2777D /* AdInfoHolder.swift */; }; - 52C971BF8048E68EA2C0682ADBDDC2D1 /* SeekToTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 133FC706F5DFE798FB3CF33AC781F67D /* SeekToTimeAction.swift */; }; - 52CC0EB56405859F948BFD2D33B53490 /* SeekerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B89045B69B19780EB8C0D427DE59B2E0 /* SeekerController.swift */; }; - 52E1479A0BBD80DD18611DC0EEE65BA1 /* AdClickDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BCC2D8831B9D16ED8EC0BF7B9ECD68C /* AdClickDetector.swift */; }; - 548DDC794CD52B169F16768D31298DA1 /* VRMCoreAdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B417B3CB95F5039AFCB350F4F2A5C126 /* VRMCoreAdRequestAction.swift */; }; - 54A7BCA1BF0DC0717AFE4AD346DDC97E /* VRMCoreItemScheduling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AA52E2681A608952D2FE5184EEFEAC5 /* VRMCoreItemScheduling.swift */; }; - 54DB5EB735AF497E82EBDAD7C1930E9E /* RendererRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8557DD8B41AF0A9A27E0BDA03453D94B /* RendererRepository.swift */; }; - 54EC61F9628238F1B6D37D4FF59512CA /* AdPixels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B2AC2D19592F1B736A8D102D8339FFB /* AdPixels.swift */; }; - 561241DE74927D282AA59611134AB744 /* CompletePlaybackSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9068A799A39901F7F39F10D5C601D095 /* CompletePlaybackSessionAction.swift */; }; - 5626E652175DE09A41C912700CEFF573 /* ScheduledVRMItems.swift in Sources */ = {isa = PBXBuildFile; fileRef = E31B80BFF936795AA5C4A478B5EE0BA4 /* ScheduledVRMItems.swift */; }; - 574B1C95E826D4C38BDBC0D288AC4F1D /* PlaybackBufferingAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F7AC99EA9BB4DD560CC39E5F17FB477 /* PlaybackBufferingAction.swift */; }; - 576956825AF4CEF6E01F502AA83986CE /* PlayerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12BC3A3102DCD9E277BE83EED4BA3EE6 /* PlayerViewController.swift */; }; - 576E95540935FD51215F2D966D651551 /* Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8B9A3EAC983A1F3AD4EEF2F10DEFC4F /* Autogeneratable.swift */; }; - 57AC145007295E0B470A989A82320B91 /* TimeoutAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C4E82A593F16973A626D9444902FFB4 /* TimeoutAction.swift */; }; - 586A722AF0603424AA1E67BF88125B1D /* Context.swift in Sources */ = {isa = PBXBuildFile; fileRef = 460EE4014DF508E80E9909C09A765B56 /* Context.swift */; }; - 58C34687B7379E6D8B1E2AFF12817BC2 /* PlayerViewController_Clickthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = 157C59D9EEAF74FB49DF533A4A0EB96A /* PlayerViewController_Clickthrough.swift */; }; - 59234FC85E78467491E62792EEC3A463 /* UpdateDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC7D2E96399A20D2A037A08B2082D33 /* UpdateDimensions.swift */; }; - 5990519060F9B1D4E258D000BC84FAD7 /* TrackingPixelsConnector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E3856B1600EE762699254B86EB0F864 /* TrackingPixelsConnector.swift */; }; - 59B008526B7505B38B030E437149BF15 /* Provider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00E473D2D02ED743BBA2265D87BA7287 /* Provider.swift */; }; - 5A1F22FA4E71C3DD7E932434BBAF7DD2 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9C46F677CAD5560EF429BB665A5F7E7E /* WebKit.framework */; }; - 5ACB962E2EA8F3EDE53D0B9032018F30 /* StartAdProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 580C36A4C35AD6E45CD8B40C0E0361CF /* StartAdProcessingController.swift */; }; - 5B26D637FD0CE39DF6F00DFE938380FB /* AdClickThroughAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADBD98169C953D6CF2CABA20C0EC92D7 /* AdClickThroughAction.swift */; }; - 5B990190FA229A3E5505A268EAEF0EED /* SettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF4DFBF6B322DAAC6F3C7584F66B354A /* SettingCell.swift */; }; - 5BD2E625164C8581CF6FA5493A984FD1 /* AdFinishTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB737A73C09729E15EBB1FDD6881B647 /* AdFinishTracker.swift */; }; - 5BEC8C6FC14D8A08F7458CB9CFA7E296 /* VRMParsingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C29B6EF6CA72B2AE2F1676F9AA33B30 /* VRMParsingResult.swift */; }; - 5BEDC30DF92BB79530B8F996D2CF3D06 /* VPAIDProps.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8AF4B34936F1EB07EFDE7EEBE17B894F /* VPAIDProps.swift */; }; - 5C50FCCFAD1150C9213DD5A940356C79 /* VerizonVideoPartnerSDK-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F49D79606778AB04B10A7CAE25C662D1 /* VerizonVideoPartnerSDK-iOS-dummy.m */; }; - 5CF6A28FD6ACF0777146A70DC0327DDB /* AdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045810D2B7A2421CA10E5823AC70CCD5 /* AdProcess.swift */; }; - 5D1E59898F8DF38F5DC58E6469481BEE /* SystemPlayerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5508024C435694DF096810975436E9FB /* SystemPlayerViewController.swift */; }; - 5DE09D4F3B0CF3B6D7DB1DE059B14A90 /* VRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85B6A00D3FF5A49ECF73B009847F2D36 /* VRMItemController.swift */; }; - 5E3CA6B62A4D82A45A89EFCC14E617B5 /* AdStartTimeoutActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45065CB419D5B8B16E450F9D6ACA8FB5 /* AdStartTimeoutActionCreator.swift */; }; - 6089AEFA9C35B41C4D2451E617AC3125 /* AdURLProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62D2F928A95A153287553E0F2C52B5EC /* AdURLProvider.swift */; }; - 60EB3B489A689576898A0B67023F4535 /* AdVRMEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3617B5CDF8A19A1B95090189836DD71D /* AdVRMEngine.swift */; }; - 60F2B2622271AB3BDE4CC8BA336BE96C /* TrackingPixelsReporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D2D12D0F6E4DC32ACB7C8A4C5909C0 /* TrackingPixelsReporter.swift */; }; - 611AD8152DCBBC5C64E0BB3D89EF052B /* AirPlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F576BF45DA2D2CEAEE5EC8E33055357 /* AirPlay.swift */; }; - 61490D750D041E6EF5240F07288A31F4 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B7A13252E76434CAE240DF5FDF6A803 /* Action.swift */; }; - 636D9CE2EC712841C51987DE6F305041 /* Camera.swift in Sources */ = {isa = PBXBuildFile; fileRef = D481555CFF1973E60827AB07E878DC7B /* Camera.swift */; }; - 63F7C1E650736E6FDDB81D0F9C442BC1 /* Command.swift in Sources */ = {isa = PBXBuildFile; fileRef = 653008DFF69EDD47CFEDD60277BAB718 /* Command.swift */; }; - 64B840540E5C15264A728702F7A5F330 /* TrackingPixelsConnector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E3856B1600EE762699254B86EB0F864 /* TrackingPixelsConnector.swift */; }; - 65262E659574751239A2A696B8DAD31A /* AdClickthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12EDBC85553EC56459B4AFFD2BC00DEB /* AdClickthrough.swift */; }; - 65DFD49B5AAE529767D587FDC399F822 /* CompletePlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71EF0C56CC8EBFBA6FAD1C79420B2C90 /* CompletePlaybackSession.swift */; }; - 671A286D6B55C90C386C71A951006949 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B3243A549D845F8EB5894515FA46ECB6 /* CoreMedia.framework */; }; - 67229CDF8CABD40713F1ABEAE88EBE46 /* UpdateAverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC0A6ECF684B52307079B294DA99828B /* UpdateAverageBitrate.swift */; }; - 6A0679DB8BA1C9E2503E07904187F954 /* Play.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6FBFBA8B34E78F824AB8208E18BE62A /* Play.swift */; }; - 6A2C2D3CEEF0869188F368D1CDB22BA2 /* ConfigurationParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB9B1E88711B17F9922543C2A2F45667 /* ConfigurationParser.swift */; }; - 6A67333F205F7AF37406E25F51382907 /* PlaybackFailed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07B7F0918426056110EBF06E940BA82D /* PlaybackFailed.swift */; }; - 6A974AE403708DECE60766C55DCF36BA /* SkipRepeatsDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6907CEA46BBB8EC1FD145706ADFD70D /* SkipRepeatsDecorator.swift */; }; - 6AB895299CEE864298A1D5F28FDC042E /* ContentFullScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = F40F5FE272D009E3E599DC5EF9C07D62 /* ContentFullScreen.swift */; }; - 6B62323C822BF90308A079B0DEAFDF45 /* VerizonVideoPartnerSDK-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 18479E651BED943B21D4094B695CB5C3 /* VerizonVideoPartnerSDK-tvOS-dummy.m */; }; - 6B664EFFBE30CE0D79AB9A0BCB78CB33 /* PlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDC6B6CC5E134FF914417D5AE82D3362 /* PlayerSession.swift */; }; - 6C60EEDDA28C0D271F50B502A6902657 /* Prev.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F7B7A6D0FDE44BD494B6674664FEC9D /* Prev.swift */; }; - 6C85AA01D6E10E8A75147A1495C2D6D8 /* OpenMeasurementActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F775792BB0F7F138F51ECCDE6CA80F /* OpenMeasurementActionCreator.swift */; }; - 6CFFD4429076517B1AB237BFD1370516 /* ContentControlsViewController_Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 305B028A0A4DD7F18F8321CFEE0FDBD3 /* ContentControlsViewController_Binding.swift */; }; - 6D2B7D86BF0BD1A4C644C979DE07C717 /* StartAdProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 580C36A4C35AD6E45CD8B40C0E0361CF /* StartAdProcessingController.swift */; }; - 6D41DCBB8027D4F6A3CDB8165E5DD893 /* PictureInPictureToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = F09FAD92BB59C2212454C4B9252963F5 /* PictureInPictureToggleAction.swift */; }; - 6E151B30D7A6599C456C489EEE671CC4 /* NopAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 414F952D8FE5E66772FF90040BE02D0C /* NopAction.swift */; }; - 6E86DA7FDFDB5AF8338A6F4924EB9BF1 /* BufferingStart.swift in Sources */ = {isa = PBXBuildFile; fileRef = 591465E5AC2A1E0E8A1F7A39A4ACAEA3 /* BufferingStart.swift */; }; - 6F1B34BF617DF30EE9F7884925220072 /* MutePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D23CBF84EED3D47272FBD411AD256DF /* MutePlayer.swift */; }; - 6FAD6FA64362F231445A118A7872DACC /* OMScriptServiceAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FB5C44FCE64ADA3F6C1903590854360 /* OMScriptServiceAction.swift */; }; - 6FDFC88F51CD3DB4FE75A44B0547A82F /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 830BD7927F5A5B95F0FC270FA5349567 /* Result.swift */; }; - 703543F7CEFC7FC0DA16E0840BFA85DA /* FullScreenToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 266584E0D12E576419C89F8C665F8F8C /* FullScreenToggleAction.swift */; }; - 7077B3A548337929F36F8C115FE13B69 /* ContentControlsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91EDACAD20EDFF844EF221278166B3D0 /* ContentControlsViewController.swift */; }; - 70E97439D8E85D67AC6CCCF630C62055 /* Mute.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E4F60CFFBAD58031273A08B1FB9408F /* Mute.swift */; }; - 7224F9484198B6FC39C75ACE7D937674 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B7A13252E76434CAE240DF5FDF6A803 /* Action.swift */; }; - 7229D97DD87226A65B29A96BE7A68F45 /* TrackingPixelsConnector_Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F47F287C07EF34BD266267D64BCEC15 /* TrackingPixelsConnector_Ad.swift */; }; - 725C89C7E23765C6BE1FDEEB96B3D101 /* PlayAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73077F9E15837D0BE8AC62D891A12150 /* PlayAd.swift */; }; - 7266A0E4FAC198E2872B00F47D6D55D8 /* PlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDC6B6CC5E134FF914417D5AE82D3362 /* PlayerSession.swift */; }; - 7280F59A940C498ED72C1C25B28108E0 /* VVPSDK_Version.swift in Sources */ = {isa = PBXBuildFile; fileRef = 833DB4C3BF586BEDB0DEFB403B05442B /* VVPSDK_Version.swift */; }; - 72D7B0E7276B3D9D9ACC050E4703A1EC /* AdManagerPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EFA39CAAC71F8686A1B5B4B1932240F /* AdManagerPresenter.swift */; }; - 7363E5AACD196C0E2EB3179DCA5EAF2F /* Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50CD5E1FF0715F849B022F2418EB4F6D /* Ad.swift */; }; - 73826544382F998EF07A8F1973156C22 /* OpenSafariUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75F8A6BC04E4D383B72DBFC7BF008044 /* OpenSafariUtil.swift */; }; - 73C55CF57A7416321616A1FE1B8FA70C /* VRMRequestStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = D80C9C3213047EE632D9553A4C769DBF /* VRMRequestStatus.swift */; }; - 74AAE34C2BA2641643AA259DC07CB5C6 /* MaxShowTimeActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD08D6027E2F36EF0A5F6EFDA3D0C94E /* MaxShowTimeActionCreator.swift */; }; - 751D41DF848557350F1E1B6044285A65 /* Pods-Tutorial-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = EA9A8A4215A3726A63AB49983F9CEDB8 /* Pods-Tutorial-dummy.m */; }; - 753487C3854869F624D5228D99484B8E /* VideoLoadingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1AB631583E8AD76A39F6CC7107F7982 /* VideoLoadingDetector.swift */; }; - 754D767359459A5F55DC3E25033260D4 /* TimerActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8535B84956F4931055B6BBBF636BCBB /* TimerActionCreator.swift */; }; - 75A10B162057CAD11E34DDC29AB4B357 /* TimeoutAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C4E82A593F16973A626D9444902FFB4 /* TimeoutAction.swift */; }; - 75B55EF35F9BD66A1520D0FC82A60135 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 830BD7927F5A5B95F0FC270FA5349567 /* Result.swift */; }; - 75E3E994CE931256768CBAFE8BF0B212 /* VideoRenderer-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 527E35CB6F5B14E41D788869CFCB38F9 /* VideoRenderer-tvOS-dummy.m */; }; - 7672FED5AB8901D32A3156224E947301 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BCA902E3AC269DF8DEC62A869009AA3 /* CoreGraphics.framework */; }; - 767EFF8A4BFFE1290C4C0692074473AB /* PlayerCore-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CC27E8E52BD7151EBF6FC002EC1B799C /* PlayerCore-tvOS-dummy.m */; }; - 7702C64E51A941868F1E1B2DA57AD2AE /* PlaybackReady.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B5FDA4FF20C0084D03B3909CE8895E5 /* PlaybackReady.swift */; }; - 7735D8F7DFEFFA9386B0CD4E56EAB184 /* SystemPlayerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCC060C24A77FEE9187EF4352F472D6 /* SystemPlayerObserver.swift */; }; - 78077347950326BD223B2C23BDC24938 /* AdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1824C76AAFA51CFCF5207329529D3E4F /* AdRequestAction.swift */; }; - 782547212AFF650FFCDA345D2DDEAEA8 /* PlayerCore-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7270FE10406CFB18B8AD70E6B3477B51 /* PlayerCore-iOS-dummy.m */; }; - 788B1243F01162B655176CF8208D8CED /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDE1011BBF5FC1B0E35740B113722D46 /* Observer.swift */; }; - 79F2FEB7145DE4CB6715F14F34B07A15 /* Metrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9C8E0F248527D418766AEE0447745BE /* Metrics.swift */; }; - 7A13E0342436C7FC245014BCDD321438 /* PictureInPictureToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37C3213BEB4536CCFD8E8A87E74ED35D /* PictureInPictureToggle.swift */; }; - 7A16E9FA222757A6C41208D2710A0D3F /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDE1011BBF5FC1B0E35740B113722D46 /* Observer.swift */; }; - 7B9C4E1A903F25ACB22DAFD8BC65668B /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1BCA902E3AC269DF8DEC62A869009AA3 /* CoreGraphics.framework */; }; - 7BC056B0698C80C217D65870D675756B /* Pods-Tutorial-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AE67484A69A1F7F54757BFEF5CD7FD6D /* Pods-Tutorial-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 7C439187B946B1011C0189C76CE69498 /* PictureInPictureControllerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5AF3EF885CF9EBCAB773C9CBF143175 /* PictureInPictureControllerObserver.swift */; }; - 7D4A496039AD6B4243D582426A3C5AEC /* OpenMeasurement.swift in Sources */ = {isa = PBXBuildFile; fileRef = 935190924972BE2AF78DB5F3DAE1091F /* OpenMeasurement.swift */; }; - 7DCAC45E9B5C960BADE8E239DA3C11D1 /* StartVRMGroupProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EA4FAF0B10D00CFABACD0CBB6149805 /* StartVRMGroupProcessingController.swift */; }; - 7DD57F21EA183894310C0045D513AB02 /* PropsMapping.swift in Sources */ = {isa = PBXBuildFile; fileRef = A64C0FABCA9E69947EF243310565FDFA /* PropsMapping.swift */; }; - 7E37352CF666435C5436D3D115B3014A /* LoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B54B5C1F9391D4606F19BD1DA9B7D9A /* LoadedTimeRanges.swift */; }; - 7E9D9EC26608A704BA98CFB5E04E735A /* AdMetrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B179427181B3AE68DCC0385BC574F87 /* AdMetrics.swift */; }; - 7F910A5084F7E4F772D592C73CC428C0 /* PlaybackModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADEB582B5F68BC8D3108EF44DE73C639 /* PlaybackModel.swift */; }; - 7F989E94BD9CE12CAFDEFE57C4F9DB76 /* JavaScriptObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7753BF54C19FA91D8D8C1291B6D3D94C /* JavaScriptObserver.swift */; }; - 7FBADD910320489CBBCB3A24B76A85EF /* MaxShowTimeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D62111FA2161A911C4D257294125EC6 /* MaxShowTimeController.swift */; }; - 80402A2805A0C06099914A3395E55723 /* VRMRequestStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = D80C9C3213047EE632D9553A4C769DBF /* VRMRequestStatus.swift */; }; - 804069279CF77BAAEBE0BC3CAD0AA832 /* Network.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05934FAF0539FAF4013B7453CFA7BBB5 /* Network.swift */; }; - 810081D05B44116462E133EB1AF8AFAE /* DefaultControlsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1476B71504A734BE72060B7D13F68196 /* DefaultControlsViewController.swift */; }; - 815EE36974566D45C0DEA5D9BE0D556C /* PlaybackDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 095C36F7DA5A2234C11F074566F74C42 /* PlaybackDuration.swift */; }; - 819E06165C711EFB8222B45ED1BEC0EE /* UpdateExternalPlaybackAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73B59DAC509F4D05D438946DA8AB08C1 /* UpdateExternalPlaybackAction.swift */; }; - 824E538D1AE7F3B329AAEDD259A09CF3 /* Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7569F4011689A193E8AC7E9AC31675E /* Autogeneratable.swift */; }; - 83C9B0B498FF78F8876F73CF62781FD5 /* AdInfoHolder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33134BB259E7102EA1B40C5EEBE2777D /* AdInfoHolder.swift */; }; - 83D9B87F8FB8C5C4DC0A0EF4413EFB8B /* OpenMeasurementActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F775792BB0F7F138F51ECCDE6CA80F /* OpenMeasurementActionCreator.swift */; }; - 83EF9828B87D566554FFC3591A69A676 /* UpdatePlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C55A20DE7A6F80012CE7503BF0ED30A /* UpdatePlaybackStatus.swift */; }; - 868BCFC7B5C4921DCA90F84A7C03927B /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E3B4E1870C70D32A712D11D5FD64E49 /* CoreGraphics.framework */; }; - 86CA692BA619065478A474EA8A9F7F3F /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2498FFB356547D3393E6AB2919DFC72 /* Configuration.swift */; }; - 873ABFD9953F4648FE832E47C9C304EE /* Metrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9C8E0F248527D418766AEE0447745BE /* Metrics.swift */; }; - 875C00E43322AC8C659F828C8A127237 /* MuteDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1651E5B23C9B5C51119273716C0BC1E6 /* MuteDetector.swift */; }; - 87DE1ADAFAB07CDE7784435A02F69EF9 /* PlaybackBufferingAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F7AC99EA9BB4DD560CC39E5F17FB477 /* PlaybackBufferingAction.swift */; }; - 880FBB444FBEC616ACC295F9A20FA7CC /* PauseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = E50F435FBA742A8221327B76928F1447 /* PauseAction.swift */; }; - 883A51AE4D662175C2B824D90AF8793E /* TimerActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8535B84956F4931055B6BBBF636BCBB /* TimerActionCreator.swift */; }; - 883AC0196905098E8A7EB9F5708B6025 /* UpdateLoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6F83D60E9328390087D84237A137B8F /* UpdateLoadedTimeRanges.swift */; }; - 88E2AAF59DC620B7C30CCE4C1748006E /* AdClickDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0BCC2D8831B9D16ED8EC0BF7B9ECD68C /* AdClickDetector.swift */; }; - 8945A671CE39BD412370A806324477DA /* Future.swift in Sources */ = {isa = PBXBuildFile; fileRef = D357A84012B47B909CC561C5B448C965 /* Future.swift */; }; - 8A2DCD7BBF0D9F5F09D1854BDAB0E0E6 /* MuteAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 419FB98F68F5B5D8B4B60C3329909E7D /* MuteAction.swift */; }; - 8AD59AD4073687CEA9423E6E2D3CB44C /* PlayerControls-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B1DC63BAB8B93A062D22D6A73E11863 /* PlayerControls-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 8B2ED2121B0782E0C3DBABA9BAD92A79 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2498FFB356547D3393E6AB2919DFC72 /* Configuration.swift */; }; - 8B44DEFDC9B37BCF082981267C60AAA3 /* UpdateLoadedTimeRangesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0CDDCF97523F0787447C919873554E9 /* UpdateLoadedTimeRangesAction.swift */; }; - 8BF6509B4A62A8E1E077A9C2F24B38D1 /* SkipAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDF42DD6E4992C9C46DD8CA3072906E9 /* SkipAd.swift */; }; - 8C6691058BFDF0C85FDBEB94ED629CCC /* VRMCoreNamespace.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6413681FA90F219063CA38DDC4DE44C2 /* VRMCoreNamespace.swift */; }; - 8D2335C78CB98EBBD0EB0F4A3286029D /* VRMParseItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7FCF149223087241FDABE5334FBD85D /* VRMParseItemQueue.swift */; }; - 8D2E0FB65606E8AC4630E4319E554921 /* MetricsSender.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2F23D4A4092AFBBB20BDF9E97B1A15E /* MetricsSender.swift */; }; - 8D69267477D8E9578383E3549A649570 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E3B4E1870C70D32A712D11D5FD64E49 /* CoreGraphics.framework */; }; - 8E2B5B08FE89CB93CA9750FB08CC1767 /* VideoProviderParsing.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3BE20027FBB749F3E16F5B1B2A2CB98 /* VideoProviderParsing.swift */; }; - 917001803DAD8A1C7C631A1602B0EA08 /* VRMCoreNamespace.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6413681FA90F219063CA38DDC4DE44C2 /* VRMCoreNamespace.swift */; }; - 91F71E2EDBDF3A2F974A7F814EC65EE3 /* SkipAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDF42DD6E4992C9C46DD8CA3072906E9 /* SkipAd.swift */; }; - 92634CCCC66432B43B966A7AE188C028 /* VRMResponseModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 460FBEAAB6E657AE8B8ADDDB4D8FEC79 /* VRMResponseModel.swift */; }; - 926421624FD3DBDBB98DAB11B8B96677 /* LoadingImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CA40135221D1AD8B3102017C4C97F6C /* LoadingImageView.swift */; }; - 926608B12B9841184FE70B9C7C09156A /* AdVRMEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3617B5CDF8A19A1B95090189836DD71D /* AdVRMEngine.swift */; }; - 92AC02C6A7ECB0A17F21D8BF220A6265 /* VideoImpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2FF21C1967303926D3FC8E71602DEA8 /* VideoImpression.swift */; }; - 9337459BDF3F7E7F3A06213E97760A62 /* AdStartTimeoutController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF62C2FA51F371B761239A6F4237030A /* AdStartTimeoutController.swift */; }; - 93F189713C509B6C52B22919C2B3A3BA /* VVP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F9F492419060418D4B6B463F6819EC0 /* VVP.swift */; }; - 95202ACC82E32C9889347D584DA11B49 /* UpdateExternalPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8B632F0507A346EC1129210D3DE3BD6 /* UpdateExternalPlayback.swift */; }; - 9561B0854B4F330F9E57D9ECCF1E5A30 /* AnimationDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F851642EED02BB9C483C8068E23A9270 /* AnimationDelegate.swift */; }; - 965F196CD516105917AAA982F403A04A /* VideoProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17EB68FFB215E0C081A98082878FA2AE /* VideoProvider.swift */; }; - 96B86BC6BD1A55889EB6DF46889D5D02 /* AdMaxShowTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B6BBDCF89125EFE1CEAF85D413FA8A2 /* AdMaxShowTimeDetector.swift */; }; - 97485554534AB26DC4E2656FA77B4392 /* VVPSDK.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9EA918DED9C206E59D1F3D951C28CB6 /* VVPSDK.swift */; }; - 9789805FF7F67F34B4E12FDADCFB862E /* WebviewViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3F98CCEF67CF63C75E7D83A6A8F0D303 /* WebviewViewController.swift */; }; - 983220632F3AC3CAD8B3772FC6D2A71C /* UpdateDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 939688037004E5CE1676B7CEBBE9E08B /* UpdateDuration.swift */; }; - 985F06CB507272ED65332F6A35C32CB4 /* AdPixels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B2AC2D19592F1B736A8D102D8339FFB /* AdPixels.swift */; }; - 98D0EF0352531CFCA392FDEE8CA15E5F /* PlayerTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7181A94DC797B9E262A7B2ADA8EC979E /* PlayerTracer.swift */; }; - 98D6AEC3F9C0EC5314C9F19E3A7C3BF0 /* Future.swift in Sources */ = {isa = PBXBuildFile; fileRef = D357A84012B47B909CC561C5B448C965 /* Future.swift */; }; - 9963215E78EAE510BD0A42EFF0A34810 /* AdManagerPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EFA39CAAC71F8686A1B5B4B1932240F /* AdManagerPresenter.swift */; }; - 997CB905AA4186D219288BF65E219343 /* SelectVideoAtIndex.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFF5225C2B850F1A950D899E1AA0B4D1 /* SelectVideoAtIndex.swift */; }; - 99AE48EE5A32E8088A6A1826F35DD0E0 /* PauseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = E50F435FBA742A8221327B76928F1447 /* PauseAction.swift */; }; - 9ABC1A9CD47F0AC7998A881E16D2352E /* VRMCoreAdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B989F2B2C92E5E5D1FABA5217152569 /* VRMCoreAdProcess.swift */; }; - 9B30E725CA533D9C0C4C018F5B0FE88C /* VVP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F9F492419060418D4B6B463F6819EC0 /* VVP.swift */; }; - 9B4CCF9E86A2ED827FB49480E210C292 /* AdVideoControls.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA4C6ECC6D31F0FF4BA1BF40329BC9C /* AdVideoControls.swift */; }; - 9BF1AAF936E71EE703C89C52A19A0D99 /* VRMCoreItemSchedulingActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40F2BE31DF0818B8128A0AE60E6309E0 /* VRMCoreItemSchedulingActionCreator.swift */; }; - 9C06F4D2BE6ACCAEB0654AB1784AA4C1 /* SkipAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9F276588C10024B75D1C6630E40505C /* SkipAdAction.swift */; }; - 9D19D5D5D20CD1B7E17DD300FBF1AEE1 /* PictureInPictureUpdateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A391B11F749C6DE8AA14A316C6274FA /* PictureInPictureUpdateAction.swift */; }; - 9D58E1973DDBEB3AD69EA4B10CA642A1 /* OpenMeasurement.swift in Sources */ = {isa = PBXBuildFile; fileRef = 935190924972BE2AF78DB5F3DAE1091F /* OpenMeasurement.swift */; }; - 9E36C9AED67E4E1C2882AE0CA23D1435 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B008AB6E6681D244A054584E886ED1F /* Action.swift */; }; - 9F4C55AB93D8CDB71F0A175F106161A3 /* AdKillAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F1D30730DED4F86AC121BF0EE8F0E2C /* AdKillAction.swift */; }; - 9FDD5FE31D13925992BD59313EB3B226 /* UserActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4447F37C1E639EE2BD134D0A4687AE98 /* UserActionsDetector.swift */; }; - A0F3B7B602F5C9D14A4FC5821265291F /* SlotOpportunityDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 062D2F46B54C74934ED7F20311DB9D55 /* SlotOpportunityDetector.swift */; }; - A2D2D0FFAA2BF21B7F46C92C097BA718 /* AdURLProviderProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED32760CD4C760EDD487654D2FBB7488 /* AdURLProviderProcess.swift */; }; - A2DAE554008815290998A0DCD9E98E82 /* MediaCharacteristicRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42D4A577AEB49F55EA13D04331B0F5C9 /* MediaCharacteristicRenderer.swift */; }; - A348566FC91AD92CCB6344C69732D4B3 /* Thumbnail+VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = B796C049CFF147D59B8F186968C41DEC /* Thumbnail+VideoProviderResponse.swift */; }; - A352427BFE13A5AE8D3B362C020BDB34 /* VideoActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11907EA3ECC1DB9250FBE5CE3CE0C536 /* VideoActionsDetector.swift */; }; - A35659820B2A4DA48DF7F1F3A0F1E397 /* ReporterTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 767D9ED69DF4003267430D9F61522F96 /* ReporterTracer.swift */; }; - A44463BAA7F4D29A8F0C5C1BB80B3056 /* ContentControlsUIProps.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FAEF47788187F0CD57AC4D4CF6599CE /* ContentControlsUIProps.swift */; }; - A4F1BFFD2849EDF67930793169C63DBB /* PlaybackDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 095C36F7DA5A2234C11F074566F74C42 /* PlaybackDuration.swift */; }; - A535D1D28C6B3BD5D7D7B41CF4643112 /* VRMCoreStartGroupActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83310F3D198D2939833F53952B6A4156 /* VRMCoreStartGroupActionCreator.swift */; }; - A5A5E6C8654CBE54FEC16839A84B49CD /* Seek.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBE4FB5C1CFEBB5DEA7CE979BEC54D95 /* Seek.swift */; }; - A5B2277F5FB11FE122623E91F9B27F59 /* ShowAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF40E1EA3BF7952E005C0ACCDF04E953 /* ShowAdAction.swift */; }; - A6191FCB11F1DBF1CC3C1A369C44DEE4 /* Thumbnail+VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = B796C049CFF147D59B8F186968C41DEC /* Thumbnail+VideoProviderResponse.swift */; }; - A64B91185C7E51D5E334DE93690FABBD /* AdMaxShowTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B6BBDCF89125EFE1CEAF85D413FA8A2 /* AdMaxShowTimeDetector.swift */; }; - A6E5CD546F9A1551C12AA522E86C6D56 /* Defaultable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45B8CC8C4DFFA0CA503B15C61B25D46F /* Defaultable.swift */; }; - A70C034A3ECC8997EF999057A38B7953 /* VASTParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C7E8BBB6BD3ED268CACBA696E83C390 /* VASTParser.swift */; }; - A85080D27D9368452EF8253C6D69196A /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07B08EC998BDA37104785E3CD5D2C180 /* Observable.swift */; }; - A85347B3EEBADE9AF232B1BDDA7EB037 /* Store.swift in Sources */ = {isa = PBXBuildFile; fileRef = 325E13FDD260C6ABBA60B2A93B136F58 /* Store.swift */; }; - A88EFA686056AB080B3624D1D2567E10 /* UpdateExternalPlaybackStatusAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3512E99680627AB754AF4DF7DFC6BF4C /* UpdateExternalPlaybackStatusAction.swift */; }; - A8BEB516D16ADC0C098686FFD04A6780 /* Camera.swift in Sources */ = {isa = PBXBuildFile; fileRef = D481555CFF1973E60827AB07E878DC7B /* Camera.swift */; }; - A914CBAB9CBB474EA6C8C3922947FD73 /* AverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 512BE73014C347312723D1227DE336B9 /* AverageBitrate.swift */; }; - A9A33D347F2B56C365875A1C8E4E5A80 /* UpdateDurationAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 462489537F00B6A09CBDDCCA4C97CBB4 /* UpdateDurationAction.swift */; }; - AA8050356EFE2BECB311137E76150828 /* AdClickthroughActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = D521315A396FE12F6AE3BF25EC18CE64 /* AdClickthroughActionCreator.swift */; }; - AAF829A2CDEEC51DFE0F892B12AD8CF0 /* Props+Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 093B6082E73E5596B3859CAB3C9F03CE /* Props+Autogeneratable.swift */; }; - AB8F0312F28EC10F9C263695A1DB0B16 /* UpdateViewportDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66E0E902192C72B907A32BABADE0D397 /* UpdateViewportDimensions.swift */; }; - AC9A77B644956251A0CBD53693643A2D /* VideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B05BA6B252496D76FA213610874800F3 /* VideoStreamViewController.swift */; }; - ACA47D8C980D32286B5305F3244D1606 /* UpdateCurrentTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 001DF36A9EFCD0DCE34D82D1A1B6E40C /* UpdateCurrentTimeAction.swift */; }; - AD564921C2FCBE54F6C724C333906987 /* UpdateAverageBitrateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = E85308E7ECE202777E327F862E1A1CFC /* UpdateAverageBitrateAction.swift */; }; - ADAC20AA039B1C3FAF1AF88482724201 /* TimeFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = C3F64BD34BB3CAA8B72641992CBEB342 /* TimeFormatter.swift */; }; - AFB6176632219E743E914977941F63B7 /* DecileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3EC4B7840232ABAC87ABCC542A8A1B4 /* DecileDetector.swift */; }; - AFB6DB7BB06F3898678D840AE3905975 /* CompletePlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71EF0C56CC8EBFBA6FAD1C79420B2C90 /* CompletePlaybackSession.swift */; }; - B21C9658870D95A139D7DC69F8B01682 /* SphereVideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57C586F3179E8D955CCFCBAA8E680BA7 /* SphereVideoStreamViewController.swift */; }; - B29902498601F8AC445B9DA5C564210A /* UpdateViewportDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66E0E902192C72B907A32BABADE0D397 /* UpdateViewportDimensions.swift */; }; - B2E55381820EB4698EF4A5ED6A2BF380 /* CompletePlaybackSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9068A799A39901F7F39F10D5C601D095 /* CompletePlaybackSessionAction.swift */; }; - B39DB5C87E8A7D1C7B9905FFBEEAE5C9 /* UserActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF416E7292827AC9BF388D5EE1234AF2 /* UserActions.swift */; }; - B3FEE25AB11A9634FC07784832DBE74E /* Pods-Tutorial_tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6A74691E00AE97156DF472620CEAA522 /* Pods-Tutorial_tvOS-dummy.m */; }; - B415A9002414F3D92058F5A3AD93C925 /* AdMetrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B179427181B3AE68DCC0385BC574F87 /* AdMetrics.swift */; }; - B45A9762837368D3C53FDE78DAC35C2A /* AdCreative.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0B502E0086AF90E1ED7C3CE0777B86A /* AdCreative.swift */; }; - B4D0E9BD5459B9AE441999F3A775BD28 /* Memoise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54A2866430B6EF9B4B6981E56B8FCE0B /* Memoise.swift */; }; - B568BFD14227E6AEEEF784024D273823 /* Nop.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B48433E6E9ECCE607F953FA02773B10 /* Nop.swift */; }; - B570B1E7873ACF4A2AD4F273DF27B4B9 /* UpdateMediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A351B422A76CE5A963A40F8E2C2489C7 /* UpdateMediaOptions.swift */; }; - B6401C13FC39DA8A8B07741C0054B801 /* RendererDescriptor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBA68203FA38A75D2E16ECCAFD80F12A /* RendererDescriptor.swift */; }; - B6872D2A74D8BCD39E9D4BE871CF6359 /* EndPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1254F86FCA694BEC7D513BFED2755C16 /* EndPlayback.swift */; }; - B6A148796160E8C42B8C0EE954C56361 /* VRMCoreAdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B417B3CB95F5039AFCB350F4F2A5C126 /* VRMCoreAdRequestAction.swift */; }; - B71F595A0FCF708FC34DBFBEA9F70E32 /* JavaScriptTelemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB47FFE162435F98B1E42218D37D636C /* JavaScriptTelemetry.swift */; }; - B76ED00DD8B8C88F330ED381F84D7BDD /* AdVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33C386ABBAA954DD9C8CFE5CCD90135A /* AdVASTModel.swift */; }; - B80C4C5EF6C905FF6328C234D0053BB9 /* Pipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D87489F4BBC6FE65A87411F99402FA8 /* Pipeline.swift */; }; - B8586FA419C449F217F2F7A15CCA2045 /* IntentDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19F6264CC0766D089541CDF6CEF3D79E /* IntentDetector.swift */; }; - B867465E1A3CCD3143BC37ABF3B2C373 /* OnMainThread.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C8C9ED50FCB47458EBAF2F21528DA7F /* OnMainThread.swift */; }; - B89B36F004F94D65988A30716408E613 /* Thumbnails.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B7BE45CA8617D5B741107076225FED6 /* Thumbnails.swift */; }; - B8ED6FDDAC3EE4D3E9A4827509E7C318 /* SeekerControlView.swift in Sources */ = {isa = PBXBuildFile; fileRef = CBE2DC1A2F83392F9BDD282859EB7524 /* SeekerControlView.swift */; }; - B900EDEDDD0D4FB8B4D76806E21F0243 /* Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7569F4011689A193E8AC7E9AC31675E /* Autogeneratable.swift */; }; - B90E8EA754EC3A21D7B189F6496B0E32 /* VRMCoreAdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B989F2B2C92E5E5D1FABA5217152569 /* VRMCoreAdProcess.swift */; }; - B93BC716FCE612BEEDC7A5B3D4E9C341 /* PlayerInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDA3FC630C5849D50050741BECEFA3CE /* PlayerInterface.swift */; }; - B974D90A6F0438B41941A05337EDA13F /* VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35685494010513F5E016E563F55A3A1A /* VideoProviderResponse.swift */; }; - B9AB5A517EB0A96F549CE986D8EEDB9B /* FullScreenToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 266584E0D12E576419C89F8C665F8F8C /* FullScreenToggleAction.swift */; }; - B9C6CBFB51E6AFE4DF8AC66232B4871A /* PlayerTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7181A94DC797B9E262A7B2ADA8EC979E /* PlayerTracer.swift */; }; - BA86E55950D7702EC253A44CEF3DA22F /* VRMCoreAdResponseActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F77164A2A36175243E1F3077B2A2256 /* VRMCoreAdResponseActionCreator.swift */; }; - BA8F937C416094D10BB8DD8B43DBC014 /* Player_VideoEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D928F9ED58045C85847C06519DAA55F /* Player_VideoEvents.swift */; }; - BB339F27F05E8FA7F194804CE699C67D /* ErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52B058E513D4B95189C2216295A4F6BB /* ErrorDetector.swift */; }; - BB539E60616326A86B45399748929FC9 /* UserActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF416E7292827AC9BF388D5EE1234AF2 /* UserActions.swift */; }; - BB594EC8ECA9B448ECF3C04466D5CCA6 /* VVPSDK_Version.swift in Sources */ = {isa = PBXBuildFile; fileRef = 833DB4C3BF586BEDB0DEFB403B05442B /* VVPSDK_Version.swift */; }; - BC4D9776A0AA59344DCBC3324A896333 /* UpdateExternalPlaybackStatusAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3512E99680627AB754AF4DF7DFC6BF4C /* UpdateExternalPlaybackStatusAction.swift */; }; - BC8C21F8575139A12EE284E17FFD60F5 /* Stub.swift in Sources */ = {isa = PBXBuildFile; fileRef = 149FDBE670D31BBD5C59691364C96F07 /* Stub.swift */; }; - BD8C1471802CF8DFE22B318C253007B5 /* VRMTopPriorityItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0DEBB8DB976D1C444796C7EB6B6F1CB /* VRMTopPriorityItem.swift */; }; - BDC128185F1FF90850214F4B3CA39991 /* ControlsVisibilityController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D82CAC87CFDBB09552BB04C050C8350 /* ControlsVisibilityController.swift */; }; - BE1F306ACD4C8080FA8E0042111E616F /* UpdatePlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33D8666A2774E4D3A1C8B150C0C39162 /* UpdatePlaybackBuffering.swift */; }; - BE28FBC8D1D76F927498DF0ABF15DB1E /* UpdatePlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C55A20DE7A6F80012CE7503BF0ED30A /* UpdatePlaybackStatus.swift */; }; - BE2C8A2CD5E28CC39B0FB83A4A6399DB /* UpdateCameraAnglesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A52D24C8F45218D77091971D0242B196 /* UpdateCameraAnglesAction.swift */; }; - BE6A6E56F799EC3444BC48C7BC7F8686 /* BufferingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 379EE81D1FE68F7A64AFCA5A1F97168B /* BufferingDetector.swift */; }; - BED29E42289F542EFBAF8D6137EA69C7 /* VRMRequestController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E809348BADE894A19CE912BEA3D0E70 /* VRMRequestController.swift */; }; - BF2206C9C9113F1D082FAC1119E6C5CE /* UpdateMediaOptionsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = F26EABDAC23795CBA1B2E2E39593E1E9 /* UpdateMediaOptionsAction.swift */; }; - BFDEA87B5F94B4CDCF918C56E67C4A91 /* ReporterTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 767D9ED69DF4003267430D9F61522F96 /* ReporterTracer.swift */; }; - C11653EF04EF3E073E0649148F6BF33A /* EnumPrism_PlayerControls.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A30F7CC00D7A8023A5E11DFDB2693CA /* EnumPrism_PlayerControls.generated.swift */; }; - C18192B550F3EFF10EFE17B9323F03D0 /* VPAIDEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B599A9D718C8A78602A75080BFA991D /* VPAIDEvents.swift */; }; - C1D1E0340BF4ECE3B3B47775D008772B /* MaxShowTimeActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD08D6027E2F36EF0A5F6EFDA3D0C94E /* MaxShowTimeActionCreator.swift */; }; - C2138D104B9F21CF1A495F13E4FC9386 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFD4E2A1F2C8543C4DD923E3EB9CE476 /* Timer.swift */; }; - C2AB636DE2DF993A8D54B7269D9E66D7 /* Replay.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00260DDC45913DA4E36C1289BD6B68C /* Replay.swift */; }; - C2C5A553771736C20D0B2F2C95F1C261 /* OMScriptServiceAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FB5C44FCE64ADA3F6C1903590854360 /* OMScriptServiceAction.swift */; }; - C330EC2C3E2279565C2845C6F848CBD6 /* Pods-Tutorial_tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E695600957630B8096B0C777B2210AA1 /* Pods-Tutorial_tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C333DB6CE9DBDB5061FDF8DBF3343D34 /* ContentFullScreenToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94CBB443128BFDB72D523F89C04AA872 /* ContentFullScreenToggle.swift */; }; - C36B27350E987567C9A42225854B99FF /* SystemPlayerViewControlller_Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8153174B6D0D53E9A16F820816F5080F /* SystemPlayerViewControlller_Binding.swift */; }; - C3CA370E5BE5A92B315988DE0D9F4C95 /* ExecuteOnce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6410E471D1AA561B297ABE0AC6AEA0D6 /* ExecuteOnce.swift */; }; - C454C41949A0BEF13FD0B987B18EE3E8 /* VRMProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51A0FDF6422A78BE1D7C8EA259117B83 /* VRMProvider.swift */; }; - C467568DEDDAEC92731CB0C6D55B71B7 /* SystemPlayerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCC060C24A77FEE9187EF4352F472D6 /* SystemPlayerObserver.swift */; }; - C4D2186B6628373FB51BA59B0DB6CC6D /* VideoTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79EA22D311E6C24766AEB0E0C0F7E3B7 /* VideoTimeDetector.swift */; }; - C51BA6B2352B0F5BBFC803A357739685 /* ContentFullScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = F40F5FE272D009E3E599DC5EF9C07D62 /* ContentFullScreen.swift */; }; - C52CD746B9EA8961518FA9D538E1EA91 /* AdFinishTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB737A73C09729E15EBB1FDD6881B647 /* AdFinishTracker.swift */; }; - C55BF3FEEA235947B0C63143DB269535 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = B82DD30BE9F79FA625F8AE6D0706E90E /* Utils.swift */; }; - C599758B9BA5F7A421534AD715F00DAA /* ApplyDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC6A3C2D0EADAEB667FEEFE1FA946048 /* ApplyDecorator.swift */; }; - C5F3A687E9D36889A18A8D30633DDDDA /* UpdateRateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C3AE3798C23665787D3E776DA4253ED /* UpdateRateAction.swift */; }; - C602E0EF49A2B015CD5B1371229CD1A6 /* VRMRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F5ACB7DBB7483D437A0956F2D5BCAFE /* VRMRequest.swift */; }; - C7AAE2DE6D77DB14AEE7CD75961005C8 /* NonEmptyString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 660B5B38F90681D95AC2007826F46171 /* NonEmptyString.swift */; }; - C86EF0B9D0D045AC789B3C7FE546D6B6 /* AdKill.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60B9F3F5BB432696D504C5B6C51A1554 /* AdKill.swift */; }; - C882F50588C06FE73F44AC908520067E /* SkipRepeatsDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = E6907CEA46BBB8EC1FD145706ADFD70D /* SkipRepeatsDecorator.swift */; }; - C8F598BBC6B73A799F0D29590DFBAEC2 /* VRMParseItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7FCF149223087241FDABE5334FBD85D /* VRMParseItemQueue.swift */; }; - C9503864830FEDF362F56B5C46BDC3F0 /* MaxShowTimeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D62111FA2161A911C4D257294125EC6 /* MaxShowTimeController.swift */; }; - C96893DA1F85C83AB908492A0ACFAB54 /* VideoSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = D30BEFD5ADDA7C97D87EFF200546858D /* VideoSelector.swift */; }; - CA1D7CD2C7D48E8D97DAA812BC76024D /* VRMRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F5ACB7DBB7483D437A0956F2D5BCAFE /* VRMRequest.swift */; }; - CA61620697526B2DA28737996EC4D213 /* VRMCoreItemSchedulingActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40F2BE31DF0818B8128A0AE60E6309E0 /* VRMCoreItemSchedulingActionCreator.swift */; }; - CAB6D555CF66C7EF4EB1FBCCC95ADB82 /* UpdateCameraAnglesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A52D24C8F45218D77091971D0242B196 /* UpdateCameraAnglesAction.swift */; }; - CB07AFF93CA860968C77FFE34B6E3DBC /* VRMCoreAdResponseActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F77164A2A36175243E1F3077B2A2256 /* VRMCoreAdResponseActionCreator.swift */; }; - CB1E023786954B0B9243654AE1202A46 /* ShowAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF40E1EA3BF7952E005C0ACCDF04E953 /* ShowAdAction.swift */; }; - CB6ED46A31D64FA81C6A9665FA922513 /* VRMProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51A0FDF6422A78BE1D7C8EA259117B83 /* VRMProvider.swift */; }; - CBC1EE7707A417CA9E6368679D6B93FF /* PlayerInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDA3FC630C5849D50050741BECEFA3CE /* PlayerInterface.swift */; }; - CC16C9000E68C39E7B5D0B4898539E1B /* UpdateLoadedTimeRangesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0CDDCF97523F0787447C919873554E9 /* UpdateLoadedTimeRangesAction.swift */; }; - CC195A3CE73AFD5104349215B7655D7D /* Network.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05934FAF0539FAF4013B7453CFA7BBB5 /* Network.swift */; }; - CC57597E4951B8FD37A72617D7C3BDB8 /* ActionProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FAD7A57BEB02007887CC8FADDBB58B1 /* ActionProtocol.swift */; }; - CCFD9BC48B025EA1D61995002B4FCAE7 /* AdStartTimeoutActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45065CB419D5B8B16E450F9D6ACA8FB5 /* AdStartTimeoutActionCreator.swift */; }; - CDB7FE3091FCEA6D6DC6A69FD5A11A26 /* QuartileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99BB873A027712E55EE7035DA0FD8309 /* QuartileDetector.swift */; }; - CED361B2AEFA34284169A92EA917A7B9 /* AirPlayView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5851A4EB47BE6E9A1D0038CFA0E2E78F /* AirPlayView.swift */; }; - CF604B61417DB95D5F96C996D365C21B /* VideoContextPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 904616F21DAB78E2183750398701150C /* VideoContextPresenter.swift */; }; - D06A8F985BC4A1C7FF9BFBE570427981 /* PlaybackReady.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B5FDA4FF20C0084D03B3909CE8895E5 /* PlaybackReady.swift */; }; - D0DB75B6736CD06F93A6E59E87887090 /* SelectVideoAtIndexAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D71948F19056E7FE4D5EFDD84D95B0 /* SelectVideoAtIndexAction.swift */; }; - D112995408DEA3BF2932CB2CD9F822EF /* MidrollDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = EB771E978CA41E639189F89D52A9C09A /* MidrollDetector.swift */; }; - D148F5F1CD2BE312BE7300CF9B4A9E0C /* SkipAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9F276588C10024B75D1C6630E40505C /* SkipAdAction.swift */; }; - D14AB719A4D9E48F49DA642F05340DAC /* UpdateCameraAngles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C20B6FA2D026F5770896C70DDFFFADF /* UpdateCameraAngles.swift */; }; - D20E04FAFC7F4FC96D312C0D6B1BC598 /* AdCreative.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0B502E0086AF90E1ED7C3CE0777B86A /* AdCreative.swift */; }; - D228A3ECD044FD3B853958F22AAAAE1A /* Progress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A383559DAE3DB38D22E11A5AC4F023B /* Progress.swift */; }; - D2CDE4C1FF11EA31C36C56E89CB07140 /* ContentFullScreenToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94CBB443128BFDB72D523F89C04AA872 /* ContentFullScreenToggle.swift */; }; - D3804E7B7A18CD530E6A251763CE2257 /* PlayerProperties_Init.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74F7848AF57F43793F63A03F543441C9 /* PlayerProperties_Init.swift */; }; - D410F9264EBE83E3B2D276D211548798 /* UpdateAverageBitrateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = E85308E7ECE202777E327F862E1A1CFC /* UpdateAverageBitrateAction.swift */; }; - D55BFF83F9360DC6775F2DF5B1927923 /* PlayerCore-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5E2A049DBA886FBA028CA9731F85A05C /* PlayerCore-iOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - D609A14ACF7043D24C255437EDD5C8EE /* AdVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33C386ABBAA954DD9C8CFE5CCD90135A /* AdVASTModel.swift */; }; - D654CEA889E0E55267BD98777B8C05EF /* FetchVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 170C4A929624ABA3F1B5147254FBBBBB /* FetchVRMItemController.swift */; }; - D6849869AC51B0F3856853AFFF74087C /* ContextStartedDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF871486FBC7DACBF9496DA298FD380 /* ContextStartedDetector.swift */; }; - D685537952DC8E999C86D88BAEB83FA4 /* UpdateExternalPlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3E375E20D4CA38592494A8AD33620EE /* UpdateExternalPlaybackStatus.swift */; }; - D685AEEBF9DBB5AACA199900127C4FDA /* OpenMeasurement_Tracking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85AC1AA457E993D50F4BE64B2939C767 /* OpenMeasurement_Tracking.swift */; }; - D703AF1B8547C35FA355583A71B92E52 /* VideoImpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2FF21C1967303926D3FC8E71602DEA8 /* VideoImpression.swift */; }; - D799E2E2430637FB3C81249B5EFE5518 /* State.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFCD08872ED4FD44C60DEAF7D668601E /* State.swift */; }; - D845DD6D84F412371186932C28E9EC3B /* ApplyDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC6A3C2D0EADAEB667FEEFE1FA946048 /* ApplyDecorator.swift */; }; - D90350C62F70137D1613F37E82436F6D /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFD4E2A1F2C8543C4DD923E3EB9CE476 /* Timer.swift */; }; - D923D268EBA52E100A7C5877E67BFBA5 /* VPAIDState.swift in Sources */ = {isa = PBXBuildFile; fileRef = F80415A24D033D1D3F40A31C084CECC9 /* VPAIDState.swift */; }; - D9E1B4356864E838A2B6F4888FF8C3BB /* Dictionary+ParseJSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E2C03D6509FB40036F616C507D86022 /* Dictionary+ParseJSON.swift */; }; - DA04C65A2AF1B267E0B6592DC48EF96E /* Replay.swift in Sources */ = {isa = PBXBuildFile; fileRef = D00260DDC45913DA4E36C1289BD6B68C /* Replay.swift */; }; - DA3DE223786A80A5EE6166C2D39E497A /* SideBarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FFFE0E92CD798E90F0EDA7EB5C36763 /* SideBarView.swift */; }; - DA57D33D93CB886A7E3A593ACD5368AE /* Telemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64FA5380686BEFF579D227DE32B9EC70 /* Telemetry.swift */; }; - DAFE9947962958E1B9A50B8C1F678064 /* InteractiveSeeking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46B981960585FF391251AEC8976ACFCD /* InteractiveSeeking.swift */; }; - DB17FF5D9256E73C2CE0DE8C24972D94 /* VideoProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17EB68FFB215E0C081A98082878FA2AE /* VideoProvider.swift */; }; - DB96275AB909816E6486FA2B4BA34414 /* AdViewTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7262EE76D79C6E07F4892C2ABEE2E868 /* AdViewTimeDetector.swift */; }; - DCAE778FF9736054630FA02695B5C78E /* Provider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00E473D2D02ED743BBA2265D87BA7287 /* Provider.swift */; }; - DCC35D3A47B757A6DE5ED606CD6CBD90 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D139E9F005DCF621ADA8FFAA1CA71CC0 /* CoreMedia.framework */; }; - DE091B9CFEB939C0D1644DF65904A44F /* Playlist.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6C00520495895A29A48A2574D0DF87C /* Playlist.swift */; }; - DE7E76AD06EA03D8A39F2894C5288A06 /* OpenMeasurementServiceScript.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1F5098F9297DD3B239FFBF84AF87F044 /* OpenMeasurementServiceScript.swift */; }; - DEBD181F1D35EA5DF384DAAF1218309A /* PlayAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5659F0C868F2180006EA558B4CAF3C78 /* PlayAction.swift */; }; - DF37EB5B10ABA5BF193B1C31D5588199 /* VPAIDActionCreators.swift in Sources */ = {isa = PBXBuildFile; fileRef = 714D5633E023D5949BA5628775D78B0A /* VPAIDActionCreators.swift */; }; - DF85FD79B0BD44532174C032F25C6B5A /* VRMFetchItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3569F7E8315224CF7FD04F6F980025E5 /* VRMFetchItemQueue.swift */; }; - E01A6D54217AA776244E37CED6833A91 /* UpdateVPAIDAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A520BAE313A08EDD77FF55F02A1A9A1B /* UpdateVPAIDAction.swift */; }; - E0BAF7445A4CFB72EFDE4B1F63E8BBAD /* Mute.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E4F60CFFBAD58031273A08B1FB9408F /* Mute.swift */; }; - E236080F5559A7285D5727B91C5FB225 /* PlayAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73077F9E15837D0BE8AC62D891A12150 /* PlayAd.swift */; }; - E29D42E778CD6317794F91A8C61B6ED9 /* TimerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = E720E2440EB170B1FF5F477CD2CF2A57 /* TimerSession.swift */; }; - E39E70FD3923AD14B878EE215D34876B /* UpdateRate.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA154198FD701259B07985D457DD34AF /* UpdateRate.swift */; }; - E3F1333C4C261699A2405E0EB1D540B9 /* PictureInPictureStatusUpdate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 81DD3E91194AA98FE2439FADE4AC0E52 /* PictureInPictureStatusUpdate.swift */; }; - E4141454040FA34B7E7EBD594A497804 /* UpdateRateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C3AE3798C23665787D3E776DA4253ED /* UpdateRateAction.swift */; }; - E4DE9136AF28DD0E072BEF91DBC55DAD /* NopAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 414F952D8FE5E66772FF90040BE02D0C /* NopAction.swift */; }; - E51D8F8C542D5B75617FCB14A3161092 /* VideoContextPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 904616F21DAB78E2183750398701150C /* VideoContextPresenter.swift */; }; - E61F5C6655435E0F5676AD1A52FE13F4 /* TimerAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EE0E53726C52234015F82E6B738A6A /* TimerAction.swift */; }; - E6C2795F68E4C6F07D9ADBE1ABA3C601 /* VRMFetchItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3569F7E8315224CF7FD04F6F980025E5 /* VRMFetchItemQueue.swift */; }; - E6DF392B232A2B54BC81BB803A8B61C5 /* NonEmptyString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 660B5B38F90681D95AC2007826F46171 /* NonEmptyString.swift */; }; - E6F15D510872E88D0BB4B9B299FFDEFF /* RendererRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8557DD8B41AF0A9A27E0BDA03453D94B /* RendererRepository.swift */; }; - E764A26140EF92E54FE5E445A98C4D49 /* AdStartTimeoutController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF62C2FA51F371B761239A6F4237030A /* AdStartTimeoutController.swift */; }; - E785BC59A93055BF909176830403CF9B /* VRMCoreVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28AA53DD58EBA4F9D20A8F3F6B4819D6 /* VRMCoreVASTModel.swift */; }; - E87C2623FE68CF8A4D080CA503605750 /* PlayerProperties_Init.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74F7848AF57F43793F63A03F543441C9 /* PlayerProperties_Init.swift */; }; - E87D6E19AB33E33C2139383334BD0A3D /* MuteAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 419FB98F68F5B5D8B4B60C3329909E7D /* MuteAction.swift */; }; - E8DAF764FFF48A0416D531AC2EB7DBCB /* SettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3218AD1998D67188CEED8A2C62E26403 /* SettingsViewController.swift */; }; - E8F79D80A5C11B48273AD62738E1269B /* UserActionInitiated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26D6DCCC3E2FB48015E6BDC2891B7DF4 /* UserActionInitiated.swift */; }; - E98738036A6774ED7CA6CBEC478D1749 /* VASTWrapperProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = E638C9D630901ED04E17BD40FA99DF35 /* VASTWrapperProcessor.swift */; }; - E98D872C694155D0F4A73258814A5497 /* VRMRequestController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E809348BADE894A19CE912BEA3D0E70 /* VRMRequestController.swift */; }; - EBC53C0E6513887523FBDD3E98267B9F /* UpdateVPAIDAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A520BAE313A08EDD77FF55F02A1A9A1B /* UpdateVPAIDAction.swift */; }; - EC1BF78D63273055F195186552F51639 /* VRMDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 956CA8903BE26CEB879A446119E31306 /* VRMDetector.swift */; }; - EC6D277024F1DE148BB0D6A1A706A9DE /* PictiureInPicture.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6D079AC9494A3CBF205BC2D6A6E46C4 /* PictiureInPicture.swift */; }; - ED62FF017DA3474C5337E09FE6BA7940 /* MediaCharacteristicRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42D4A577AEB49F55EA13D04331B0F5C9 /* MediaCharacteristicRenderer.swift */; }; - ED8F5384B789910AA98756A12ACFE479 /* PictureInPictureToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37C3213BEB4536CCFD8E8A87E74ED35D /* PictureInPictureToggle.swift */; }; - EDEDB7039D6879D8A6FBE3FBB1F81429 /* OpenMeasurementAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E4F338D5383965D04E52E8DDC0FA692 /* OpenMeasurementAction.swift */; }; - EE2A7C42A5F2E813AE9F0B0D41229297 /* CompletePlayerSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2BDDD87D3B494A96246E20440F479F8 /* CompletePlayerSessionAction.swift */; }; - EE308BD38A2DD0A46A1234B5BE149991 /* UpdatePlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33D8666A2774E4D3A1C8B150C0C39162 /* UpdatePlaybackBuffering.swift */; }; - EEFE5908D50DAD08E3DD93F6581610A1 /* Viewport.swift in Sources */ = {isa = PBXBuildFile; fileRef = D96C8D4C2E1B6AC5850E03D6F9BA3A47 /* Viewport.swift */; }; - EFD70A4E2C9E7EE424F9510252FDB171 /* XMLParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = E59632BF977DAE7576AFBB52C77BB28F /* XMLParser.swift */; }; - F1719AEB6744B837D4052CAD60659F1A /* UpdateDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBC7D2E96399A20D2A037A08B2082D33 /* UpdateDimensions.swift */; }; - F1AF3F7932E77F4E99A3DCE75AA05459 /* VideoRenderer-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BE2B607441CD8C92D380169E6DDA6AAD /* VideoRenderer-iOS-dummy.m */; }; - F2ADBC422677F8B28C72118DF1F5818C /* TimerAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29EE0E53726C52234015F82E6B738A6A /* TimerAction.swift */; }; - F2D04E35659945ABB4D0C2B8EC4F233C /* Next.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CBA4BCF2815045C1D4CF7CA0DBDDE5A /* Next.swift */; }; - F2F4C0FD40886AF38A3C3CCAAC753133 /* AdErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A2A26ABD658D25D4E442B40F361AA0B /* AdErrorDetector.swift */; }; - F34C3B83277E2D4CC67A87305279006D /* SphereView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C0E2B7DF9056411131588C3D31055AB /* SphereView.swift */; }; - F36B361D85B6E1614F7F20287F423948 /* Player_VideoEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D928F9ED58045C85847C06519DAA55F /* Player_VideoEvents.swift */; }; - F41A18634854CB102E1793BDDA61A8B8 /* Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50CD5E1FF0715F849B022F2418EB4F6D /* Ad.swift */; }; - F44C1F2260A5D3C25670595AF5D2B85F /* Store.swift in Sources */ = {isa = PBXBuildFile; fileRef = 325E13FDD260C6ABBA60B2A93B136F58 /* Store.swift */; }; - F572560B547D817AAA073747285F1FAD /* Dictionary+ParseJSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E2C03D6509FB40036F616C507D86022 /* Dictionary+ParseJSON.swift */; }; - F58E4E29C1C80A092EDE0800D814E9FA /* VRMResponseModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 460FBEAAB6E657AE8B8ADDDB4D8FEC79 /* VRMResponseModel.swift */; }; - F647D3F6E2D6E02D5A2C40567267D2DC /* SelectVideoAtIndex.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFF5225C2B850F1A950D899E1AA0B4D1 /* SelectVideoAtIndex.swift */; }; - F67C710BFD95A6FAEF33B92D6A771203 /* Rethrow.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF60D4731856EC5C6CDDD8A899F613A2 /* Rethrow.swift */; }; - F6F8725C565AE29562FFAC87366E7E54 /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07B08EC998BDA37104785E3CD5D2C180 /* Observable.swift */; }; - F7A3E66530470CA61979EE5096F2805E /* UpdateRate.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA154198FD701259B07985D457DD34AF /* UpdateRate.swift */; }; - F7B044C842F6C8E29182FAF08C14DFAA /* AdViewTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7262EE76D79C6E07F4892C2ABEE2E868 /* AdViewTimeDetector.swift */; }; - F7C116254BF5457D7A327C5B0B8AAC46 /* UpdateCurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = A402ADEFF7F87B82752402AD92E39F27 /* UpdateCurrentTime.swift */; }; - F804B25C595F4A3D0A8DD63D250A4830 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B3243A549D845F8EB5894515FA46ECB6 /* CoreMedia.framework */; }; - F83E60248A81C9C3505CF1B7A7B8FBBB /* StallingRecords.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4DBDA8FD59F9C64001EA31D981AE9D0 /* StallingRecords.swift */; }; - F9543DF7FA85296FD69AE625B929C172 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C5B53B5950BD81738B677B5C8E7024B3 /* AVFoundation.framework */; }; - FA59B30E224BA951EE84142F021D3B8D /* Prev.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F7B7A6D0FDE44BD494B6674664FEC9D /* Prev.swift */; }; - FA69957269785CAEFFF92D27520A76F9 /* OpenMeasurementController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C44F0E9AF2959760F4495D3AAB757156 /* OpenMeasurementController.swift */; }; - FAC78BDBA3857E8CD05B40EF8AACD4CA /* PlaybackCycleDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = ADBB37257086C69BE2D3A45E38621509 /* PlaybackCycleDetector.swift */; }; - FAD5A84265839FBA291950B62979F8F7 /* SystemPlayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 895EF76FD2DEE6AA667425569B02ADCB /* SystemPlayerModel.swift */; }; - FAEDB224268BF41066118390BB95D6B6 /* ProcessGroupsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18C0BB836697B2766FB7C3FAA1EC744E /* ProcessGroupsAction.swift */; }; - FC12CB09A9840A1E90AC441416A6E655 /* VerizonVideoPartnerSDK-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B257E2CD6F62E566E090564F44F8C590 /* VerizonVideoPartnerSDK-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; - FCDF081820D098E09A4776E4C58E0015 /* VRMResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5838EEB535181551DAC39253F01ECF8E /* VRMResponse.swift */; }; - FD54778E279A45491774B0411942E142 /* SelectVideoAtIndexAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D71948F19056E7FE4D5EFDD84D95B0 /* SelectVideoAtIndexAction.swift */; }; - FDE1E30BE04A642A10485D491A82691E /* UpdateMediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A351B422A76CE5A963A40F8E2C2489C7 /* UpdateMediaOptions.swift */; }; - FEA7FFDCC3E89548E42F97B0C0CBA6EC /* ParseVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D66C71FA910DA59C2DD6FE366493616 /* ParseVRMItemController.swift */; }; - FEC636A7821A913BC3F621370640A4C5 /* UpdateMediaOptionsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = F26EABDAC23795CBA1B2E2E39593E1E9 /* UpdateMediaOptionsAction.swift */; }; - FF0CFCD0A4E5CC34A28CBAA2F8B82458 /* ActionProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FAD7A57BEB02007887CC8FADDBB58B1 /* ActionProtocol.swift */; }; - FF3747DD95A03247C33D4A549F41F4D9 /* QuartileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99BB873A027712E55EE7035DA0FD8309 /* QuartileDetector.swift */; }; - FFB4AE8C481AFA64268188912817E979 /* PlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = E37C4C9A91AED32895BDEBF5F4032EF6 /* PlaybackBuffering.swift */; }; - FFD70E7429DE9F4014DE190A944D8AFE /* PlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5906EEFA1985A3A746665567688BE259 /* PlaybackStatus.swift */; }; - FFEE0BAC1F8938EEF0CAE0A65FB53003 /* VPAIDActionCreators.swift in Sources */ = {isa = PBXBuildFile; fileRef = 714D5633E023D5949BA5628775D78B0A /* VPAIDActionCreators.swift */; }; + 00389930A784790863FE2748450B6495 /* NonEmptyString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1BC8F331FC0F9CD91961E9584A9DC84D /* NonEmptyString.swift */; }; + 0163C8661E5AE5BFCA06AFB2F492B3A0 /* SelectVideoAtIndexAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49E49264C3EE6D9BFA8E5415E806E4A3 /* SelectVideoAtIndexAction.swift */; }; + 01BED686E3EE28DD8C6FEFFF856910C5 /* BufferingStart.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE296B2A3703D3C9C17C83CC4E502F9 /* BufferingStart.swift */; }; + 01DCB278E67253BF575D4FBC0E6B57F4 /* FinishVRMGroupProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06F04EAB91ACF8351163497054232A18 /* FinishVRMGroupProcessingController.swift */; }; + 026DFA7440901F23614867E368258C36 /* VRMCoreNamespace.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472AE8A1137536C36C7DF40C9C8C3A04 /* VRMCoreNamespace.swift */; }; + 035143BE5FAE20F1FE84B119E40E66C7 /* VASTParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47CEEEFD41EA14BEE3C015CE3A125E86 /* VASTParser.swift */; }; + 03A6F48DCE5A9220F5D21610455245D0 /* CurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170FFC23FEE414E57D7D1E40FFD58A3 /* CurrentTime.swift */; }; + 04837C38009BE40A0145FE197F04B4CD /* UpdateExternalPlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CC2D130B77C2B8C6C1737109FC842E3 /* UpdateExternalPlaybackStatus.swift */; }; + 0492CBCDA9951031F0659AADA022340C /* AdMaxShowTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B940EE3E08F933D60F42C0442890859 /* AdMaxShowTimeDetector.swift */; }; + 0681DC72A78F085C6AB16EF78EF03D2C /* UpdateAverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F417626604A449BC0CBE227305599FAB /* UpdateAverageBitrate.swift */; }; + 06BE489BDB2DA9957D04AEFD77E804D2 /* VRMRedirectError.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE36F8982BE133B26ADD5C80F5E56699 /* VRMRedirectError.swift */; }; + 06DA12D99FB206AD038AEB8DC95C2F9D /* VPAIDErrors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D2E9C7F381CA32CB7DB86E13C66939E /* VPAIDErrors.swift */; }; + 071F0ECA15382126A440698A52E5BFC0 /* UpdateExternalPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DED38BB3012DCBFF58337192619C7A9 /* UpdateExternalPlayback.swift */; }; + 0768DBDBA45FDAD4DF1FCAD3775652C5 /* UpdateRate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4172B9253EAEF78D1DB954B824AB87D /* UpdateRate.swift */; }; + 080EB3ED5C59FFB43B51141EE02A4A11 /* Stub.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABBEB252F023A0B798A03A045FB0A646 /* Stub.swift */; }; + 088071BEA69BADDEBBCEE581FDDADA05 /* VRMCurrentGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = C68916F4ED4CDB54CE85B90A71CDC3E5 /* VRMCurrentGroup.swift */; }; + 0887765DE5EF8FC85ADB59F7CC1A6FCA /* VerizonVideoPartnerSDK-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 33C70C25279B08C42B2B59D196E66414 /* VerizonVideoPartnerSDK-iOS-dummy.m */; }; + 094EC2E10209464653AF224D1216FD63 /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF66E6E9DC0438FBEE9AF77DE14A21F4 /* Observer.swift */; }; + 09EDE5D1DF9F13DF5604BEE67F411E4B /* OMScriptServiceAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 594203ACF72DC1903C44419A7A2AAD2F /* OMScriptServiceAction.swift */; }; + 0B4A43EBABD23F079DC3A91EFB4C3E5E /* OnMainThread.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24ACA732C3DFE1D74D0659EA497FAD0 /* OnMainThread.swift */; }; + 0B7AEC4DD0C83752254667EF67827116 /* UpdateDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05E75D9179C0BAC5A3B770F04F45D0D8 /* UpdateDimensions.swift */; }; + 0BCDBD7514C8516C0E52C9B879B178ED /* Play.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C6DE2B96C8351E5EA7E3D9A561DED45 /* Play.swift */; }; + 0C31F044523BB7F2316E037D310B8369 /* AnimationDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D44B7EE4B1EAA453712013C800D719F0 /* AnimationDelegate.swift */; }; + 0C5D5641153BF191FD6363560C4F474C /* PictureInPictureUpdateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FCFF5A4F79D69730C17CEB96F0E090E /* PictureInPictureUpdateAction.swift */; }; + 0C7064F65881EF57683F9F55AB5D212F /* Player.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506DF7858B5FD5FA426CC341F20A998F /* Player.swift */; }; + 0C73FE436BC4277D717CF60EA9C6F81B /* AdClickthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = 203C979BBCED25626DD51D4EB8A33A46 /* AdClickthrough.swift */; }; + 0D9206D74E1F2DA47DE60710EE23CD4A /* FullScreenToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CF82A4A446951B30E5AC50656688170 /* FullScreenToggleAction.swift */; }; + 0DFCFD21051960170F0AD8F806B21EC4 /* SystemPlayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D378FEF89722949A528A121CAF5B977 /* SystemPlayerModel.swift */; }; + 0F80A927995D5EDDA2C84869A771F1EB /* VRMRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 561A9475F0DB349710A588E9F4C79A49 /* VRMRequest.swift */; }; + 0F84056BB18BDD5EE709DC426418EE8A /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FCE2F76F140961737078289D1609531 /* Action.swift */; }; + 0FAD747ED5DC26D3DE8A052CDB6C78A6 /* ShowAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ED28EFD6C6A7790314310DB02731E78 /* ShowAdAction.swift */; }; + 0FCABBF2D98B442EAD9A5E590EA58B15 /* DropAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 714AED141F35A308423F5820CC5756C6 /* DropAdAction.swift */; }; + 10C7CFDDE0CBF89D6AC32459FCD375D4 /* UpdateMediaOptionsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF5DEFCC2A4D984F086303606593BDA /* UpdateMediaOptionsAction.swift */; }; + 112F9DEA26833B85ECCD464560C42616 /* VRMCoreAdResponseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7D9F455C653DF8363BB7DA63C0EA969A /* VRMCoreAdResponseAction.swift */; }; + 120E275883B4234C8F6ED18380E58189 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = F30E910FA727584E123AA34E1CF60467 /* Result.swift */; }; + 123F8CAEBEE172ED97CA256674D26C9A /* AdVRMManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ADBA0CA3804B8A28C80080F7367D059 /* AdVRMManager.swift */; }; + 1240CB2DF06D8D71398280192968045B /* VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2F6D1FB83309A23757064B6B25F52F0 /* VideoProviderResponse.swift */; }; + 12C8DF2A40FDC8FA5CA618D5852E8511 /* UpdateExternalPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DED38BB3012DCBFF58337192619C7A9 /* UpdateExternalPlayback.swift */; }; + 13773180A7B21A22C7A8D0802D796D8A /* MediaCharacteristicRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 544EF9941E6FF56B467B8D851A1DAC51 /* MediaCharacteristicRenderer.swift */; }; + 13C509AA9596CDE4A8B9BDEB847B442D /* MediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85B543E5BB9CF463A54C35BC0CCE290F /* MediaOptions.swift */; }; + 14E52775C062E6A143D9F2BED037F132 /* OpenMeasurement_Tracking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D2C80149026183A373986FA1B50DC91 /* OpenMeasurement_Tracking.swift */; }; + 14E787A244DA8C89A50C36ADE98D7E4B /* VerizonVideoPartnerSDK-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E2E9478652995245D2EC22153ED88794 /* VerizonVideoPartnerSDK-iOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 14FECBD5293A98FB9ADE340069406A43 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B7DE15A456FE044A1CD72FF70B37762 /* Timer.swift */; }; + 155894947BC5DD0A9B571712BC9C4B61 /* ContextStartedDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD3E7D8C856E5C55094E5B3BE907C393 /* ContextStartedDetector.swift */; }; + 157B8D1B369AC19C43171859C5616B6B /* VRMCoreAdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E27451E4F7AFF1B3CADB6BC353EE831 /* VRMCoreAdRequestAction.swift */; }; + 16623359C4C3B5BE53D18F912DE0CB71 /* 3secPlaybackDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FAB0DEBAF9ADBCE8199A6FCCFFAD285 /* 3secPlaybackDetector.swift */; }; + 16F63269229B2379673DB87EE824FD13 /* VASTWrapperProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35A03B133D318BBFB939C6D84132B8A6 /* VASTWrapperProcessor.swift */; }; + 16F64BD7DC67712786A478FC221BCCBC /* StallingRecords.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB9471519FE70B1521B2D44C54502B2B /* StallingRecords.swift */; }; + 1720C3DDF28ABE056C869FF5D943D930 /* PlayerProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC39F8966ED54045F1D83D3763B59DDB /* PlayerProperties.swift */; }; + 177DFAED07623C98DCAA9FD2A208AA7A /* ShowContentAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7105227D3411818EDB2232F4C963BF9 /* ShowContentAction.swift */; }; + 1789481C46B8E1FBCF2893B129624130 /* XMLParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = E84D116294F68DF4023DA6E7D078758B /* XMLParser.swift */; }; + 1810032673241502BAF0B5FC24166C1E /* AdClickthroughActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77F51F491D76AB35364D89E74ED2DAD1 /* AdClickthroughActionCreator.swift */; }; + 19412ABAC5DF146022BD8FA17209C37D /* Play.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C6DE2B96C8351E5EA7E3D9A561DED45 /* Play.swift */; }; + 196EA37C7055DD1EC4F5088BA76DAD4A /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = F30E910FA727584E123AA34E1CF60467 /* Result.swift */; }; + 19E40A0175B53156B55D59AC3DB78BB3 /* VRMCoreGroupProcessing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1048B0D9145F129EE8B27675D8504F84 /* VRMCoreGroupProcessing.swift */; }; + 1B5530B4D60CDF6798618810B76506F8 /* ContentFullScreenToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 250BB599A1C772610EFC383E6E87C434 /* ContentFullScreenToggle.swift */; }; + 1C19C6242F6D7E079C3ED22451990E9D /* UpdateViewportDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF8745F1E559298C885D1FDDFC8E8C8D /* UpdateViewportDimensions.swift */; }; + 1C299DA1EC4557BB75F7C62DA3F09E76 /* VRMOtherError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2381728B182E51F65A2398680D67EA78 /* VRMOtherError.swift */; }; + 1C3100DC2D7BA3577CCC28CFA4119DFB /* SeekGestureRecognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 581CBD6D2BF13A8DB084832CD1950B9A /* SeekGestureRecognizer.swift */; }; + 1D3EBE50C4712CAEB011AC91978CB1F3 /* AdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23D89C0CA935EDCE79B02559683FAE28 /* AdProcess.swift */; }; + 1D88F56A6E593D2D54F9637C50B8A8BE /* Command.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D83D8E9D84454271D7A2D01F7D8E6BB /* Command.swift */; }; + 1EDA54BC67D7C762FFED6FA318A24535 /* VMRCoreProcessingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = B09C58AD26D0539E3C5165B59A309A57 /* VMRCoreProcessingResult.swift */; }; + 1F6F590455AF60F812C89C70FC7A5DDF /* PauseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 278DFE128C479C9C160CE0CC42C9C65B /* PauseAction.swift */; }; + 1FD9927E2BC63E81659F18EDA9F3B399 /* ShowContentAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7105227D3411818EDB2232F4C963BF9 /* ShowContentAction.swift */; }; + 1FDB9AD622B594B53BBF6407ECF3AB8E /* AdEngineResponseDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 805643DD11BA75587522F957A546F953 /* AdEngineResponseDetector.swift */; }; + 1FE82CC14D9E0F214C58002086B5C5B1 /* HeartbeatDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EE33908A9E097217B79C910158A0E8E /* HeartbeatDetector.swift */; }; + 2125143D3B718870C3B02BD0E5319AA9 /* UserActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 835CBCD89A796EF1E50161C6DFBA737D /* UserActions.swift */; }; + 213D510C04E76E7C1E312331BA1B1DE0 /* VideoRenderer-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F943DD66976477937ED606AC402B819F /* VideoRenderer-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 21A3A254E108B2C19F8577A26DC23289 /* VRMRedirectError.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE36F8982BE133B26ADD5C80F5E56699 /* VRMRedirectError.swift */; }; + 21AC8DC8E42FBA8F345517DE7171F581 /* UpdateLoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FA46C937BC9EC1120B323D397C3306F /* UpdateLoadedTimeRanges.swift */; }; + 21D8775E2B1FA300BA4C0C15B76FBFA8 /* PlayerControls-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 83B3ACF5209EC5C571EE73809085806C /* PlayerControls-dummy.m */; }; + 21E598CD393521FACC081501D04E79C3 /* JavaScriptTelemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8989EF50C3E962BA75326F12C59D799 /* JavaScriptTelemetry.swift */; }; + 221D5CBAF94CE2A5E6027BD067838888 /* ContentFullScreenToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 250BB599A1C772610EFC383E6E87C434 /* ContentFullScreenToggle.swift */; }; + 2251D40059749A3C4769CBC80CD7562D /* QuartileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC7331BA5E15E312E118D0428E477DE /* QuartileDetector.swift */; }; + 228D0385E9D732BB698A1B9B4283A724 /* PlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEB912DDE048D6BD02212F5F4C96333D /* PlaybackStatus.swift */; }; + 22C5951F8E6E19092BCDDD8B155AF9D2 /* VideoLoadingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48A4A8C5A3C7D583FFCAEFE1E8F7315E /* VideoLoadingDetector.swift */; }; + 2305DC3A1E81786C48FBBDCA24A4B3C4 /* PlayerCore-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2FCF0627E65A9A4B37DEC717F9B54974 /* PlayerCore-iOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 2383CD9E70253104260D74188DDC062C /* Network.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7065C6F011B75B341722CDE919FC3FDD /* Network.swift */; }; + 2395A3B40BC7B1BEDE9A56616126946F /* ExecuteOnce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AB9DF35E0C35EF0253809903201A63B /* ExecuteOnce.swift */; }; + 240A99240A7C42E66C795E82918CA3EA /* PlayerTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B532472E47ED45EF0E259AFAA1ABFFCA /* PlayerTracer.swift */; }; + 24196547C583A531C0DE98CDD489B5A3 /* PlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A314A3BBF3CCF2BEC62A9B444CBC9C1 /* PlayerSession.swift */; }; + 245DCC6FC73A007EA1C01BA6FA3BE8B0 /* AdPlaybackCycleDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AA4B3130440CB6D3C100086510EB980 /* AdPlaybackCycleDetector.swift */; }; + 247792509B1C6D217E3167DFA804FD60 /* Viewport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E61FCA747500B26F6E909D8E8C5143 /* Viewport.swift */; }; + 248B07F95F4E4D0F9397F42AD797113A /* PlayerInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B0904CB47448F5D4E6AC8F8A185568F /* PlayerInterface.swift */; }; + 250C76F1006F832DEF7AE657DB510B84 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A636A35441779271BCDDCC3697721AF /* Action.swift */; }; + 256D48C570888837B6876709BD4DDD03 /* MaxAdSearchTimeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D2ECC2490ED8AFEA39D5D62554D6B1F /* MaxAdSearchTimeController.swift */; }; + 25AE23DB7BC7BAE2CB62B22E7A08A11A /* Provider.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC66F2A8B5B6EDF34D63E051CB6D81E8 /* Provider.swift */; }; + 25AF63215C2F0B4D67F19EDB8B18D409 /* HeartbeatDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EE33908A9E097217B79C910158A0E8E /* HeartbeatDetector.swift */; }; + 25CD9464A3EB4642E2B6CE7BD663D0FD /* OpenMeasurementActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC4211B40C57E745758BC338334C7A90 /* OpenMeasurementActionCreator.swift */; }; + 26511E5751DB11E6C2D0F804A9995C6B /* VideoRenderer-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5937FAA24A6D86837725BD75C7BE21E0 /* VideoRenderer-tvOS-dummy.m */; }; + 26E19F87F12CC98A4069A988F6F448F3 /* RendererRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16A3E6249C0614E92710ABE781A2E24D /* RendererRepository.swift */; }; + 27277F096A2E3883A29CFD094784A1F9 /* PictiureInPicture.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD45EA40C96A3CBD46D0C370A935E922 /* PictiureInPicture.swift */; }; + 27B4D4CF53D5BC6D75BD5F4BB491FA48 /* OMScriptServiceAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 594203ACF72DC1903C44419A7A2AAD2F /* OMScriptServiceAction.swift */; }; + 28020D6E961CD67D52D044D3230995C4 /* AdMetrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F8A65588EBEC892C54F8FCB9F7C586 /* AdMetrics.swift */; }; + 28492A755D4E5B22B5265DB47C7BF1ED /* VRMMidrollProcessorController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1616B1C185878594C5B5C7A5FB28FD76 /* VRMMidrollProcessorController.swift */; }; + 2883D2C589280524D46DCA56779611DF /* SelectVideoAtIndex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B43AF6837A4014FCE9409A6CC59CDCE /* SelectVideoAtIndex.swift */; }; + 29A295BC62BADA5BC29CFB2EDE18CFD2 /* Metrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D0CF6B2232E18B3C96E4C86193F2189 /* Metrics.swift */; }; + 2B334D679EC847ACC48CE14397F55C99 /* OpenMeasurement.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A4CDC2EA513530920C6EA1CE9289BBE /* OpenMeasurement.swift */; }; + 2BFE0C2E2819A841639D59D0211D70CF /* VASTParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47CEEEFD41EA14BEE3C015CE3A125E86 /* VASTParser.swift */; }; + 2D9C9F46590F0327A38B77B5752F9C3B /* OpenMeasurementAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C617DF87E031CF468400B9E93FC1BF08 /* OpenMeasurementAction.swift */; }; + 2DC8F378472512344A2DEBE08321A286 /* ActionProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = B399500384F916842F86E15D0D826767 /* ActionProtocol.swift */; }; + 2DD0A3AEFBB30789D335CBE67166AF28 /* LoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = E956678F8DE3C0B2CD0D4F3EAC755272 /* LoadedTimeRanges.swift */; }; + 2E34A9A2299B23B68165BBE33145AE2F /* AdClickthroughActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77F51F491D76AB35364D89E74ED2DAD1 /* AdClickthroughActionCreator.swift */; }; + 2F510381C00A2B24C5EE083DA80AC92C /* AdFinishTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9375C8A6EEEF93548251864F810A413A /* AdFinishTracker.swift */; }; + 2F7B27A956D4D17DB478B04E6219982D /* Next.swift in Sources */ = {isa = PBXBuildFile; fileRef = 411FC5668965585A84979C8ED23E023D /* Next.swift */; }; + 30930FC1F14BB7C7933E2D51C42BFAF5 /* JavaScriptTelemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8989EF50C3E962BA75326F12C59D799 /* JavaScriptTelemetry.swift */; }; + 30EDAC76FA83D41CDF73FDC425E891DA /* VRMRequestController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25E6DAB0360283F153BFEB47269A97E3 /* VRMRequestController.swift */; }; + 31769E691AF5741F2BE70D29C5DFC924 /* SystemPlayerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C38CF208EE1D98ADB05F98D536478A21 /* SystemPlayerObserver.swift */; }; + 318CC61ED38806B74B97C98A820AA3F6 /* VRMCoreVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DEAB0929B915455327E41F9A8AE9A4F /* VRMCoreVASTModel.swift */; }; + 31E1E72CC2031F002F2EC3F3DD8B36FD /* Rate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6951F7BE7D5D5AD3DC55B3809326086 /* Rate.swift */; }; + 32BF467239491CF0272C44E3872BA4BD /* DropAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3FA318A2E3DF2CFA759BDB4E82CB533 /* DropAd.swift */; }; + 3375D05867D19C2707CBCF71A943456F /* NopAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF786315EE8C19934A3DB0B97F5545B5 /* NopAction.swift */; }; + 34A12C2ECD1EB6BB865F219EE3460B02 /* VVPSDK_Version.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4FF8794DA1BCA344E18875AF13D6229 /* VVPSDK_Version.swift */; }; + 357299D16C5CADA8E10CE9CCAAFA23E3 /* AdMaxShowTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B940EE3E08F933D60F42C0442890859 /* AdMaxShowTimeDetector.swift */; }; + 35F40CC53F33E3F6001917177A85E058 /* UpdateDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 726549240549AA20EDFF7E613C30C722 /* UpdateDuration.swift */; }; + 36FBBE93749C5D7D5CD8EB39AA13A60D /* TimerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DFC27D9425A7D8F28D4908E4B88021E /* TimerSession.swift */; }; + 370A36C36F50A6F783E00C8CF13EB0BB /* VRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E779BB81CD7A7993B58A67FF97ECCF5A /* VRMItemController.swift */; }; + 383282FAA83C3F4417E00A3397D65BDD /* VideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45B1D6C4FAAAE1B422D83F35071916E1 /* VideoStreamViewController.swift */; }; + 387B7915DE6951EA85B34B4940903188 /* AdPlaybackCycleDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AA4B3130440CB6D3C100086510EB980 /* AdPlaybackCycleDetector.swift */; }; + 38D9E70DA96DF7AB51B5D28B30B5B140 /* UpdateAverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F417626604A449BC0CBE227305599FAB /* UpdateAverageBitrate.swift */; }; + 38F9113ED3A10BF5113713F2A86544EC /* AdVRMManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ADBA0CA3804B8A28C80080F7367D059 /* AdVRMManager.swift */; }; + 391789C56BE49F6C25C63B2C01E70277 /* UpdateDurationAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A77024FDE646B0362FE0EBE24748A62D /* UpdateDurationAction.swift */; }; + 3A1068E1045913393A7224B01C401510 /* VideoPlayDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = E86AA001C09C2D512F6176449744A80B /* VideoPlayDetector.swift */; }; + 3A66EBAAE60ACDFB255013CE4BAFBEDE /* Pods-Tutorial_tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DAA41B3274DF46E1AFE15D42D9B2A5D /* Pods-Tutorial_tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 3A7573A2CF5DE2034E6FF6B1F68E35E3 /* Pause.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2278ABA7DCB21F477D19ECF8CA0F605 /* Pause.swift */; }; + 3ADAEB8F455B087C0CBB17B20E526FA2 /* UpdateExternalPlaybackAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1551CED86005DE931CEB79035141A54 /* UpdateExternalPlaybackAction.swift */; }; + 3BA9E955379BCB3C8C9EF8A579563EAA /* VRMResponseModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B032B2A8F22CB7A0CAAA2D3DF0D849E /* VRMResponseModel.swift */; }; + 3BDFED15585ED707E43D55B9AF0ADF46 /* MaxAdSearchTimeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D2ECC2490ED8AFEA39D5D62554D6B1F /* MaxAdSearchTimeController.swift */; }; + 3C20035F6D2EF04964ED8D240163FC91 /* Rethrow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A61F8352732DD31CCB759EF347C1870F /* Rethrow.swift */; }; + 3C51A97FBA89DE723502BB3890549276 /* SystemPlayerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C38CF208EE1D98ADB05F98D536478A21 /* SystemPlayerObserver.swift */; }; + 3D0A3E838D4B842DEAA6B21AE107F731 /* VRMFetchingError.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2D56E644CF63253D28DFC6335D3D402 /* VRMFetchingError.swift */; }; + 3D5B102FE36CFB476673B35F9F40BA5D /* PlaybackModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71BC77D346B110E01B8B6E87DC95B977 /* PlaybackModel.swift */; }; + 3DB2913B1E276294DB29AA40902D5191 /* PlayerProperties_Init.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC697AAAACE190F2FB66CFED1CAEBBEF /* PlayerProperties_Init.swift */; }; + 3DFC82D0D6DE6B71C6E32247064B472D /* ErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45C8975B3A0F0FC888091574CA480B2F /* ErrorDetector.swift */; }; + 3ECBD1BEA8630A969AD9352AB8F79024 /* AdMetrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F8A65588EBEC892C54F8FCB9F7C586 /* AdMetrics.swift */; }; + 3F069C85086690972A7DF946EDAB00C4 /* VRMCoreAdResponseActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = C986FAECDCB0230F974CB8F5F2F47CED /* VRMCoreAdResponseActionCreator.swift */; }; + 3F87B5F9F6580238D85BBAA2C100BD99 /* Codable_PlayerControls.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = C35AE9F4A0256C3DA4C307C163388081 /* Codable_PlayerControls.generated.swift */; }; + 3FACB11A8AC4AF1A1314314B9269DDA2 /* Playlist.swift in Sources */ = {isa = PBXBuildFile; fileRef = 493F1EB01D28B76478B7ACD1E3B3D30A /* Playlist.swift */; }; + 41110D8CE0B064E761E02C9BF307B801 /* StartVRMGroupProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A4A46D792C8CCCDB9A798319C23FFA2 /* StartVRMGroupProcessingController.swift */; }; + 4260E64D8B6C847E8B2FA6DC46D72AE8 /* VRMCoreItemSchedulingActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19CAC9740700F539F523B6290A54B724 /* VRMCoreItemSchedulingActionCreator.swift */; }; + 4351B561A9E052F0D76AF92B3CBF39A9 /* UpdatePlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A02B32D8AE15487262DDF5A345FD3F5 /* UpdatePlaybackStatus.swift */; }; + 43AB7CE9DEB545E2834793ED24828BEB /* SkipAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23BE152EE50B060F11B59EF1D4AA9E84 /* SkipAdAction.swift */; }; + 43D778AB844642FD15D03781942BB62D /* Duration.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0442A9817D6CAB03E131FD82EB1F5F9 /* Duration.swift */; }; + 43D7F7F8D78F5825D895E6A2A04A6735 /* ScheduledVRMItems.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9855B4C13C7EE5DE8B3AC4515AEEFF0 /* ScheduledVRMItems.swift */; }; + 4442A81CC218F0B5CF7D97692B558D53 /* OpenMeasurementController.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC0D17059B4A3787999B845D18407B97 /* OpenMeasurementController.swift */; }; + 44BB8B6203425142FBEFAEC3767CBBBA /* VRMRequestDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2546F3AC631A153E0D85FB15DA1E79D1 /* VRMRequestDetector.swift */; }; + 4668D76D908CDA5F6F3200CADF2553F4 /* VRMParsingError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F44F4E161A8489EE354612B7C17A056 /* VRMParsingError.swift */; }; + 47F41540601D3776697A2FD1479D5B21 /* Progress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61AF9BD5A37819EF4B90A0F967822049 /* Progress.swift */; }; + 47FE80F1C47546FB1D6E5E8AF9B28C3F /* TimerAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51A0B7A264E2DE2B48D33025A632B7EE /* TimerAction.swift */; }; + 4814DBF632B8BCB2ECC2C41E2F3AFD01 /* VideoTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4E59E6FD0B0C4BFBB7E0221E17C0CFA /* VideoTimeDetector.swift */; }; + 488F176BA75398CA9EDF8DEBB1A68170 /* SphereView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA4D79DE44B9B97BE67427A91A2350DD /* SphereView.swift */; }; + 48A978107F49D57240A1A63D31FF0834 /* Duration.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0442A9817D6CAB03E131FD82EB1F5F9 /* Duration.swift */; }; + 490650271AB73C3230DC1325026EA4CD /* VRMTimeoutActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF2B9D097CAC2C9FF35D70C3CA7053C3 /* VRMTimeoutActions.swift */; }; + 49503F5A3E0C4B9A0A6C720FCA3CC026 /* AdErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A1E360E33BAC9D776A2608A53BE261A /* AdErrorDetector.swift */; }; + 49B4B2163C1284D08E180356DEEF7F42 /* TimerAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51A0B7A264E2DE2B48D33025A632B7EE /* TimerAction.swift */; }; + 49D0555033B9B3E9A993899927ECF508 /* Viewport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E61FCA747500B26F6E909D8E8C5143 /* Viewport.swift */; }; + 49E523F23F8770CA0F5DC40B76381F36 /* PlayerCore-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 3628493DEC13CCB3915896F896614B9D /* PlayerCore-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4A51BA16628D3074A0733D2FF2227A5F /* VRMCoreAdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 539D4BF5DDA135A144A33F1B3491BF6C /* VRMCoreAdProcess.swift */; }; + 4A6DDB16807F707ABD053A6BD0DDD8E3 /* JavaScriptObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B00D830C53778B7A30263D266B9C6830 /* JavaScriptObserver.swift */; }; + 4AA067C75F8FAB31FF11C06EE89A3165 /* PlaybackModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71BC77D346B110E01B8B6E87DC95B977 /* PlaybackModel.swift */; }; + 4ACCE9144F189E43E1A54DFD74FB8595 /* VRMDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CF76D0086E98DB22D803526733F1CC4 /* VRMDetector.swift */; }; + 4AFA7A772A659EF5BD77A74E3697AAA0 /* PlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD69C5F28ECAEAD21998EA9D9663434E /* PlaybackSession.swift */; }; + 4B0812086711D2EDE0CD7489ECA5AF60 /* VRMParsingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F0A47CBE7E7F298CA7A1FE4B3949D98 /* VRMParsingResult.swift */; }; + 4B76984C2F0E67AA0DE51A5D7BAAB494 /* AdStartTimeoutController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2307F031C37CAFEC88180C9FCE333AC1 /* AdStartTimeoutController.swift */; }; + 4BEE191AFA0CA0CABD2E0968B99A0A8C /* VASTParser_Offset.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7C5CE70F344F924E600C2D8B2817AFB /* VASTParser_Offset.swift */; }; + 4C4210BF85C7DABE307148052D927D41 /* AirPlayActiveView.xib in Resources */ = {isa = PBXBuildFile; fileRef = CBB763041742564CB65860AED3926299 /* AirPlayActiveView.xib */; }; + 4CADFD5B045C69689844B6C083D33099 /* AirPlayActiveView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ED9B48BF3B00001E299FC5757CAAE6E /* AirPlayActiveView.swift */; }; + 4CB1835E8E04BC71E3BA5427F7C81DD5 /* AdInfoHolder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62197EA5B64BF7334F805F9E838C098D /* AdInfoHolder.swift */; }; + 4D0A7ECE19232BB85D1DF1B6208132AC /* Rethrow.swift in Sources */ = {isa = PBXBuildFile; fileRef = A61F8352732DD31CCB759EF347C1870F /* Rethrow.swift */; }; + 4D2243F39D4F1CAA780FA841F7B6A3DE /* ProcessAdItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42BAE093BE03F8B8CC13C11F0BFF1919 /* ProcessAdItem.swift */; }; + 4D50DB0A2C4530B8FC2E5BB1AA496F30 /* SelectVideoAtIndexAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49E49264C3EE6D9BFA8E5415E806E4A3 /* SelectVideoAtIndexAction.swift */; }; + 4DF442FD0F75BF3AAB4D1A8E0E78F172 /* MuteAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34113B05E2961F2CB9FC3CD4ACE915E3 /* MuteAction.swift */; }; + 4E4641278988D10DB8195141E54E318F /* AdVideoControls.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EB0F9514492C1A8387E81CB0F274202 /* AdVideoControls.swift */; }; + 4E54E4CB18537748B1D77CB945628D50 /* VRMPrerollProcessorController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEA0BF08850706B54F76DCB759A7F4B7 /* VRMPrerollProcessorController.swift */; }; + 4E8E8257C47A5BC5F316F70D3C4980C2 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7455A26172FA5AC9BBC4B6D9749FA612 /* Configuration.swift */; }; + 4F8607302BBD6A09932B6C53A1FB7657 /* Thumbnail+VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14B3C7CED428299A83D1B17FDD4CCF01 /* Thumbnail+VideoProviderResponse.swift */; }; + 4FC937502AB32134B7DC08CDB9EE733F /* ContentPlaybackCycleDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43E20AC004F65581CEAB7385A17AE759 /* ContentPlaybackCycleDetector.swift */; }; + 50E0B93BED9D7DEDD089FA14B91C9D11 /* VideoLoadingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48A4A8C5A3C7D583FFCAEFE1E8F7315E /* VideoLoadingDetector.swift */; }; + 5120A5AF9FBA3C2F4A140437BD15E2E0 /* Thumbnails.swift in Sources */ = {isa = PBXBuildFile; fileRef = E22ED38996DA85CF35684C7FC4DAD2AB /* Thumbnails.swift */; }; + 512C046EE298B426C8973C0EB300434F /* PlayAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1489AF6684DBF0166EFE3EB8A41E839 /* PlayAd.swift */; }; + 5157483E9263C80E19D5D799077CDECC /* VideoSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BE822C569EAF9184A96F18225EA6DEF /* VideoSelector.swift */; }; + 51B34D47D34426234A7A9E49888A5F53 /* UpdateExternalPlaybackStatusAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B99EB97E6ABA6A3D47C30B688CD2297 /* UpdateExternalPlaybackStatusAction.swift */; }; + 531420EE8508B906B06944B684E78D67 /* Seek.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B6F46A934F2DA5EEC8E1F96965AEBAC /* Seek.swift */; }; + 5397FD348E2E18D77C238A13D17E6CFE /* UpdateCurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2ACF31A5FA0502DC622B8B546D90A0E /* UpdateCurrentTime.swift */; }; + 53EC6C4BAE3EF6797A12124FA2627B4C /* VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2F6D1FB83309A23757064B6B25F52F0 /* VideoProviderResponse.swift */; }; + 54A8C6D43BA7A81266DE88FF85085FDB /* VPAIDMessageHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D991A1FDDC54C6EE2596B40B7A706E1C /* VPAIDMessageHandler.swift */; }; + 55AB47EEC904CEE155ACAAF28F9348E4 /* ControlsVisibilityController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60009E9262872E5EF84393A7A6765FD7 /* ControlsVisibilityController.swift */; }; + 56223136EB5533A4D05F42512295DFC8 /* OnMainThread.swift in Sources */ = {isa = PBXBuildFile; fileRef = A24ACA732C3DFE1D74D0659EA497FAD0 /* OnMainThread.swift */; }; + 562C6CA94EB0D263883A15BA11751EDA /* MuteDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99E8B7B5FCCA28CC4CA559806CD8A687 /* MuteDetector.swift */; }; + 565388E6642C7971B93C9B47B7E12CF1 /* UpdateCurrentTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9D019C51554738DDD794F38EEB211F0 /* UpdateCurrentTimeAction.swift */; }; + 56838C413A956C2833D02456A94B39DE /* AdClickDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 639DBFF53B7BFB869AF06C09FDACC6FC /* AdClickDetector.swift */; }; + 56BBC5FD484F5A2FB86E47645431C1E7 /* VRMRequestStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0D1A886DE0E01892C71BE92826F2CC0 /* VRMRequestStatus.swift */; }; + 571D917E6B722E206C2E977941A794C9 /* SettingCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 197DDA6B84BE4F498732D3D1BF4162DD /* SettingCell.xib */; }; + 577A974E87DDAE4C7847520623E54EC0 /* UpdateCameraAngles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04C5E40F9592EBC9A65DFB9D1AB36461 /* UpdateCameraAngles.swift */; }; + 57E6D22F8F8DD9159F1BE149A3EF08EF /* Pause.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2278ABA7DCB21F477D19ECF8CA0F605 /* Pause.swift */; }; + 5949321035D0171D0B4C55584346EC2F /* VRMCurrentGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = C68916F4ED4CDB54CE85B90A71CDC3E5 /* VRMCurrentGroup.swift */; }; + 599CE760ABBCF95B4D9A6277B78BC456 /* Dispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76F034D17EA7D7784B6AF9684E8F839C /* Dispatcher.swift */; }; + 5A2410651C7734E78DDF8A538A58D786 /* IntentDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA8D78AA287EE9A4800AE58217292B4B /* IntentDetector.swift */; }; + 5AF71F20EEA02BE95E58A1209BF01B9C /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FCE2F76F140961737078289D1609531 /* Action.swift */; }; + 5B17D4926B08FF9014A438E64DB0C3B8 /* PlaylistStatisticDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CB85254C317DD2A09CC7A2B1F81A65 /* PlaylistStatisticDetector.swift */; }; + 5BF0E9B0E2D3A77CE296EFF928DC9042 /* PlayerControls-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 5525DDE0659D3ABE5D10729E6C07DDAE /* PlayerControls-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 5BF6F9E8CE7BBCFE55E2BC437B69723C /* UpdatePlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A02B32D8AE15487262DDF5A345FD3F5 /* UpdatePlaybackStatus.swift */; }; + 5C2D3C3A09F1644FAA9FA0B41EAC9A89 /* Memoise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EC6531781089A8EF98F99BAF11C1FF4 /* Memoise.swift */; }; + 5C51915BC3B2818F4C71C6EF07075A56 /* DropAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3FA318A2E3DF2CFA759BDB4E82CB533 /* DropAd.swift */; }; + 5CCEE92EAB9FB56CC9FE67B8646ECBED /* OpenSafariUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = E27AE12A4BEB6ECF0561472F3BCC87FB /* OpenSafariUtil.swift */; }; + 5CE7A48F3AD0949A65C0FBAD10F20075 /* StartVRMGroupProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A4A46D792C8CCCDB9A798319C23FFA2 /* StartVRMGroupProcessingController.swift */; }; + 5CF83DF75EEFC52C5AD4E0936C6D8792 /* MidrollDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 430FE541D41B703063A27A90D14A0521 /* MidrollDetector.swift */; }; + 5DADC4BC110E31AE9713BB35802612B9 /* UserActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 835CBCD89A796EF1E50161C6DFBA737D /* UserActions.swift */; }; + 5DC85A4337C2D91EC2CAF359EF1C202C /* Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D4AB2046B9FCBE3489A48965734D155 /* Autogeneratable.swift */; }; + 5DD4CFA4D152C25C48112937E6C6C241 /* MP4AdCreativeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8336F8499CB16D44455B9D10BDAB06E5 /* MP4AdCreativeController.swift */; }; + 5E698480B1B1B731BCE44AC083AAC961 /* VideoTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4E59E6FD0B0C4BFBB7E0221E17C0CFA /* VideoTimeDetector.swift */; }; + 5ED0682CE56E5FEAC32DE0682AD72174 /* Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E4EA93A9E4A379D052C130E08428E84 /* Ad.swift */; }; + 5F8225895576D2FC29C55D6924C03009 /* VideoPlayDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = E86AA001C09C2D512F6176449744A80B /* VideoPlayDetector.swift */; }; + 5F8947A21D40F39ADE7B99E236BE7493 /* PictureInPictureStatusUpdate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25530199B00503138E9F97F62ABFC169 /* PictureInPictureStatusUpdate.swift */; }; + 601984D90577BE1E3EB0A38E214866FB /* PlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A314A3BBF3CCF2BEC62A9B444CBC9C1 /* PlayerSession.swift */; }; + 6075BB3A9829820D46195E9B83255724 /* VRMFetchingError.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2D56E644CF63253D28DFC6335D3D402 /* VRMFetchingError.swift */; }; + 6125643C3FEC28DF52628A147274100E /* AdSkipDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C12591FF1FBA7D741C75E7433A08B69 /* AdSkipDetector.swift */; }; + 61CB9DEA5C88958985830BFADBDEFA66 /* OpenMeasurementServiceScript.swift in Sources */ = {isa = PBXBuildFile; fileRef = 250556BFF911BE5C9152305C40C7A585 /* OpenMeasurementServiceScript.swift */; }; + 61D7DFA6B071637D69C9A8CB4163F04E /* UpdateCameraAnglesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77D0255014DDAFAA7DF51193CA40C588 /* UpdateCameraAnglesAction.swift */; }; + 62134A21D21D690C982BAFF5EADEE871 /* Seek.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B6F46A934F2DA5EEC8E1F96965AEBAC /* Seek.swift */; }; + 638ADFBBC4955C869A38F2DC2D745D4D /* Nop.swift in Sources */ = {isa = PBXBuildFile; fileRef = 416333376C9D774054B3EDDB85A160F6 /* Nop.swift */; }; + 63A6FE0129ED5EC126043C43399A13D0 /* PlayerCore-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DE234D6B1EFFFEC9D19AD9EA1E0EC594 /* PlayerCore-tvOS-dummy.m */; }; + 64C73A18DF6FB71C060272B516BEF8DF /* VRMTimeoutController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D59F17A202195C7AF92E46394929071 /* VRMTimeoutController.swift */; }; + 650D7162E9648849C1B763EB0BB69DC0 /* UpdateMediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD7312650961A076EE151D98AAC0EF7C /* UpdateMediaOptions.swift */; }; + 66851CC128E278EA1245920C5951BD2A /* VRMResponseModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B032B2A8F22CB7A0CAAA2D3DF0D849E /* VRMResponseModel.swift */; }; + 66BADCCCA09FA4ACF3321693A84E5DE6 /* VRMCoreItemScheduling.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7F3C02905B500CE36B5DAF7FCC9D05B /* VRMCoreItemScheduling.swift */; }; + 678F7D25CE5DACB86A5167DFC1280A4F /* VRMCoreResultSelection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ECB04A6AC31C73E881B615C0BF3744F /* VRMCoreResultSelection.swift */; }; + 67AFC3648BBE20B013A09B0C8FA6D7D7 /* InteractiveSeeking.swift in Sources */ = {isa = PBXBuildFile; fileRef = B46184B120B636FE04338E4C563B129C /* InteractiveSeeking.swift */; }; + 67BB870BFE9ED236315B460F2906C389 /* PlayerViewController_Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = E72618A482BB0C852DBCD29A9D3B8C67 /* PlayerViewController_Binding.swift */; }; + 680AF3AF0D8F3F7B0A1B526EEB6AF571 /* AdVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC1A62597C9C983B207E4C5678EF7454 /* AdVASTModel.swift */; }; + 681351E510457D338E5EF988E9B2F3CE /* VideoContextPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24421320230B829C904E25A74E154AF7 /* VideoContextPresenter.swift */; }; + 681A717A4EEEBB472865B155A6692486 /* UpdateAverageBitrateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAFB722B1E3545B56FE55825A40DD99A /* UpdateAverageBitrateAction.swift */; }; + 690237E764485AC57E2B274CEE440C59 /* VRMCoreAdResponseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7D9F455C653DF8363BB7DA63C0EA969A /* VRMCoreAdResponseAction.swift */; }; + 69E11486CAE4F7F82001C6304048BD74 /* VRMCoreResultSelectionActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54C9EF2713DF7FA01C9F94DF325BBBD6 /* VRMCoreResultSelectionActionCreator.swift */; }; + 6A638E6F589A6DDD7AB507630AC71833 /* AdKill.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CFD8D23E9B278A4ACBBBBF4F1AD540C /* AdKill.swift */; }; + 6AE5C91BE996740F64ED56DCDD23DDF9 /* UpdatePlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53014B83B47DFC39471AA6860B220C00 /* UpdatePlaybackBuffering.swift */; }; + 6B0CE4EB8B36564589881357A4E384AA /* DefaultControlsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 086360320F329D8302E34FF7529078A5 /* DefaultControlsViewController.xib */; }; + 6B66E05C48CC22E218C1AA2125D74BE2 /* Prev.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9F76B6D7229DE79AD601286E64BAAB3 /* Prev.swift */; }; + 6D77C652FBD5FDA3BAF761C022330E03 /* SeekerControlPlayground.xib in Resources */ = {isa = PBXBuildFile; fileRef = FC67DDC930B2F9061A1676FB1C1D3DE1 /* SeekerControlPlayground.xib */; }; + 6D7FEF9D91B738CE34B515DB59D5D2C2 /* PlayAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80B6590E6EFB86E1CB778B74B18701C9 /* PlayAction.swift */; }; + 6EE1419FCEDF82DD263C1389B46C0E0E /* VideoRenderer-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D858D99FE39945840CB73334AB61FDE /* VideoRenderer-iOS-dummy.m */; }; + 6F145E653F5C0236784A7ABA7EFAEE06 /* PlayerTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = B532472E47ED45EF0E259AFAA1ABFFCA /* PlayerTracer.swift */; }; + 6F392927E4107979B55F98B913FCDE0D /* PlaybackFailed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044F59316AB07DD14F58AAB8EAE27F0A /* PlaybackFailed.swift */; }; + 6F50E926549FA64BAAAD4EE98217E88D /* SlotOpportunityDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = E67AEE76C5D7EEA3916AC1206500E4FE /* SlotOpportunityDetector.swift */; }; + 6F6086BADB62DC67AC03753C38D25615 /* ReporterTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 094AAE1A85C4FBE704E698FBDBF8F222 /* ReporterTracer.swift */; }; + 6F7F43FE95D6CC96EE7C4D73F831A3FF /* VideoImpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C1183763D19B7CC749D911B1BCC366F /* VideoImpression.swift */; }; + 6FD77C2298196EE4A2F539F3AB934D5C /* AdVRMEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478DAE3F84EA196FB1D9CF227287BD6 /* AdVRMEngine.swift */; }; + 6FD9E7971EEA6121708645B6071D8948 /* VideoImpression.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C1183763D19B7CC749D911B1BCC366F /* VideoImpression.swift */; }; + 7036E3557F33C3FE3EE6C20D36BE36C0 /* CompletePlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBF90D1E6E5F620B0E65C8A007E9B64E /* CompletePlaybackSession.swift */; }; + 70ABF9E1A19B68FEE202C2C2E58DC399 /* BundleHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82B7E18AFA9FC1603F5301F68D1B8DA0 /* BundleHelper.swift */; }; + 7143D4B29D2AA012D1E51AD88F9236E0 /* PlayerProperties_Init.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC697AAAACE190F2FB66CFED1CAEBBEF /* PlayerProperties_Init.swift */; }; + 717FEAB57C5962AF86A473B271148FF9 /* TrackingPixelsConnector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 209FCF3C1887B131F21E5FB7E7031B83 /* TrackingPixelsConnector.swift */; }; + 71F83ADC8DFFF455D9D981974BF2A966 /* AverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AEF06810C45EE3B931C19E5AEA6308F /* AverageBitrate.swift */; }; + 71F8BCF77B7DAFF6A9D9B62EBDEA5AD7 /* CompletePlayerSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E61491A266B23563687661C22FC1963 /* CompletePlayerSessionAction.swift */; }; + 72812D5BE684BA37573F8C38061D1D64 /* Mute.swift in Sources */ = {isa = PBXBuildFile; fileRef = 241D7C3CE27DE263DEFC2A1939510AF1 /* Mute.swift */; }; + 72E28A5236356BFAACBF1F14B0324A76 /* VRMTimeoutController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2D59F17A202195C7AF92E46394929071 /* VRMTimeoutController.swift */; }; + 7384D588841EBF151A990CC0C540ECFF /* CompletePlaybackSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87165F5C75D244EB55EE4E8D855982F7 /* CompletePlaybackSessionAction.swift */; }; + 739A50C79596705E6A1CC3AA0952ECDB /* TimeoutAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DAFFB3AEE797A99279281F7C6AA7869 /* TimeoutAction.swift */; }; + 73B79C02ABAA6BA6B677951586F205CC /* Dictionary+ParseJSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BB11C1A92D6607C244AE946D7D57987 /* Dictionary+ParseJSON.swift */; }; + 73CD235EB391FADFA19E8726A1534716 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = B224529236EB51260EAA18CB19996B73 /* SettingsViewController.xib */; }; + 74210598ABD853CA09ABAE087B50EE2A /* UserActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D406DFA536D717B46FD529FBA0BF8E0 /* UserActionsDetector.swift */; }; + 75EC2E47C5AEAC2222B01608FD9C4EA4 /* VRMCoreVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DEAB0929B915455327E41F9A8AE9A4F /* VRMCoreVASTModel.swift */; }; + 7654C72FA44FA1FE3D541A158E802599 /* AdViewTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27D97160CD0231B3EDA6B99F7A02B01E /* AdViewTimeDetector.swift */; }; + 76D6D5719EE9CB01D906008C31DA4688 /* UpdateRateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E0DBAE83144AFE0ED40E8DC7C949D8E /* UpdateRateAction.swift */; }; + 7703B3C9FAA121E73B1FB5A7BB693F44 /* DropAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 714AED141F35A308423F5820CC5756C6 /* DropAdAction.swift */; }; + 77B0604B3C91C316E8C821DE68063EA5 /* VideoProviderParsing.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF6A17C9892B0251481926AA1AF2D083 /* VideoProviderParsing.swift */; }; + 77BF2D64102745B3006B643227700E0A /* VMRCoreProcessingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = B09C58AD26D0539E3C5165B59A309A57 /* VMRCoreProcessingResult.swift */; }; + 7854647CF848C4D629A0380CA062D6C3 /* SettingHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C22C8242C1F2ABAC787D8BAAFAC32CBB /* SettingHeaderView.swift */; }; + 785734C8DB903DAB9DE8677FCD079ADB /* EndPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = F724FAF0CE3CFA5E62A141C75303C78B /* EndPlayback.swift */; }; + 787D58D7F2C0FC4F3BA2796E05DA066C /* NopAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF786315EE8C19934A3DB0B97F5545B5 /* NopAction.swift */; }; + 78802BFE13D202091DFC54C4CE813362 /* 3secPlaybackDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FAB0DEBAF9ADBCE8199A6FCCFFAD285 /* 3secPlaybackDetector.swift */; }; + 7895FF3B4201F38A8D3975FCBAACFC69 /* VRMTopPriorityItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 824338BCBF79EE3D7671CF14DCDE8A53 /* VRMTopPriorityItem.swift */; }; + 78FB3881A7E08366517C72A3D1626EC0 /* UserActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D406DFA536D717B46FD529FBA0BF8E0 /* UserActionsDetector.swift */; }; + 791D10D9E89101AD2322AC827983FD0E /* VASTWrapperProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35A03B133D318BBFB939C6D84132B8A6 /* VASTWrapperProcessor.swift */; }; + 79D0F5EC1B991ACA7F2E97F4758FC588 /* MetricsSender.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48500F19ADDB5D858A2CCFCD19942D6B /* MetricsSender.swift */; }; + 7A22547E98DCDF3E0CFF8BBF68C2D384 /* Observer.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF66E6E9DC0438FBEE9AF77DE14A21F4 /* Observer.swift */; }; + 7A27775A1E07A7B9AE28FD9D217B565B /* VideoActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7C0C247770502E9BF9C7B69DDC4DAE6 /* VideoActionsDetector.swift */; }; + 7A2B139E8610412046E157524387A6F4 /* VRMProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8741F2E90332E8747958B21645DBCF03 /* VRMProcessingController.swift */; }; + 7A75C8E9C4AECBFE30ED7185A5C07897 /* PlayAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80B6590E6EFB86E1CB778B74B18701C9 /* PlayAction.swift */; }; + 7A9FCD76109A0B9AE129405517CA5624 /* ErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45C8975B3A0F0FC888091574CA480B2F /* ErrorDetector.swift */; }; + 7AAFAA2884ECE2A920D6F1CCC7A62A99 /* Replay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 643BC1398CB4F4F11465F6B9D298A187 /* Replay.swift */; }; + 7B5EC6A60BEDFD242BA760CFDDCC0478 /* JavaScriptObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B00D830C53778B7A30263D266B9C6830 /* JavaScriptObserver.swift */; }; + 7BA341851CF496D055F5651129EB02C5 /* State.swift in Sources */ = {isa = PBXBuildFile; fileRef = 858B163FB4203D92E6B74942B07CB1D5 /* State.swift */; }; + 7BFABE801868B89152F02F84E7D95896 /* VRMFinalResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D13B9B50D4BB0C55C56FEE2A8915D3 /* VRMFinalResult.swift */; }; + 7C9A281601EF759550FEABA98288B5D2 /* SphereVideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C63818EE6B6EE8F45CD2F6F1CD38C7F5 /* SphereVideoStreamViewController.swift */; }; + 7C9EB02BAE34DF25CD2E3FA1F8C5BA98 /* VideoProviderParsing.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF6A17C9892B0251481926AA1AF2D083 /* VideoProviderParsing.swift */; }; + 7CC01665B39C9F6869D1D2435B4FD45D /* Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E4EA93A9E4A379D052C130E08428E84 /* Ad.swift */; }; + 7CE583AAC2A6D8FB54AAAF8EE217F79A /* ApplyDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCD7E16ED4840943F5ED1B88FE91DEA1 /* ApplyDecorator.swift */; }; + 7CED46AC6F0D2721B71DC34349A74C1F /* UpdateLoadedTimeRangesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B42E543A247656831F8E0B4230FE66 /* UpdateLoadedTimeRangesAction.swift */; }; + 7D3ADFA13BECFC7B5740F44A904BC985 /* PauseAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 278DFE128C479C9C160CE0CC42C9C65B /* PauseAction.swift */; }; + 7DB6B08F33C3395EBA4302A1E56C184D /* Pipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A3606D3CBA75E4CCA38E67DC4ECEB32 /* Pipeline.swift */; }; + 7E1962614C2F865C4E9B4D097EBB288E /* AdPixels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26317AE0B22EA94F5D8E361F96C8CE87 /* AdPixels.swift */; }; + 7E818A18F0205863E224E9FF682B6FBA /* SystemPlayerViewControlller_Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 07C1A463EAEE0B59E88A0E89031A9266 /* SystemPlayerViewControlller_Binding.swift */; }; + 7EDDD5C7FE62BD8E5BD8B1D8DF88BE30 /* VRMParseItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 215D582548D0F59AA7DE97B62B7A8EA2 /* VRMParseItemQueue.swift */; }; + 7EEE2C3E7B8BCBCFF7C8FA8E5537DEA6 /* PlaylistStatisticDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CB85254C317DD2A09CC7A2B1F81A65 /* PlaylistStatisticDetector.swift */; }; + 7F67A69E75E80D4A54D28110C3012EBE /* Store.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A07428ABBDDD8905B46E749BB74574F /* Store.swift */; }; + 7F84A64070CDC5A6BCEA180D5E92307B /* UpdateExternalPlaybackAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1551CED86005DE931CEB79035141A54 /* UpdateExternalPlaybackAction.swift */; }; + 80919629544C93A0B3E57848D8CF2676 /* AdVASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC1A62597C9C983B207E4C5678EF7454 /* AdVASTModel.swift */; }; + 80A8FC45A05C070B4699773F5F5087FC /* VideoRenderer-iOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = D36E5A62ABBF63E5FCA84A90A9902247 /* VideoRenderer-iOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 80BEC6A491E0135855BE9359F75D1E7E /* FetchVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8143811FD96617CE2039C18C6580078A /* FetchVRMItemController.swift */; }; + 813D4758298B748E30353FAC1787D976 /* UpdateExternalPlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CC2D130B77C2B8C6C1737109FC842E3 /* UpdateExternalPlaybackStatus.swift */; }; + 815AE02FCBA13928355127ADEEFBBD3A /* MaxShowTimeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA04477A9500F6D7A8E45616B0E569E1 /* MaxShowTimeController.swift */; }; + 818549916F19BBD72590C66E35F5082F /* ActionProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = B399500384F916842F86E15D0D826767 /* ActionProtocol.swift */; }; + 826792DC2E7AE6CBB1868D65F10845E9 /* VRMCoreNamespace.swift in Sources */ = {isa = PBXBuildFile; fileRef = 472AE8A1137536C36C7DF40C9C8C3A04 /* VRMCoreNamespace.swift */; }; + 839F555BFC0891B25A75B14F01855740 /* PlaybackReady.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B3EF7D052BEE09D17E3AD5E32A0D16B /* PlaybackReady.swift */; }; + 83E3A5CB44B98C013DF90492418ADBCB /* VVPSDK_Version.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4FF8794DA1BCA344E18875AF13D6229 /* VVPSDK_Version.swift */; }; + 8485815AA80455FD7ADE1D3B06828D31 /* ContentControlsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5713B360EC4A1F4B5357519A6E5ED3D7 /* ContentControlsViewController.swift */; }; + 84CC7060D8E607B5E7BB161DA7318A9B /* Camera.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91D95986C627EE7612B3198DE338A18A /* Camera.swift */; }; + 8512FDE575A96A7D63DE9CF577F567F4 /* Props+Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE9FC3E4681729774879CAF45D2CDD5F /* Props+Autogeneratable.swift */; }; + 8522D7D5FF7D11909FC31BB7C33BAA0F /* AdURLProviderProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FA95901A4230F99ECD6CF3623F7852A /* AdURLProviderProcess.swift */; }; + 85235E5C9C54E135CA2F9585F71DB552 /* VPAIDEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E5DC228BF87087E5913738B5B594E8A /* VPAIDEvents.swift */; }; + 85727085FCE345449BDFBE348A386D17 /* PictureInPictureUpdateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FCFF5A4F79D69730C17CEB96F0E090E /* PictureInPictureUpdateAction.swift */; }; + 85C0CF1060FEA7DD2D11CFDEF9EDC48F /* UpdateLoadedTimeRangesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B42E543A247656831F8E0B4230FE66 /* UpdateLoadedTimeRangesAction.swift */; }; + 85D6D132D7069DE4CEBD5B221E019D25 /* SystemPlayerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8571682A4838548A24654C7208B83D54 /* SystemPlayerViewController.swift */; }; + 8605CCB674B8549D4912DF13CC3DA289 /* VRMItemActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CDEAA8CEA39CF549E71BF33508A7324 /* VRMItemActions.swift */; }; + 8648D1960259BB285D2BBB040EAF180C /* VerizonVideoPartnerSDK-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B82D2E1F35C6422802B38AE57C957AB7 /* VerizonVideoPartnerSDK-tvOS-dummy.m */; }; + 86B6011BD8A8E691628A7A6E51405310 /* VRMTimeoutActionsCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 139DDC45B37F71E18C20B94C8F365C91 /* VRMTimeoutActionsCreator.swift */; }; + 86D5374B00F7B62B788040714B79AFF6 /* ReporterTracer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 094AAE1A85C4FBE704E698FBDBF8F222 /* ReporterTracer.swift */; }; + 87D48C2FE2C96B7CAEB5AA673CDEA7A0 /* Pods-Tutorial-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 01913AC15AC4F40244C808D2725F9FEA /* Pods-Tutorial-dummy.m */; }; + 8837E87BD7301329DD5659C0A4647108 /* Dictionary+ParseJSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BB11C1A92D6607C244AE946D7D57987 /* Dictionary+ParseJSON.swift */; }; + 88386F554F455FFAFB5F0A9B46D7ACC6 /* VRMProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2455CC47DC7111B35D5A43644731415 /* VRMProvider.swift */; }; + 88A8E9812D5C9582325C4B8F2959EA16 /* AdCreative.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938EF0021D9EB8602D878B43E90701AF /* AdCreative.swift */; }; + 89C0EA30EA8F74DD5CD9E33935D4018C /* VRMParsingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F0A47CBE7E7F298CA7A1FE4B3949D98 /* VRMParsingResult.swift */; }; + 89E05C6F8072ADEE40F9CCC29EAB0C4B /* RendererDescriptor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 255FABA731E7F630E903F5092158FEE0 /* RendererDescriptor.swift */; }; + 8A98E9AD3C3DB9DC4891B32A366C648D /* CompletePlaybackSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87165F5C75D244EB55EE4E8D855982F7 /* CompletePlaybackSessionAction.swift */; }; + 8AA93BDF23FC4D28C88D2D38FDF45F51 /* VRMSelectFinalResultController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 677340E664314FA33C5A2949DB5D5746 /* VRMSelectFinalResultController.swift */; }; + 8AF47A21BF23C385C42A10313E205BB7 /* ContentFullScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF44F98BBF2371139D4C0D8ACE98319D /* ContentFullScreen.swift */; }; + 8B1C7C9B759A377D6D0CC36CEFD29D7E /* VideoContextPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24421320230B829C904E25A74E154AF7 /* VideoContextPresenter.swift */; }; + 8B3018DD9DF1C9338B027CD36AD03F60 /* AdVideoControls.xib in Resources */ = {isa = PBXBuildFile; fileRef = 034D75DEF9537918A4E0799C960B591D /* AdVideoControls.xib */; }; + 8B3FEDDBAD104488167BE14E6C7A5D4D /* AdManagerPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35AE340418FF18C418FD3D6F03140CA7 /* AdManagerPresenter.swift */; }; + 8B7D518BAC07F50201B6C21EC491072D /* VideoProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 652A3033B2C9E0D6EC8A18D24CC49930 /* VideoProvider.swift */; }; + 8B966AE0DE3A99626E9B843924C64A3E /* ContentControlsViewController_Binding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29AEAB463A986D0B2DC116919DE34599 /* ContentControlsViewController_Binding.swift */; }; + 8C8185C5087520C9BB4EA841AB4D3B7D /* SettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0DD6F578407D63E6E9E07E26B2C44D2 /* SettingsViewController.swift */; }; + 8C85272E3DE6C40C40742102B3DF82C5 /* DecileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AA5AC218163904092E98370D7E692D7 /* DecileDetector.swift */; }; + 8C8C9478C8779A449922D2918526201C /* SkipAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23BE152EE50B060F11B59EF1D4AA9E84 /* SkipAdAction.swift */; }; + 8D7566F641CD4630144DA7DE85935554 /* AirPlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = F96B5D4AE71A534A44412C6111306234 /* AirPlay.swift */; }; + 8DB859546E3A518D2E2D926262917A82 /* VRMTimeoutError.swift in Sources */ = {isa = PBXBuildFile; fileRef = D11779009B807C7D99D278F03AFA1D81 /* VRMTimeoutError.swift */; }; + 8DC941D9325091D3783E188153A5DE99 /* AdClickThroughAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2908A08B70C308A5ED83F08F1C36730F /* AdClickThroughAction.swift */; }; + 8DE2F8B76F2042D098DC756BBAF04189 /* VRMFetchItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E897C289563C8D67431C0832803FF67 /* VRMFetchItemQueue.swift */; }; + 8E6DE8925932EA3877E22E0C7A0F6B93 /* VASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6A7B067302D1217C91F1F39BF1768FE /* VASTModel.swift */; }; + 8E8EE2AB33C1AABC94A52675A9709E28 /* MaxShowTimeActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB305DE80426085C7691D487F0E0A3F /* MaxShowTimeActionCreator.swift */; }; + 8EA4E7A2B21259ECE97CD43C498AD62D /* Player_VideoEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B940473828B911A76CD420D1A2B601D /* Player_VideoEvents.swift */; }; + 8EB6D58F7FEB0806CB3F51A358181461 /* PlaybackStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEB912DDE048D6BD02212F5F4C96333D /* PlaybackStatus.swift */; }; + 8F940657BD6F53FFA52A74B781A79201 /* Player_VideoEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B940473828B911A76CD420D1A2B601D /* Player_VideoEvents.swift */; }; + 8FB0A443328D9DAB149AA7DE11443F86 /* VVPSDK.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5F315E5F3548741107931C1A14E1D7E /* VVPSDK.swift */; }; + 90E5C9D8E9849F446E688074D1204437 /* MaxShowTimeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA04477A9500F6D7A8E45616B0E569E1 /* MaxShowTimeController.swift */; }; + 910E7F9E9708FB4F8B8367A4F48F91F0 /* Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D4AB2046B9FCBE3489A48965734D155 /* Autogeneratable.swift */; }; + 9118A22F9CE655E199BCFD02D9F3A0D2 /* VRMCoreGroupActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85C2563E1594BB1A79E1D5BC0F785EF7 /* VRMCoreGroupActionCreator.swift */; }; + 91425F983EA8B06AAA0F48F8631F18C3 /* VRMRequestStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0D1A886DE0E01892C71BE92826F2CC0 /* VRMRequestStatus.swift */; }; + 9188A0C0D75377C9E12172EAD9706F25 /* VRMCoreItemSchedulingActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19CAC9740700F539F523B6290A54B724 /* VRMCoreItemSchedulingActionCreator.swift */; }; + 91F305EBCF75C7D9159A8780307EC8F1 /* Camera.swift in Sources */ = {isa = PBXBuildFile; fileRef = 91D95986C627EE7612B3198DE338A18A /* Camera.swift */; }; + 9209C1EB59606EF13BF2F8CAF0DF0D96 /* SeekerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BBD6341619BC902CC7C4B475B68E1D9 /* SeekerController.swift */; }; + 9234CC3F8894567AEB17F0E36AF6390D /* ContentControlsUIProps.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0569E386FAF353D6D3496D3577F038EE /* ContentControlsUIProps.swift */; }; + 925D04C69DA51004FDA8460891BE76E2 /* OpenMeasurementContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59CB6FAA9AF56573C3833FB22DE7EE0C /* OpenMeasurementContext.swift */; }; + 925E38D489E63F6100017B8F60C983E7 /* AdKill.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CFD8D23E9B278A4ACBBBBF4F1AD540C /* AdKill.swift */; }; + 926830C37C1DDC9EC9959836EE226D1D /* PlaybackBufferingAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 176C68CF6066CF79270C09A1A3A1A500 /* PlaybackBufferingAction.swift */; }; + 928B8480805FEA985ECA616F1E8D1526 /* AdURLProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 427589C49D3ACB758E1014AA94185D23 /* AdURLProvider.swift */; }; + 9291C7E52C574700199EB2AF06CF40DA /* AverageBitrate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AEF06810C45EE3B931C19E5AEA6308F /* AverageBitrate.swift */; }; + 92FBC7B84A7F5DAD548F9FC437C66F49 /* PictureInPictureToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00E5F760209DD07EB7392C6FFE7838D0 /* PictureInPictureToggleAction.swift */; }; + 93E45D265D085FB2AEE4DB29CD2D4D55 /* AdURLProviderProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FA95901A4230F99ECD6CF3623F7852A /* AdURLProviderProcess.swift */; }; + 93E4B66ACCE93E8F6B8758720F64A106 /* ParseVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 949CEA9182DF8B907F7B5D9162EB79E3 /* ParseVRMItemController.swift */; }; + 93EC220423DBC0B062205F56DC7D35A2 /* UpdateDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05E75D9179C0BAC5A3B770F04F45D0D8 /* UpdateDimensions.swift */; }; + 942CB62F57BBC284F920FE3FED24CF59 /* EnumPrism_PlayerControls.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CBAFE903F1CB1122596467C3069BAFC /* EnumPrism_PlayerControls.generated.swift */; }; + 95132576AE9F0CF368DD4C43347F1F66 /* AdStartTimeoutActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DBD9AD6689B7C9FBD0FE077A2B42D42 /* AdStartTimeoutActionCreator.swift */; }; + 9559DAAF1EDE43D1F9CA3CF5127101E5 /* VRMTopPriorityItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 824338BCBF79EE3D7671CF14DCDE8A53 /* VRMTopPriorityItem.swift */; }; + 95D98FD135BD4F592D8563185244D4A2 /* Color.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4311D05253D6B22DE1EF6CFA02545A15 /* Color.swift */; }; + 95E7D0F809A68B095411BBF4C76A9B71 /* UserActionInitiated.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA3D76B27D547E798DA99CDA05B1B837 /* UserActionInitiated.swift */; }; + 9656F9C1C34AA1504947E791DAEEA307 /* Context.swift in Sources */ = {isa = PBXBuildFile; fileRef = B39D58A1A76A849199D1948EB821142F /* Context.swift */; }; + 966A4EA6CAED728CF145DA18B08BED4D /* UpdateRate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4172B9253EAEF78D1DB954B824AB87D /* UpdateRate.swift */; }; + 96A01A7A3A1A8E82AB030E6A7E9B1D9A /* VRMParsingError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F44F4E161A8489EE354612B7C17A056 /* VRMParsingError.swift */; }; + 973C7230E9D31FB4AF6A9AF3633D15A4 /* VRMCoreItemScheduling.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7F3C02905B500CE36B5DAF7FCC9D05B /* VRMCoreItemScheduling.swift */; }; + 97EF7C60E22D603008B75E396AE23876 /* LoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = E956678F8DE3C0B2CD0D4F3EAC755272 /* LoadedTimeRanges.swift */; }; + 9843EFF5B4068313B4A6BDB3ABAF0DAD /* VRMPrerollProcessorController.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEA0BF08850706B54F76DCB759A7F4B7 /* VRMPrerollProcessorController.swift */; }; + 9889F8D93EEAD1A8C3C9E2301003AE28 /* SelectVideoAtIndex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B43AF6837A4014FCE9409A6CC59CDCE /* SelectVideoAtIndex.swift */; }; + 9896C8FE6DCA9E96AC1CD1D66B916043 /* VRMGroupsQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDA3BB1B5218C94CA3C4CE23A6B751D5 /* VRMGroupsQueue.swift */; }; + 98DE8D8D279A665E8E7FC487591FA73B /* State.swift in Sources */ = {isa = PBXBuildFile; fileRef = 858B163FB4203D92E6B74942B07CB1D5 /* State.swift */; }; + 9984ACCC2FC8D85AF35E1CED772CEF24 /* SeekToTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBCCCB551F0ECA160E70AB64A12DEDA9 /* SeekToTimeAction.swift */; }; + 999E0037167617157E03A87AF6EECC41 /* LoadingImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76C987F09CA0D8802B7A1311D9004DF3 /* LoadingImageView.swift */; }; + 9A587298F98239B53C89F2AA5073CCAC /* MutePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBE5D285419EC85B2E22D7D00497AE95 /* MutePlayer.swift */; }; + 9A705B67E4457B19614AA20066178CE4 /* VRMProcessingTimeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 835DCBC54061C74AFC9BC984DD6F8473 /* VRMProcessingTimeout.swift */; }; + 9C1395C96335C9A89234BAB07A250C07 /* VRMResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7754FEDA277F514B38C43CA983A9026F /* VRMResponse.swift */; }; + 9C1E8BD5322ECFE375BC44DB1B656AB8 /* BufferingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = D60C3D1AE672A087104F01FF72B03696 /* BufferingDetector.swift */; }; + 9C58DB3DAF465A530AAA82CA7745AD2D /* BufferingStart.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE296B2A3703D3C9C17C83CC4E502F9 /* BufferingStart.swift */; }; + 9CD1FC4C86EAD29084A93D0029B801F2 /* TimerActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE3B7E151EFBF277DF015CA5542ADBA2 /* TimerActionCreator.swift */; }; + 9CF6363499F098E2B2636A219AC77872 /* VRMProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2455CC47DC7111B35D5A43644731415 /* VRMProvider.swift */; }; + 9D636C63224501BBE9FC50A84839CCD7 /* MediaCharacteristicRenderer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 544EF9941E6FF56B467B8D851A1DAC51 /* MediaCharacteristicRenderer.swift */; }; + 9E8F880488DD1A9B10655F74224A81DC /* PictureInPictureToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00E5F760209DD07EB7392C6FFE7838D0 /* PictureInPictureToggleAction.swift */; }; + 9F75378B9C01234564B7834850A28CD9 /* SeekerControlView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21349908B1077D8FDBA34294FE59C118 /* SeekerControlView.swift */; }; + A065E7D8C62E0CDF813F56D44AB2502F /* Thumbnails.swift in Sources */ = {isa = PBXBuildFile; fileRef = E22ED38996DA85CF35684C7FC4DAD2AB /* Thumbnails.swift */; }; + A071FDE1F555914223C65EC4B2282EA8 /* VRMMaxAdSearchTimeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = B97181249BBB2F99B5853756BB4E354E /* VRMMaxAdSearchTimeout.swift */; }; + A0B0CF957638DD762D59F14173B29B20 /* UpdateMediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD7312650961A076EE151D98AAC0EF7C /* UpdateMediaOptions.swift */; }; + A1C77616E4FAD75884D416B27CA91725 /* Stub.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABBEB252F023A0B798A03A045FB0A646 /* Stub.swift */; }; + A1CA14925213FF279C2C84B05B51837C /* Rate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6951F7BE7D5D5AD3DC55B3809326086 /* Rate.swift */; }; + A22CD02A935A657E2F0EED302F68FBC2 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0A636A35441779271BCDDCC3697721AF /* Action.swift */; }; + A249372BAA5ACF23E711E59F5185A94A /* UpdateAverageBitrateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = FAFB722B1E3545B56FE55825A40DD99A /* UpdateAverageBitrateAction.swift */; }; + A25050FBFBE08C86C4475F23B9FBC0B8 /* PlayerUIControls.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B2178E5269A751FB7D86F4B2C7EB9D40 /* PlayerUIControls.xcassets */; }; + A2C8B991E2EAD29ADF46DC2B1F201BA9 /* UpdateCurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2ACF31A5FA0502DC622B8B546D90A0E /* UpdateCurrentTime.swift */; }; + A2DBF7B55422AD6D93FE17AE9476834C /* UpdateCurrentTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9D019C51554738DDD794F38EEB211F0 /* UpdateCurrentTimeAction.swift */; }; + A313918991794FCF13705841BC9649BC /* Thumbnail+VideoProviderResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14B3C7CED428299A83D1B17FDD4CCF01 /* Thumbnail+VideoProviderResponse.swift */; }; + A31B8A59912974FAE8DEC0F078AA695C /* EndPlayback.swift in Sources */ = {isa = PBXBuildFile; fileRef = F724FAF0CE3CFA5E62A141C75303C78B /* EndPlayback.swift */; }; + A32EC07FDC20508A751EB27B73C0A02C /* PlaybackDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FE35B86E26F5F3EF619CBD5D0732349 /* PlaybackDuration.swift */; }; + A34BCF7F834784A4022742FB6F5DCBB9 /* AdURLProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 427589C49D3ACB758E1014AA94185D23 /* AdURLProvider.swift */; }; + A37B92236E206188F01530D8DEDEB41F /* ContextStartedDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD3E7D8C856E5C55094E5B3BE907C393 /* ContextStartedDetector.swift */; }; + A37F92517E9528A4ED56FEDD5F67FCAF /* VVPSDK.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5F315E5F3548741107931C1A14E1D7E /* VVPSDK.swift */; }; + A385AFA3A9999C3F08BD4629F6A7D024 /* UpdateLoadedTimeRanges.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FA46C937BC9EC1120B323D397C3306F /* UpdateLoadedTimeRanges.swift */; }; + A3F7952CC3BA805D3C8CF33DFF3CDB7E /* TimeFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 15B717973EE21477DF8BB0748B02681F /* TimeFormatter.swift */; }; + A402BE5963E062B34F83F5385A68C77B /* UpdateDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 726549240549AA20EDFF7E613C30C722 /* UpdateDuration.swift */; }; + A47053F34DAAC6A6EB78EAE6969058A9 /* Defaultable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B99D4514E3DC2D3A73626AA63F1A0D9 /* Defaultable.swift */; }; + A4B0E2AE9C5E7F0BD91F0F260CCD782F /* Future.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED2340697D337C644EC3B3EC1EF6ED35 /* Future.swift */; }; + A5AA646811D6ACB8B1020FB149660FA3 /* VPAIDErrors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D2E9C7F381CA32CB7DB86E13C66939E /* VPAIDErrors.swift */; }; + A5BF5CD9E813FE952D763E820E4BC83C /* TrackingPixelsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DAEC7776C55862876E750FEACA51168 /* TrackingPixelsGenerator.swift */; }; + A5C0499B83907BC52AC9F7340F1C4BC0 /* Context.swift in Sources */ = {isa = PBXBuildFile; fileRef = B39D58A1A76A849199D1948EB821142F /* Context.swift */; }; + A5EC3BBDC6DCD4B8EC26683C0AA39FAB /* DefaultControlsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5760BEB7F46BBDDD79CF7A91CB81D670 /* DefaultControlsViewController.swift */; }; + A609B262D2612A159BB2F0CD76F29088 /* VVP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D09157E18B580F9A0C29349A33C35C4 /* VVP.swift */; }; + A63C69902CCD4A64434A3363FE1E43E8 /* PictureInPictureControllerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B5646CA166C043A646A28B52C313296 /* PictureInPictureControllerObserver.swift */; }; + A63EA9BFAAD79ECC6F1A9F8D002D1788 /* TimerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5DFC27D9425A7D8F28D4908E4B88021E /* TimerSession.swift */; }; + A69B0BECF64F873857315A0CE0C25915 /* Mute.swift in Sources */ = {isa = PBXBuildFile; fileRef = 241D7C3CE27DE263DEFC2A1939510AF1 /* Mute.swift */; }; + A752BAD75E4AFD000D2E15069A4795AA /* Provider.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC66F2A8B5B6EDF34D63E051CB6D81E8 /* Provider.swift */; }; + A798D9BB68A7BF593C1411547D88BB0E /* MidrollDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 430FE541D41B703063A27A90D14A0521 /* MidrollDetector.swift */; }; + A7E367D301EE07B40545E122771EA329 /* MediaOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85B543E5BB9CF463A54C35BC0CCE290F /* MediaOptions.swift */; }; + A8BFCB23A4FB16D95EA1284E028BEEFA /* VPAIDAdCreativeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75D46A82A2541597AC2FF03DAFFE9173 /* VPAIDAdCreativeController.swift */; }; + A94DB4B08B6172074242D3CF3FB104C8 /* PictureInPictureToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5709CE06F5B549609FE8462430243D29 /* PictureInPictureToggle.swift */; }; + A97988D331FA96B6820ED3598555C393 /* AdClickthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = 203C979BBCED25626DD51D4EB8A33A46 /* AdClickthrough.swift */; }; + A9AA370FEBA73658F87E18C4AA665B03 /* ContentFullScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF44F98BBF2371139D4C0D8ACE98319D /* ContentFullScreen.swift */; }; + AA1A5EB98293610C3734427F63CA38CE /* UpdateRateAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E0DBAE83144AFE0ED40E8DC7C949D8E /* UpdateRateAction.swift */; }; + AA276B5F3042CF595D6189CB84E7796C /* SphereVideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C63818EE6B6EE8F45CD2F6F1CD38C7F5 /* SphereVideoStreamViewController.swift */; }; + AA49DF263C468C3B04EF13270DBEB106 /* ProcessAdItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42BAE093BE03F8B8CC13C11F0BFF1919 /* ProcessAdItem.swift */; }; + AA84F0BDA771A6B5CEC7F78E17FB7F53 /* VideoSelector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BE822C569EAF9184A96F18225EA6DEF /* VideoSelector.swift */; }; + AAC97341EFA459FB6128742DF5697191 /* AirPlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = F96B5D4AE71A534A44412C6111306234 /* AirPlay.swift */; }; + AADF594E593215AF9BA3A0D67C462DF8 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA36A1682403007F3A50D1BC0596CBE /* Timer.swift */; }; + AAF32F1256F48A63FE952A9FD3A63BB4 /* VRMResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7754FEDA277F514B38C43CA983A9026F /* VRMResponse.swift */; }; + AAF6064AE6F5B6971EE8D9796D3869D5 /* VPAIDState.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3EB988310F57A5CD87BA1CBC7E7945C /* VPAIDState.swift */; }; + AB06115AFD376B1A0958BD3705A347AE /* ShowAdAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ED28EFD6C6A7790314310DB02731E78 /* ShowAdAction.swift */; }; + ABC98F9B6E1B12C4E49DDACB20531D0C /* OpenMeasurementActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AC4211B40C57E745758BC338334C7A90 /* OpenMeasurementActionCreator.swift */; }; + AC55139BC5F68C2A24C9435DBE8FF190 /* VRMTimeoutActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF2B9D097CAC2C9FF35D70C3CA7053C3 /* VRMTimeoutActions.swift */; }; + AC9C8ACF9FE47A78FBEE2B34F82C8C9A /* MutePlayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBE5D285419EC85B2E22D7D00497AE95 /* MutePlayer.swift */; }; + ACA59491239CE2307C330E6202457432 /* TrackingPixelsReporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00B6CFE7E7F6F12CA7ED462C1D06B093 /* TrackingPixelsReporter.swift */; }; + ACB25A761BF03E8576AB7ED592E9CAD7 /* VPAIDActionCreators.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDBD225336208C1F1029B2E1DF4CB643 /* VPAIDActionCreators.swift */; }; + AD69F0BCE8B6D232780AA8B2016C3BFD /* PlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEA4C7B25CB723B65E89BFE58C89E835 /* PlaybackBuffering.swift */; }; + AD8F4664953906FA5EDDA9E09C6C499D /* CompletePlayerSessionAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E61491A266B23563687661C22FC1963 /* CompletePlayerSessionAction.swift */; }; + ADFF40DCA442E301FA6B052AF32DFACD /* ConfigurationParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = C34BF3BC09D1FC4EB79ECC13B7B492C6 /* ConfigurationParser.swift */; }; + AE5C1C2AD623867546B8C73BC01788E0 /* ParseVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 949CEA9182DF8B907F7B5D9162EB79E3 /* ParseVRMItemController.swift */; }; + AEE9FACF1F505499F7B8DDF9AB7D9D8E /* VPAIDActionCreators.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDBD225336208C1F1029B2E1DF4CB643 /* VPAIDActionCreators.swift */; }; + AF0E71A8227265AD9D11A14D6E38B516 /* ExecuteOnce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AB9DF35E0C35EF0253809903201A63B /* ExecuteOnce.swift */; }; + AFD3C71AA0BFDA854179E7FC5096C54F /* UpdateVPAIDAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A45D3A187E2D59F4C7EAA7E7147AE95B /* UpdateVPAIDAction.swift */; }; + B017A061EA35AEB5DE9BAA0E3315B6A1 /* FetchVRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8143811FD96617CE2039C18C6580078A /* FetchVRMItemController.swift */; }; + B0BDF7A0AE0F7A9E1181A7577A3CEAAE /* AdKillAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4301473EAB3AE3570F0B3978BF0AB3DF /* AdKillAction.swift */; }; + B0BE91F0197A514F631D142F631DA130 /* UpdateViewportDimensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF8745F1E559298C885D1FDDFC8E8C8D /* UpdateViewportDimensions.swift */; }; + B103F945F26017BA6D1BB009CDBBFEF8 /* PlayerCore-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F16B032E4DF8CE0957BBCEF6D4E26BB /* PlayerCore-iOS-dummy.m */; }; + B272EB729A6D46EA771AA73C42A7D5AB /* PlaybackReady.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B3EF7D052BEE09D17E3AD5E32A0D16B /* PlaybackReady.swift */; }; + B2AB0B78AC021EC19C073EA265CE1F0D /* AdVRMEngine.swift in Sources */ = {isa = PBXBuildFile; fileRef = B478DAE3F84EA196FB1D9CF227287BD6 /* AdVRMEngine.swift */; }; + B3C7B5C01571B0EEF70B0A2699D17F27 /* SettingHeaderView.xib in Resources */ = {isa = PBXBuildFile; fileRef = F049CCF3D33F84A39B5F497871059EF6 /* SettingHeaderView.xib */; }; + B400901244946C1BDEA3166580768676 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBA36A1682403007F3A50D1BC0596CBE /* Timer.swift */; }; + B42054E9F3715D678024DDA5B42B742B /* ProcessGroupsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44EADAC5304B3A226A8E272A4D3038E8 /* ProcessGroupsAction.swift */; }; + B46D4964BF7A4B5AFC016BD004781E89 /* TrackingPixelsConnector_Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2871189A8E8F8DCBE6A90ABB5D8EA042 /* TrackingPixelsConnector_Ad.swift */; }; + B52839891610610A69AD1645F457B222 /* ContentPlaybackCycleDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43E20AC004F65581CEAB7385A17AE759 /* ContentPlaybackCycleDetector.swift */; }; + B53C55DC00DDB2127CFAB998BFE20778 /* VRMCoreGroupProcessing.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1048B0D9145F129EE8B27675D8504F84 /* VRMCoreGroupProcessing.swift */; }; + B5437303D332BB138AB76D484546317B /* Prev.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9F76B6D7229DE79AD601286E64BAAB3 /* Prev.swift */; }; + B59240D07AF5C5A2CCE6FBDC91081BB2 /* SideBarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A070C289EE321386B0EDB6EE640E57DB /* SideBarView.swift */; }; + B5B763C8700E38C5F1005B380F3A667A /* VideoStreamViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45B1D6C4FAAAE1B422D83F35071916E1 /* VideoStreamViewController.swift */; }; + B68E1B12D7923704E4669DD196E2FB7E /* VRMProcessingTimeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 835DCBC54061C74AFC9BC984DD6F8473 /* VRMProcessingTimeout.swift */; }; + B728E78CA96A37B926757D2D6826827B /* TrackingPixelsGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DAEC7776C55862876E750FEACA51168 /* TrackingPixelsGenerator.swift */; }; + B7435D057944F53C23E0A994A039C911 /* SkipRepeatsDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE024C1BB9541FE781071A75F007DD47 /* SkipRepeatsDecorator.swift */; }; + B7C2C566F679D88485E901B6F788AAB8 /* Nop.swift in Sources */ = {isa = PBXBuildFile; fileRef = 416333376C9D774054B3EDDB85A160F6 /* Nop.swift */; }; + B7E8B7735F27D6B63426D54D4DF5EB25 /* TimeoutAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DAFFB3AEE797A99279281F7C6AA7869 /* TimeoutAction.swift */; }; + B813AB8D024E76C559F165E12F7B322D /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F516F4059EE3C41041CE7BA734064D28 /* Observable.swift */; }; + B849B9BAA39A9BE413A6ED62F51F12F1 /* VRMTimeoutError.swift in Sources */ = {isa = PBXBuildFile; fileRef = D11779009B807C7D99D278F03AFA1D81 /* VRMTimeoutError.swift */; }; + B87565FC47D60FA93E0545F21C0956EC /* AdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23D89C0CA935EDCE79B02559683FAE28 /* AdProcess.swift */; }; + B89D8E8CE48450E744AC027FF68C260C /* FullScreenToggleAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CF82A4A446951B30E5AC50656688170 /* FullScreenToggleAction.swift */; }; + B8B55B31C5F5AC9D5DAE9AB1B246E97B /* Next.swift in Sources */ = {isa = PBXBuildFile; fileRef = 411FC5668965585A84979C8ED23E023D /* Next.swift */; }; + B8BBC06B1263B0014B50BE938E0FDF1C /* CompletePlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBF90D1E6E5F620B0E65C8A007E9B64E /* CompletePlaybackSession.swift */; }; + B8E1DBF0C55F40CD0A74891B43AE032D /* Pods-Tutorial-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A3B76CDEF86878DB87E16B0E1014779F /* Pods-Tutorial-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B8E4A031D6A2B1B257D9307E8AE66A46 /* PlaybackDuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FE35B86E26F5F3EF619CBD5D0732349 /* PlaybackDuration.swift */; }; + B97C7295F8F86B109729E64D04658511 /* BufferingDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = D60C3D1AE672A087104F01FF72B03696 /* BufferingDetector.swift */; }; + B9FA47DD6FB8814A16E48F8E9D22DC66 /* AdSkipDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C12591FF1FBA7D741C75E7433A08B69 /* AdSkipDetector.swift */; }; + BA37E4071259E281826FF75C409AAF61 /* VVPSDKPlugins.swift in Sources */ = {isa = PBXBuildFile; fileRef = 680F847DBB3093378AEEB56B1AC90165 /* VVPSDKPlugins.swift */; }; + BB2C565DA89562A98DF60468E7029430 /* VRMCoreResultSelectionActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54C9EF2713DF7FA01C9F94DF325BBBD6 /* VRMCoreResultSelectionActionCreator.swift */; }; + BB47336B9894BAC07ED089C7E688D966 /* OpenMeasurement_Tracking.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1D2C80149026183A373986FA1B50DC91 /* OpenMeasurement_Tracking.swift */; }; + BBD13983AC5BCEF3F83D7E1469013745 /* TimerActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE3B7E151EFBF277DF015CA5542ADBA2 /* TimerActionCreator.swift */; }; + BBDA692CB2F822A2150B3C93F7B8C44F /* PlayerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73CE698D25BD83DC56819D10851CC914 /* PlayerViewController.swift */; }; + BBE5F24099EE00D479E88AD3826E1418 /* VVPSDKPlugins.swift in Sources */ = {isa = PBXBuildFile; fileRef = 680F847DBB3093378AEEB56B1AC90165 /* VVPSDKPlugins.swift */; }; + BC18A1A5132C2B80CCD400D0F04900F9 /* PictiureInPicture.swift in Sources */ = {isa = PBXBuildFile; fileRef = AD45EA40C96A3CBD46D0C370A935E922 /* PictiureInPicture.swift */; }; + BC57E7A658B60A660610B0C8ADB6F658 /* VRMCoreAdProcess.swift in Sources */ = {isa = PBXBuildFile; fileRef = 539D4BF5DDA135A144A33F1B3491BF6C /* VRMCoreAdProcess.swift */; }; + BC5BEBEFF97CB9C89900E8EAADCD4148 /* OMServiceScriptActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1C9BB081E98FA80C43BADCE8B8C0C2B /* OMServiceScriptActionCreator.swift */; }; + BCCB9927C69D0057AB15D51FC8DD7CD5 /* RendererDescriptor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 255FABA731E7F630E903F5092158FEE0 /* RendererDescriptor.swift */; }; + BD5D0A3426968A13BD37DE13776A0D49 /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F516F4059EE3C41041CE7BA734064D28 /* Observable.swift */; }; + BE3E8E4A380108407407941A59533F1E /* VRMFetchItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E897C289563C8D67431C0832803FF67 /* VRMFetchItemQueue.swift */; }; + BE9C318114DF1FD41C9FEB24A6D60EBB /* PictureInPictureStatusUpdate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25530199B00503138E9F97F62ABFC169 /* PictureInPictureStatusUpdate.swift */; }; + BEAAC7E3DEAF967C4E75FA2FE7125154 /* VPAIDAdCreativeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75D46A82A2541597AC2FF03DAFFE9173 /* VPAIDAdCreativeController.swift */; }; + BFB50B106D89DE497F18BE0E8563F895 /* Store.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A07428ABBDDD8905B46E749BB74574F /* Store.swift */; }; + BFDC25D3FE6385DEF37645F56B71E9D9 /* Network.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7065C6F011B75B341722CDE919FC3FDD /* Network.swift */; }; + C01C1FF188E8D3B6814258D6FCD6BB5E /* Telemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8823496B4EB40057F7682B2C034CDF6B /* Telemetry.swift */; }; + C01CF49DF8E8E6FD0C5B9F679E58F126 /* PropsMapping.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA52D4EFBFC5456BF448D03DB27EBF /* PropsMapping.swift */; }; + C0CDA1DEA14B5D6667E978EBE4C689C6 /* VRMSelectFinalResultController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 677340E664314FA33C5A2949DB5D5746 /* VRMSelectFinalResultController.swift */; }; + C0F6818EB8B18553E3003E51E873BF2C /* OpenMeasurement.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A4CDC2EA513530920C6EA1CE9289BBE /* OpenMeasurement.swift */; }; + C11316E7A2585E388AA627EEEDF3800E /* WebviewViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F97179D00692409596EE4332EC28BF0D /* WebviewViewController.swift */; }; + C2C82C2BD3186FE13C26E9D6FC1D0CC2 /* VRMItemResponseTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = A893B6EFF46FFB985B44D5DBAB32EEBC /* VRMItemResponseTime.swift */; }; + C3A83589C0BE35746BEAF6BCB09F9B45 /* OpenMeasurementServiceScript.swift in Sources */ = {isa = PBXBuildFile; fileRef = C37C9FC0A3A078FA59D3B86FAD4F688E /* OpenMeasurementServiceScript.swift */; }; + C410402C6AB699ECF983058484A3A503 /* VRMProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8741F2E90332E8747958B21645DBCF03 /* VRMProcessingController.swift */; }; + C41F15E3CCE90423E6F38E2DEE0BFA3B /* PlayAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1489AF6684DBF0166EFE3EB8A41E839 /* PlayAd.swift */; }; + C4C67C9655965EBF8B7E743E42AF260A /* VRMRequestDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2546F3AC631A153E0D85FB15DA1E79D1 /* VRMRequestDetector.swift */; }; + C4F34B6F86AD91DAF8265C1D0C690756 /* VPAIDState.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3EB988310F57A5CD87BA1CBC7E7945C /* VPAIDState.swift */; }; + C6468263C924304BAE8C4BEF7EC89252 /* SkipRepeatsDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE024C1BB9541FE781071A75F007DD47 /* SkipRepeatsDecorator.swift */; }; + C667C79F51098A052B96DE1F9091C34A /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F27BC79EB536AC04D95AB45AFC79DF62 /* Disposable.swift */; }; + C6BA6FF03B83831BB8BCE565A8D14AD6 /* PlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEA4C7B25CB723B65E89BFE58C89E835 /* PlaybackBuffering.swift */; }; + C74F2DE63F05FF6D4A0239491ABE3D58 /* SystemPlayerReplayDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4689AC7C0054304905979031B880A398 /* SystemPlayerReplayDetector.swift */; }; + C7AE1DCA9EB918852D49FCFC212BEE73 /* VRMItemResponseTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = A893B6EFF46FFB985B44D5DBAB32EEBC /* VRMItemResponseTime.swift */; }; + C7E367B970D04D7943A4AFFA32A05903 /* CurrentTime.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1170FFC23FEE414E57D7D1E40FFD58A3 /* CurrentTime.swift */; }; + C8024F08195530243922FE6120D06E62 /* PlayerProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC39F8966ED54045F1D83D3763B59DDB /* PlayerProperties.swift */; }; + C8244831250DFE2CCCFC7CDED7809E66 /* QuartileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC7331BA5E15E312E118D0428E477DE /* QuartileDetector.swift */; }; + C8841E16ACE37DDAC4731CA46D48F5AE /* VRMRequestController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25E6DAB0360283F153BFEB47269A97E3 /* VRMRequestController.swift */; }; + C886362C07C8D984291A8610F71643C9 /* AdCreative.swift in Sources */ = {isa = PBXBuildFile; fileRef = 938EF0021D9EB8602D878B43E90701AF /* AdCreative.swift */; }; + C8DA7937C27E923F82987A0097E76B6A /* Playlist.swift in Sources */ = {isa = PBXBuildFile; fileRef = 493F1EB01D28B76478B7ACD1E3B3D30A /* Playlist.swift */; }; + C98431965B7E64ADB0B9D2E0E660FA79 /* AdEngineRequestDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2C45AF85FE47A98D7D7E54E8BA0B16B /* AdEngineRequestDetector.swift */; }; + CB06B4037E324E09C61177FEAD57184E /* Pipeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A3606D3CBA75E4CCA38E67DC4ECEB32 /* Pipeline.swift */; }; + CC2DCDDDF1942FCCEB9E1C9338BB2B7B /* MetricsSender.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48500F19ADDB5D858A2CCFCD19942D6B /* MetricsSender.swift */; }; + CD66432FC7B7BCAFC3388B561B728B70 /* Future.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED2340697D337C644EC3B3EC1EF6ED35 /* Future.swift */; }; + CD6D6A1A58EE2BBE119C0039057924DF /* MuteAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34113B05E2961F2CB9FC3CD4ACE915E3 /* MuteAction.swift */; }; + CD7CD2ABD1B6B585A2E6657FE743B7B1 /* DecileDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AA5AC218163904092E98370D7E692D7 /* DecileDetector.swift */; }; + CDCE8B76763C9DA4284799F620BBE7E0 /* AdKillAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4301473EAB3AE3570F0B3978BF0AB3DF /* AdKillAction.swift */; }; + CE067F3EACBF77B420077ECD2B902D02 /* ProcessGroupsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44EADAC5304B3A226A8E272A4D3038E8 /* ProcessGroupsAction.swift */; }; + CF1C054C6C0C7B7A3D8C86D4CB52B785 /* AdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A5148365180E280B3D9BB173DB7A0E /* AdRequestAction.swift */; }; + CFE3D1936340E0710D572970BAA8E44D /* AdStartTimeoutController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2307F031C37CAFEC88180C9FCE333AC1 /* AdStartTimeoutController.swift */; }; + D04EFADF98FBA07C9CEE3BB0E89F12B3 /* InteractiveSeeking.swift in Sources */ = {isa = PBXBuildFile; fileRef = B46184B120B636FE04338E4C563B129C /* InteractiveSeeking.swift */; }; + D058E039BD66930657A0ECD7503AAD7F /* VRMCoreGroupActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85C2563E1594BB1A79E1D5BC0F785EF7 /* VRMCoreGroupActionCreator.swift */; }; + D0F5A776F2021715E14216403094498C /* VRMItemController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E779BB81CD7A7993B58A67FF97ECCF5A /* VRMItemController.swift */; }; + D1E146B4CC37745BC3C42412090AB60A /* SlotOpportunityDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = E67AEE76C5D7EEA3916AC1206500E4FE /* SlotOpportunityDetector.swift */; }; + D2E23857419BAD1579CE0E5430F7AC40 /* Player.swift in Sources */ = {isa = PBXBuildFile; fileRef = 506DF7858B5FD5FA426CC341F20A998F /* Player.swift */; }; + D370318336FF15D6D762A38513C7E5DB /* PlayerViewController_Clickthrough.swift in Sources */ = {isa = PBXBuildFile; fileRef = 36449BB12FD7459EE745FF5C67A43148 /* PlayerViewController_Clickthrough.swift */; }; + D4C78D443CD82853768E8D74AF43BE8F /* SkipAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4BD22CAA4F6A906B2098551B9F7834C /* SkipAd.swift */; }; + D51F6F0BD37EDED45E189C109774A9F7 /* VRMProcessingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 367DAFF3F394C4E981EE0E158A38E566 /* VRMProcessingResult.swift */; }; + D567D701D832FA1ABDF0C31F430A2599 /* Autogeneratable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 064B100FBA997CA7EF23C718AA38E24D /* Autogeneratable.swift */; }; + D6065DE55A84EFBE4C5D65A8511D0D65 /* TrackingPixelsConnector_Ad.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2871189A8E8F8DCBE6A90ABB5D8EA042 /* TrackingPixelsConnector_Ad.swift */; }; + D609D4AEC94606E897A4D9448E7BC3E7 /* VASTModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6A7B067302D1217C91F1F39BF1768FE /* VASTModel.swift */; }; + D639426EB34040DB9D493628C79BAA54 /* UpdateVPAIDAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A45D3A187E2D59F4C7EAA7E7147AE95B /* UpdateVPAIDAction.swift */; }; + D66D0CC31843206BFD367AF94DEBBB27 /* SphereView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA4D79DE44B9B97BE67427A91A2350DD /* SphereView.swift */; }; + D69B2D3A64473BC852E26184A4031674 /* PictureInPictureControllerObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B5646CA166C043A646A28B52C313296 /* PictureInPictureControllerObserver.swift */; }; + D6A35FF5082B54C05F1E6FED92011CDD /* VRMOtherError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2381728B182E51F65A2398680D67EA78 /* VRMOtherError.swift */; }; + D6A8954A6D206707B71892AF10486366 /* VPAIDEvents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E5DC228BF87087E5913738B5B594E8A /* VPAIDEvents.swift */; }; + D6C6DE15FF4AFE89461B850DFC1D6203 /* UpdateCameraAngles.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04C5E40F9592EBC9A65DFB9D1AB36461 /* UpdateCameraAngles.swift */; }; + D7004B6517F99F3310A862ED3726A82C /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7455A26172FA5AC9BBC4B6D9749FA612 /* Configuration.swift */; }; + D705B24232B3DDDE598859DB424D0863 /* VideoProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 652A3033B2C9E0D6EC8A18D24CC49930 /* VideoProvider.swift */; }; + D7FA41DFDDFA45D255112A0F9673DAEF /* AdEngineRequestDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2C45AF85FE47A98D7D7E54E8BA0B16B /* AdEngineRequestDetector.swift */; }; + D8E0869EB14440DB05B1B526B74F3806 /* MuteDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99E8B7B5FCCA28CC4CA559806CD8A687 /* MuteDetector.swift */; }; + D9AE94DDB1AB9ED69017669691156808 /* AdClickDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 639DBFF53B7BFB869AF06C09FDACC6FC /* AdClickDetector.swift */; }; + DAE17EA38B469A49A2022E2F95D24E42 /* OpenMeasurementServiceScript.swift in Sources */ = {isa = PBXBuildFile; fileRef = 250556BFF911BE5C9152305C40C7A585 /* OpenMeasurementServiceScript.swift */; }; + DB1EB8A681C3D822C761432124C76860 /* VRMCoreResultSelection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4ECB04A6AC31C73E881B615C0BF3744F /* VRMCoreResultSelection.swift */; }; + DB23C76DC151BC9D71D740A33CEAB77E /* AdManagerPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35AE340418FF18C418FD3D6F03140CA7 /* AdManagerPresenter.swift */; }; + DB422E1EC11713CB2F4561EFE09D9D74 /* CompletePlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BED9CA577C475F4720BE8DCBAD30127 /* CompletePlayerSession.swift */; }; + DB81B2BCCA7A1E732C481EF0E150E5EC /* Telemetry.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8823496B4EB40057F7682B2C034CDF6B /* Telemetry.swift */; }; + DC1C3057F839B04770CC1C87DCDA804A /* PlaybackSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD69C5F28ECAEAD21998EA9D9663434E /* PlaybackSession.swift */; }; + DC2B4724E5A5350B40F5A854682CCB3B /* AdClickThroughAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2908A08B70C308A5ED83F08F1C36730F /* AdClickThroughAction.swift */; }; + DC48E93F7C59F570D435A1766BD4756D /* Memoise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EC6531781089A8EF98F99BAF11C1FF4 /* Memoise.swift */; }; + DD9A3F8895E2A6C6CBEAF6F5EAE037E5 /* VPAIDProps.swift in Sources */ = {isa = PBXBuildFile; fileRef = 054E0C60F3F76FB3C2D3738F157D18C4 /* VPAIDProps.swift */; }; + DF6AB9F82A6DB6C54DEA6057CEFE6E1F /* Pods-Tutorial_tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F23F96C28DF5C30FEF8ADA9C980CCFA /* Pods-Tutorial_tvOS-dummy.m */; }; + E130319714EB9D2B5BF5D51F9DE033A4 /* OMServiceScriptActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1C9BB081E98FA80C43BADCE8B8C0C2B /* OMServiceScriptActionCreator.swift */; }; + E22FE104837CEB1CD9D89B58EF2DEBCA /* SeekToTimeAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBCCCB551F0ECA160E70AB64A12DEDA9 /* SeekToTimeAction.swift */; }; + E26535EB6D8D597BDAD8ED98CB8C95B9 /* PlaybackFailed.swift in Sources */ = {isa = PBXBuildFile; fileRef = 044F59316AB07DD14F58AAB8EAE27F0A /* PlaybackFailed.swift */; }; + E31F2DFD166C0607288F3A9394CEE5FD /* SystemPlayerModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D378FEF89722949A528A121CAF5B977 /* SystemPlayerModel.swift */; }; + E341E4EC93F8BFC452DCC7DEEFB4F9B2 /* VRMFinalResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34D13B9B50D4BB0C55C56FEE2A8915D3 /* VRMFinalResult.swift */; }; + E3666449EB47522272653B0190180A00 /* CompletePlayerSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BED9CA577C475F4720BE8DCBAD30127 /* CompletePlayerSession.swift */; }; + E400CD246DE98FEFF19C2A56AF3B7217 /* ApplyDecorator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCD7E16ED4840943F5ED1B88FE91DEA1 /* ApplyDecorator.swift */; }; + E413FAF96B475B3B880EA74C85832584 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = F27BC79EB536AC04D95AB45AFC79DF62 /* Disposable.swift */; }; + E5989B3B54EC7CF31F6CA72B2A602478 /* AdErrorDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6A1E360E33BAC9D776A2608A53BE261A /* AdErrorDetector.swift */; }; + E5AF96B8C63759DE56EA020A2B01EDF3 /* AdPixels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26317AE0B22EA94F5D8E361F96C8CE87 /* AdPixels.swift */; }; + E5D6ACB22C67917EBA2AB4BEAEED01C7 /* VRMItemActions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5CDEAA8CEA39CF549E71BF33508A7324 /* VRMItemActions.swift */; }; + E60410804C26A48216236DAB9E39B507 /* VRMMaxAdSearchTimeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = B97181249BBB2F99B5853756BB4E354E /* VRMMaxAdSearchTimeout.swift */; }; + E60D11218347F8C90536E72A9FBB4AD4 /* ConfigurationParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = C34BF3BC09D1FC4EB79ECC13B7B492C6 /* ConfigurationParser.swift */; }; + E615C4A8FD7E6439B68CCC941CC8C022 /* PictureInPictureToggle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5709CE06F5B549609FE8462430243D29 /* PictureInPictureToggle.swift */; }; + E649D7C172A9942CB59C931593FD8ECC /* StallingRecords.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB9471519FE70B1521B2D44C54502B2B /* StallingRecords.swift */; }; + E75F2742D6872D65FACBED1AB5FE4623 /* SeekerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9BBD6341619BC902CC7C4B475B68E1D9 /* SeekerController.swift */; }; + E76606CDE2DE6DD23D00CE20E7042CFC /* AdFinishTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9375C8A6EEEF93548251864F810A413A /* AdFinishTracker.swift */; }; + E82522EBDCE0F5357E86C1D20063F08F /* SkipAd.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4BD22CAA4F6A906B2098551B9F7834C /* SkipAd.swift */; }; + E8BD0334B651CEA75FBD0AE89758A180 /* VRMCoreAdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9E27451E4F7AFF1B3CADB6BC353EE831 /* VRMCoreAdRequestAction.swift */; }; + E90BCC0463FBB9DFCE0A8CDCB379EE63 /* VRMTimeoutActionsCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 139DDC45B37F71E18C20B94C8F365C91 /* VRMTimeoutActionsCreator.swift */; }; + E91C353C5B73B09EEBA4E85F19EB5C99 /* IntentDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA8D78AA287EE9A4800AE58217292B4B /* IntentDetector.swift */; }; + E98D5E1C8CFF1C94382A49D3FB139B47 /* VRMParseItemQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 215D582548D0F59AA7DE97B62B7A8EA2 /* VRMParseItemQueue.swift */; }; + EA2AEBE41A9097AB039EDB27892DEAE6 /* ScheduledVRMItems.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9855B4C13C7EE5DE8B3AC4515AEEFF0 /* ScheduledVRMItems.swift */; }; + EA9C9557C1592ED0C39D6B5DCDB9C629 /* TrackingPixelsConnector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 209FCF3C1887B131F21E5FB7E7031B83 /* TrackingPixelsConnector.swift */; }; + EB0246A8C28C1F8B124A33B68C1D3752 /* Replay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 643BC1398CB4F4F11465F6B9D298A187 /* Replay.swift */; }; + EB561B82CDE7DA77548A7096FA16742F /* MaxShowTimeActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6CB305DE80426085C7691D487F0E0A3F /* MaxShowTimeActionCreator.swift */; }; + EBB28761CB9758302D31A9895358D96A /* VVP.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D09157E18B580F9A0C29349A33C35C4 /* VVP.swift */; }; + ECBD658BCBDB2612B2B64E61F17CBEAD /* XMLParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = E84D116294F68DF4023DA6E7D078758B /* XMLParser.swift */; }; + ED188F40FAAFA18C7392C2970610BABB /* PlaybackBufferingAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 176C68CF6066CF79270C09A1A3A1A500 /* PlaybackBufferingAction.swift */; }; + ED8368AC3A00EE98C0D3E0FBED9A6876 /* VRMDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9CF76D0086E98DB22D803526733F1CC4 /* VRMDetector.swift */; }; + EDB02C34037FA45F4E85AFDCB287C46E /* VRMMidrollProcessorController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1616B1C185878594C5B5C7A5FB28FD76 /* VRMMidrollProcessorController.swift */; }; + EDF7F6F52D41759417C600F6C8276D2E /* UpdateExternalPlaybackStatusAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B99EB97E6ABA6A3D47C30B688CD2297 /* UpdateExternalPlaybackStatusAction.swift */; }; + EE12738298398082C394B0A6B4FD2452 /* RendererRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16A3E6249C0614E92710ABE781A2E24D /* RendererRepository.swift */; }; + EEAC1BDA8BCA0B0484F061D6B38DCF13 /* PlayerInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B0904CB47448F5D4E6AC8F8A185568F /* PlayerInterface.swift */; }; + EF32618698493B74F803969DA06CA8DF /* UpdateDurationAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = A77024FDE646B0362FE0EBE24748A62D /* UpdateDurationAction.swift */; }; + EF40D294FAFB644453CD856FB6AC2ABF /* FinishVRMGroupProcessingController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06F04EAB91ACF8351163497054232A18 /* FinishVRMGroupProcessingController.swift */; }; + F12AFD54A8BBEDA37267C359D6A034D3 /* Metrics.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D0CF6B2232E18B3C96E4C86193F2189 /* Metrics.swift */; }; + F159BBF9C7360BC79485CEDF366B1B15 /* AdStartTimeoutActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DBD9AD6689B7C9FBD0FE077A2B42D42 /* AdStartTimeoutActionCreator.swift */; }; + F1A7C3C663556D72E53312DA3A0000E9 /* UserActionInitiated.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA3D76B27D547E798DA99CDA05B1B837 /* UserActionInitiated.swift */; }; + F1B2BE81D04B461C88F5373FDA90AE4D /* VerizonVideoPartnerSDK-tvOS-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 05C134C8F64221B7772BF1CF91859388 /* VerizonVideoPartnerSDK-tvOS-umbrella.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F2472958824F5A21F0F52CCA20CD7A71 /* AdEngineResponseDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 805643DD11BA75587522F957A546F953 /* AdEngineResponseDetector.swift */; }; + F2905F6CB9B3D1AE9318E57E1E056CDF /* VRMGroupsQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDA3BB1B5218C94CA3C4CE23A6B751D5 /* VRMGroupsQueue.swift */; }; + F329BBEA927612824FA209BDB1A91AC3 /* PropsMapping.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DFA52D4EFBFC5456BF448D03DB27EBF /* PropsMapping.swift */; }; + F351A3F41A089D6F78950763E780E2D4 /* UpdateMediaOptionsAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF5DEFCC2A4D984F086303606593BDA /* UpdateMediaOptionsAction.swift */; }; + F47AF683D3EE03F3D1CABBB5A348D732 /* AdRequestAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A5148365180E280B3D9BB173DB7A0E /* AdRequestAction.swift */; }; + F4A0CDCCDC5D7C23AEFDE0F5D4C9A5F1 /* MP4AdCreativeController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8336F8499CB16D44455B9D10BDAB06E5 /* MP4AdCreativeController.swift */; }; + F55DA3778DCF3ADDAA05C8104B7B7EE7 /* UpdateCameraAnglesAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77D0255014DDAFAA7DF51193CA40C588 /* UpdateCameraAnglesAction.swift */; }; + F61660C08206844C098521BF16DCB25B /* UpdatePlaybackBuffering.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53014B83B47DFC39471AA6860B220C00 /* UpdatePlaybackBuffering.swift */; }; + F616D424E822BD3E04BA102B21989341 /* Progress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61AF9BD5A37819EF4B90A0F967822049 /* Progress.swift */; }; + F61821E69EBC0713D929166FDA3650F2 /* AirPlayView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 12E355AC24B80A849E560B6B37735181 /* AirPlayView.swift */; }; + F662A331DB434C4A34B4B191FD1F88EF /* NonEmptyString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1BC8F331FC0F9CD91961E9584A9DC84D /* NonEmptyString.swift */; }; + F6DB4AFC43BA9DFB11741C3F43FF7150 /* VRMRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 561A9475F0DB349710A588E9F4C79A49 /* VRMRequest.swift */; }; + F7DB40B96E30B4E95A2197E258B8A934 /* VideoActionsDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7C0C247770502E9BF9C7B69DDC4DAE6 /* VideoActionsDetector.swift */; }; + F84825B40EA31B02C6FC6E3433595D53 /* Utils.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1C51EBCB50E78FF34FAC17DD0E684F2 /* Utils.swift */; }; + F8C1F63EA028732A9F7205F65A304B9F /* AdVRMManager_Hashable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B33514C0500719FF13768B4963F0745F /* AdVRMManager_Hashable.swift */; }; + FA9A9A3BB073A62A3BA6A66DEEDD044E /* OpenMeasurementAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = C617DF87E031CF468400B9E93FC1BF08 /* OpenMeasurementAction.swift */; }; + FAE185DF036A495E22A475BA91134F6D /* VRMCoreAdResponseActionCreator.swift in Sources */ = {isa = PBXBuildFile; fileRef = C986FAECDCB0230F974CB8F5F2F47CED /* VRMCoreAdResponseActionCreator.swift */; }; + FB1E54733883EE37AFE2A37D25274037 /* VRMProcessingResult.swift in Sources */ = {isa = PBXBuildFile; fileRef = 367DAFF3F394C4E981EE0E158A38E566 /* VRMProcessingResult.swift */; }; + FB3EC46B4CCDCED76A7CE6371A33FA74 /* AdViewTimeDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27D97160CD0231B3EDA6B99F7A02B01E /* AdViewTimeDetector.swift */; }; + FB4D44E83872B59F3A75B630E02E67EA /* VASTParser_Offset.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7C5CE70F344F924E600C2D8B2817AFB /* VASTParser_Offset.swift */; }; + FCC8BB009211F957D0A2A60CB3DDF7FC /* SettingCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 164C622F3873703079AE2F90A1CE9E4E /* SettingCell.swift */; }; + FDBB9725661102566133C054D5D4E529 /* AdVRMManager_Hashable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B33514C0500719FF13768B4963F0745F /* AdVRMManager_Hashable.swift */; }; + FE86777B2B8A8688FE73C4F19BCF1D77 /* TrackingPixelsReporter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 00B6CFE7E7F6F12CA7ED462C1D06B093 /* TrackingPixelsReporter.swift */; }; + FEBA9D514D01EE3AEAD5869C5DA99134 /* AdInfoHolder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62197EA5B64BF7334F805F9E838C098D /* AdInfoHolder.swift */; }; + FF503B20A7AEB79C34CA2029E4B2F154 /* Dispatcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76F034D17EA7D7784B6AF9684E8F839C /* Dispatcher.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 0E2E3EDBF5E8173D6A6BC602F4D63805 /* PBXContainerItemProxy */ = { + 0C3F4952B9C6B9ACEE138B408022A111 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 54E0B6CE24E18E8F72C5D506091438D3; - remoteInfo = "PlayerCore-iOS"; + remoteGlobalIDString = B4AD1D701403773BC1EBD43142F45045; + remoteInfo = "VideoRenderer-iOS"; + }; + 0E79FDFDE9FC2457E49CFD96947AAE45 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E8266011723A7DE67F6E50957EF2597F; + remoteInfo = "VerizonVideoPartnerSDK-iOS"; + }; + 38C43C64E2FDFC28F9D2039D32814226 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E365AC994C370D4C0071BC2CA13F97DF; + remoteInfo = PlayerControls; }; - 12C7FE4EC8A597291BAD4FE9977F8DD5 /* PBXContainerItemProxy */ = { + 3FE4300DB5EAF68B2FA8E6F6F6066FE3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 008E740531CFFBBFDC9557C066CFA569; + remoteGlobalIDString = E35BAFC4B04DB6AA1C9D24A0B60EA7B0; remoteInfo = "VerizonVideoPartnerSDK-tvOS"; }; - 218250D818B52AF8BCD87C1F941F8F14 /* PBXContainerItemProxy */ = { + 4758FAA2D1FEE25EB9F18D0DDA7B60F2 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = DF498F1ABDDE84CE24175CA10F563BAA; - remoteInfo = "PlayerCore-tvOS"; + remoteGlobalIDString = 84796276770B19A14E8D50F9413AFA89; + remoteInfo = "PlayerCore-iOS"; }; - 45DEFC6E34E8CF595AA5FA0B8AAB8F22 /* PBXContainerItemProxy */ = { + 4838951D369784B15B2A3874DC0B19E0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 3D74E7125090C881A85C8E0A6D76E044; - remoteInfo = "VerizonVideoPartnerSDK-iOS"; + remoteGlobalIDString = E0895D7EE1F741F56B4F1C3D38264F7F; + remoteInfo = "OMSDK-Oath2"; }; - 490652B3179D48826978461449F80330 /* PBXContainerItemProxy */ = { + 64A5BF6BDA47C9C44974B4AB2935C94A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 9A103A789D7B4C881F5987891104926F; - remoteInfo = "VideoRenderer-tvOS"; + remoteGlobalIDString = 84796276770B19A14E8D50F9413AFA89; + remoteInfo = "PlayerCore-iOS"; }; - 5FA444CBCB8B41506FB49D55F3E95DB3 /* PBXContainerItemProxy */ = { + 8F8BCC0A9180F27F3398AF3B42148AC0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 0F0BFA4FAA6698905E081CA89D51B7DE; + remoteGlobalIDString = B4AD1D701403773BC1EBD43142F45045; remoteInfo = "VideoRenderer-iOS"; }; - 6D8ADC1CC362E95AC873D9DDED0D1B21 /* PBXContainerItemProxy */ = { + 94D1AF954B453592F98AE06FF61AF0EE /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 9A103A789D7B4C881F5987891104926F; - remoteInfo = "VideoRenderer-tvOS"; + remoteGlobalIDString = E365AC994C370D4C0071BC2CA13F97DF; + remoteInfo = PlayerControls; }; - 740095BA5C8134C7CF799FACC1B54BA8 /* PBXContainerItemProxy */ = { + A9B190D7E547917A4B02E13B5AC61CC5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 2F75FEE377AD7BAF8C565B850380995F; - remoteInfo = PlayerControls; + remoteGlobalIDString = EF2C08EB266CD894822311A10EB25C57; + remoteInfo = "PlayerControls-PlayerControls"; }; - 8D1DFB2E52E535DFD2CFD3335F2826E9 /* PBXContainerItemProxy */ = { + D20861B5227170EACD832D1C34E4A93D /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 54E0B6CE24E18E8F72C5D506091438D3; - remoteInfo = "PlayerCore-iOS"; + remoteGlobalIDString = 287CB9858CF055FA9ADA55859EFB9F17; + remoteInfo = "VideoRenderer-tvOS"; }; - 99C6AD2741EC690EB08B735F53523FD5 /* PBXContainerItemProxy */ = { + D61616DEB295D43F44C7A71E8E67CF47 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = DF498F1ABDDE84CE24175CA10F563BAA; + remoteGlobalIDString = 4E9E5A2F313892BD91A557840B32810D; remoteInfo = "PlayerCore-tvOS"; }; - B506A3D6575E3A1B6AD719B6B49D6C91 /* PBXContainerItemProxy */ = { + DF76FF87323396C5442FFA4E9688693A /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 2F75FEE377AD7BAF8C565B850380995F; - remoteInfo = PlayerControls; + remoteGlobalIDString = 4E9E5A2F313892BD91A557840B32810D; + remoteInfo = "PlayerCore-tvOS"; }; - F36C987FE43239880B3BF1190F72D802 /* PBXContainerItemProxy */ = { + EFEEC4CAA53172AA550320B09EA7A870 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 0F0BFA4FAA6698905E081CA89D51B7DE; - remoteInfo = "VideoRenderer-iOS"; + remoteGlobalIDString = 287CB9858CF055FA9ADA55859EFB9F17; + remoteInfo = "VideoRenderer-tvOS"; + }; + F8A81E440F0B16129F39C338FB4E7A25 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = E0895D7EE1F741F56B4F1C3D38264F7F; + remoteInfo = "OMSDK-Oath2"; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 001DF36A9EFCD0DCE34D82D1A1B6E40C /* UpdateCurrentTimeAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCurrentTimeAction.swift; path = PlayerCore/actions/UpdateCurrentTimeAction.swift; sourceTree = ""; }; - 00C8541BC89273217935B674255CDBCF /* AdVRMManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVRMManager.swift; path = PlayerCore/components/AdVRMManager.swift; sourceTree = ""; }; - 00E473D2D02ED743BBA2265D87BA7287 /* Provider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Provider.swift; path = sources/config/Provider.swift; sourceTree = ""; }; - 045810D2B7A2421CA10E5823AC70CCD5 /* AdProcess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdProcess.swift; path = "PlayerCore/action creators/AdProcess.swift"; sourceTree = ""; }; - 05934FAF0539FAF4013B7453CFA7BBB5 /* Network.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Network.swift; path = sources/network/Network.swift; sourceTree = ""; }; - 05B1B2816ED4C554DDB9303D17FF368D /* CompletePlayerSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlayerSession.swift; path = "PlayerCore/action creators/CompletePlayerSession.swift"; sourceTree = ""; }; - 05EF839117BFA04DA2CBF757037FF5E1 /* libVerizonVideoPartnerSDK-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVerizonVideoPartnerSDK-iOS.a"; path = "libVerizonVideoPartnerSDK-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 062D2F46B54C74934ED7F20311DB9D55 /* SlotOpportunityDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SlotOpportunityDetector.swift; path = "sources/metrics/detectors/slot opportunity/SlotOpportunityDetector.swift"; sourceTree = ""; }; - 07B08EC998BDA37104785E3CD5D2C180 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = sources/player/observer/Observable.swift; sourceTree = ""; }; - 07B7F0918426056110EBF06E940BA82D /* PlaybackFailed.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackFailed.swift; path = PlayerCore/actions/PlaybackFailed.swift; sourceTree = ""; }; - 093B6082E73E5596B3859CAB3C9F03CE /* Props+Autogeneratable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Props+Autogeneratable.swift"; path = "PlayerControls/sources/Props+Autogeneratable.swift"; sourceTree = ""; }; - 094239C49BC1DA91AB7880B4BF816371 /* SettingCell.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SettingCell.xib; path = PlayerControls/resources/SettingCell.xib; sourceTree = ""; }; - 095C36F7DA5A2234C11F074566F74C42 /* PlaybackDuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackDuration.swift; path = PlayerCore/components/PlaybackDuration.swift; sourceTree = ""; }; - 095F18C2C4AE4DC0981B53233B8DE5E6 /* VideoRenderer-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "VideoRenderer-iOS-prefix.pch"; sourceTree = ""; }; - 0A2A26ABD658D25D4E442B40F361AA0B /* AdErrorDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdErrorDetector.swift; path = "sources/metrics/detectors/ad error/AdErrorDetector.swift"; sourceTree = ""; }; - 0A391B11F749C6DE8AA14A316C6274FA /* PictureInPictureUpdateAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureUpdateAction.swift; path = PlayerCore/actions/PictureInPictureUpdateAction.swift; sourceTree = ""; }; - 0AC5C0DD018F44AA233111BC67356CF7 /* MediaOptions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MediaOptions.swift; path = PlayerCore/components/MediaOptions.swift; sourceTree = ""; }; - 0BCC2D8831B9D16ED8EC0BF7B9ECD68C /* AdClickDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickDetector.swift; path = "sources/metrics/detectors/ad click/AdClickDetector.swift"; sourceTree = ""; }; - 0C7E8BBB6BD3ED268CACBA696E83C390 /* VASTParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VASTParser.swift; path = sources/advertisements/VASTParser.swift; sourceTree = ""; }; - 0D190824D7558355BE2803D5F72C69D8 /* VideoRenderer-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "VideoRenderer-iOS.modulemap"; path = "../../Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap"; sourceTree = ""; }; - 0E0270EDFB632597DF7A2C3BE5700B8C /* PlayerCore-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "PlayerCore-tvOS-prefix.pch"; path = "../PlayerCore-tvOS/PlayerCore-tvOS-prefix.pch"; sourceTree = ""; }; - 0EA4FAF0B10D00CFABACD0CBB6149805 /* StartVRMGroupProcessingController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartVRMGroupProcessingController.swift; path = "sources/advertisements/VRM New Core/Controllers/StartVRMGroupProcessingController.swift"; sourceTree = ""; }; - 0EBD64094E86036C2A92C9063BFC3426 /* OpenMeasurementContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementContext.swift; path = "sources/metrics/open measurement/OpenMeasurementContext.swift"; sourceTree = ""; }; - 0F7B7A6D0FDE44BD494B6674664FEC9D /* Prev.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Prev.swift; path = "PlayerCore/action creators/Prev.swift"; sourceTree = ""; }; - 0FAD7A57BEB02007887CC8FADDBB58B1 /* ActionProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ActionProtocol.swift; path = PlayerCore/actions/ActionProtocol.swift; sourceTree = ""; }; - 11907EA3ECC1DB9250FBE5CE3CE0C536 /* VideoActionsDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoActionsDetector.swift; path = "sources/metrics/detectors/video actions detector/VideoActionsDetector.swift"; sourceTree = ""; }; - 11B4B76EABDBD17D9DDDD9C4992AC267 /* VerizonVideoPartnerSDK-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "VerizonVideoPartnerSDK-tvOS.xcconfig"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.xcconfig"; sourceTree = ""; }; - 1254F86FCA694BEC7D513BFED2755C16 /* EndPlayback.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EndPlayback.swift; path = "PlayerCore/action creators/EndPlayback.swift"; sourceTree = ""; }; - 12BC3A3102DCD9E277BE83EED4BA3EE6 /* PlayerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerViewController.swift; path = "sources/custom controls/PlayerViewController.swift"; sourceTree = ""; }; - 12EDBC85553EC56459B4AFFD2BC00DEB /* AdClickthrough.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickthrough.swift; path = PlayerCore/components/AdClickthrough.swift; sourceTree = ""; }; - 133FC706F5DFE798FB3CF33AC781F67D /* SeekToTimeAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekToTimeAction.swift; path = PlayerCore/actions/SeekToTimeAction.swift; sourceTree = ""; }; - 13A765C219566708BFA87587CA8BDB19 /* libVideoRenderer-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVideoRenderer-iOS.a"; path = "libVideoRenderer-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 1476B71504A734BE72060B7D13F68196 /* DefaultControlsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultControlsViewController.swift; path = PlayerControls/sources/DefaultControlsViewController.swift; sourceTree = ""; }; - 149FDBE670D31BBD5C59691364C96F07 /* Stub.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stub.swift; path = sources/utils/Stub.swift; sourceTree = ""; }; - 14D27AEA7B2E2A901251E2EDBC73796C /* AdVRMManager_Hashable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVRMManager_Hashable.swift; path = PlayerCore/components/AdVRMManager_Hashable.swift; sourceTree = ""; }; - 157C59D9EEAF74FB49DF533A4A0EB96A /* PlayerViewController_Clickthrough.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerViewController_Clickthrough.swift; path = "sources/custom controls/PlayerViewController_Clickthrough.swift"; sourceTree = ""; }; - 1651E5B23C9B5C51119273716C0BC1E6 /* MuteDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MuteDetector.swift; path = sources/metrics/detectors/mute/MuteDetector.swift; sourceTree = ""; }; - 16B2B49658B8FC9079710A58247AA691 /* VerizonVideoPartnerSDK-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "VerizonVideoPartnerSDK-iOS.modulemap"; path = "../../Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap"; sourceTree = ""; }; - 170C4A929624ABA3F1B5147254FBBBBB /* FetchVRMItemController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FetchVRMItemController.swift; path = "sources/advertisements/VRM New Core/Controllers/FetchVRMItemController.swift"; sourceTree = ""; }; - 17E5691970CAF01CE5E29A902E14A0C2 /* ProcessAdItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ProcessAdItem.swift; path = sources/advertisements/ProcessAdItem.swift; sourceTree = ""; }; - 17EB68FFB215E0C081A98082878FA2AE /* VideoProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoProvider.swift; path = "sources/video provider/provider/VideoProvider.swift"; sourceTree = ""; }; - 1824C76AAFA51CFCF5207329529D3E4F /* AdRequestAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdRequestAction.swift; path = PlayerCore/actions/AdRequestAction.swift; sourceTree = ""; }; - 182EC1D691EA0D66F27E2AB5471A4FF0 /* VerizonVideoPartnerSDK-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "VerizonVideoPartnerSDK-iOS.xcconfig"; sourceTree = ""; }; - 18479E651BED943B21D4094B695CB5C3 /* VerizonVideoPartnerSDK-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "VerizonVideoPartnerSDK-tvOS-dummy.m"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-dummy.m"; sourceTree = ""; }; - 18C0BB836697B2766FB7C3FAA1EC744E /* ProcessGroupsAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ProcessGroupsAction.swift; path = PlayerCore/actions/ProcessGroupsAction.swift; sourceTree = ""; }; - 19F6264CC0766D089541CDF6CEF3D79E /* IntentDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IntentDetector.swift; path = sources/metrics/detectors/intent/IntentDetector.swift; sourceTree = ""; }; - 1B179427181B3AE68DCC0385BC574F87 /* AdMetrics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdMetrics.swift; path = sources/advertisements/AdMetrics.swift; sourceTree = ""; }; - 1B7BE45CA8617D5B741107076225FED6 /* Thumbnails.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Thumbnails.swift; path = "PlayerCore/player model/thumbnail/Thumbnails.swift"; sourceTree = ""; }; - 1B7D5C77E04419451C8DEDF2C71DC5AE /* PlayerCore-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "PlayerCore-iOS.modulemap"; path = "../../Headers/Public/PlayerCore/PlayerCore-iOS.modulemap"; sourceTree = ""; }; - 1BCA902E3AC269DF8DEC62A869009AA3 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; - 1C29B6EF6CA72B2AE2F1676F9AA33B30 /* VRMParsingResult.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMParsingResult.swift; path = "PlayerCore/components/New VRM Core/VRMParsingResult.swift"; sourceTree = ""; }; - 1D87489F4BBC6FE65A87411F99402FA8 /* Pipeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Pipeline.swift; path = sources/utils/Pipeline.swift; sourceTree = ""; }; - 1EF871486FBC7DACBF9496DA298FD380 /* ContextStartedDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContextStartedDetector.swift; path = "sources/metrics/detectors/context started/ContextStartedDetector.swift"; sourceTree = ""; }; - 1F5098F9297DD3B239FFBF84AF87F044 /* OpenMeasurementServiceScript.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementServiceScript.swift; path = PlayerCore/OpenMeasurementServiceScript.swift; sourceTree = ""; }; - 1F5BA1EC743F9EC66B7D847944F1684F /* Pods-Tutorial-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Tutorial-frameworks.sh"; sourceTree = ""; }; - 229FFA58160C087860E593482727B8B0 /* Pods-Tutorial_tvOS-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Tutorial_tvOS-frameworks.sh"; sourceTree = ""; }; - 22B3033FDC26C5EA83524CDC956AB10A /* 3secPlaybackDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = 3secPlaybackDetector.swift; path = "sources/metrics/detectors/3sec playback/3secPlaybackDetector.swift"; sourceTree = ""; }; - 266584E0D12E576419C89F8C665F8F8C /* FullScreenToggleAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FullScreenToggleAction.swift; path = PlayerCore/actions/FullScreenToggleAction.swift; sourceTree = ""; }; - 26D6DCCC3E2FB48015E6BDC2891B7DF4 /* UserActionInitiated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UserActionInitiated.swift; path = sources/player/UserActionInitiated.swift; sourceTree = ""; }; - 289E0FA7FFC93254F0286F3C8ED2C50F /* OMSDK_Oath2.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = OMSDK_Oath2.framework; sourceTree = ""; }; - 28AA53DD58EBA4F9D20A8F3F6B4819D6 /* VRMCoreVASTModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreVASTModel.swift; path = "PlayerCore/player model/VRM/VRMCoreVASTModel.swift"; sourceTree = ""; }; - 29EE0E53726C52234015F82E6B738A6A /* TimerAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimerAction.swift; path = PlayerCore/actions/TimerAction.swift; sourceTree = ""; }; - 2B008AB6E6681D244A054584E886ED1F /* Action.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Action.swift; path = VideoRenderer/VideoRenderer/Action.swift; sourceTree = ""; }; - 2B7A13252E76434CAE240DF5FDF6A803 /* Action.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Action.swift; path = sources/utils/Action.swift; sourceTree = ""; }; - 2D928F9ED58045C85847C06519DAA55F /* Player_VideoEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Player_VideoEvents.swift; path = "sources/video detectors/Player_VideoEvents.swift"; sourceTree = ""; }; - 2F47F287C07EF34BD266267D64BCEC15 /* TrackingPixelsConnector_Ad.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsConnector_Ad.swift; path = "sources/metrics/tracking pixels/TrackingPixelsConnector_Ad.swift"; sourceTree = ""; }; - 305B028A0A4DD7F18F8321CFEE0FDBD3 /* ContentControlsViewController_Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentControlsViewController_Binding.swift; path = "sources/custom controls/ContentControlsViewController_Binding.swift"; sourceTree = ""; }; - 3218AD1998D67188CEED8A2C62E26403 /* SettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SettingsViewController.swift; path = PlayerControls/sources/SettingsViewController.swift; sourceTree = ""; }; - 325E13FDD260C6ABBA60B2A93B136F58 /* Store.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Store.swift; path = sources/player/Store.swift; sourceTree = ""; }; - 3302B6C31D787393624767A0EEA7D44D /* PlayerViewController_Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerViewController_Binding.swift; path = "sources/custom controls/PlayerViewController_Binding.swift"; sourceTree = ""; }; - 33134BB259E7102EA1B40C5EEBE2777D /* AdInfoHolder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdInfoHolder.swift; path = PlayerCore/components/AdInfoHolder.swift; sourceTree = ""; }; - 333B54DA2691BCC6B172C9B06241D4DD /* libPlayerControls.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libPlayerControls.a; path = libPlayerControls.a; sourceTree = BUILT_PRODUCTS_DIR; }; - 33C386ABBAA954DD9C8CFE5CCD90135A /* AdVASTModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVASTModel.swift; path = PlayerCore/components/AdVASTModel.swift; sourceTree = ""; }; - 33D8666A2774E4D3A1C8B150C0C39162 /* UpdatePlaybackBuffering.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdatePlaybackBuffering.swift; path = PlayerCore/UpdatePlaybackBuffering.swift; sourceTree = ""; }; - 34D2D12D0F6E4DC32ACB7C8A4C5909C0 /* TrackingPixelsReporter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsReporter.swift; path = "sources/metrics/tracking pixels/TrackingPixelsReporter.swift"; sourceTree = ""; }; - 3512E99680627AB754AF4DF7DFC6BF4C /* UpdateExternalPlaybackStatusAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlaybackStatusAction.swift; path = PlayerCore/actions/UpdateExternalPlaybackStatusAction.swift; sourceTree = ""; }; - 35685494010513F5E016E563F55A3A1A /* VideoProviderResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoProviderResponse.swift; path = "sources/video provider/VideoProviderResponse.swift"; sourceTree = ""; }; - 3569F7E8315224CF7FD04F6F980025E5 /* VRMFetchItemQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMFetchItemQueue.swift; path = "PlayerCore/components/New VRM Core/VRMFetchItemQueue.swift"; sourceTree = ""; }; - 35D71948F19056E7FE4D5EFDD84D95B0 /* SelectVideoAtIndexAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SelectVideoAtIndexAction.swift; path = PlayerCore/actions/SelectVideoAtIndexAction.swift; sourceTree = ""; }; - 3617B5CDF8A19A1B95090189836DD71D /* AdVRMEngine.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVRMEngine.swift; path = sources/advertisements/AdVRMEngine.swift; sourceTree = ""; }; - 36A5247CE66D428B4383A2ACDC5A4C1F /* ShowContentAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShowContentAction.swift; path = PlayerCore/actions/ShowContentAction.swift; sourceTree = ""; }; - 379EE81D1FE68F7A64AFCA5A1F97168B /* BufferingDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BufferingDetector.swift; path = sources/metrics/detectors/buffering/BufferingDetector.swift; sourceTree = ""; }; - 37C3213BEB4536CCFD8E8A87E74ED35D /* PictureInPictureToggle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureToggle.swift; path = "PlayerCore/action creators/PictureInPictureToggle.swift"; sourceTree = ""; }; - 39F0708782DC0A936D163B220E4B20AD /* OMServiceScriptActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OMServiceScriptActionCreator.swift; path = PlayerCore/OMServiceScriptActionCreator.swift; sourceTree = ""; }; - 3A383559DAE3DB38D22E11A5AC4F023B /* Progress.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Progress.swift; path = "PlayerCore/phantom types/Progress.swift"; sourceTree = ""; }; - 3A86F0C2ED4C170E8A84D0C7B65A649D /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 3B989F2B2C92E5E5D1FABA5217152569 /* VRMCoreAdProcess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdProcess.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreAdProcess.swift"; sourceTree = ""; }; - 3C20B6FA2D026F5770896C70DDFFFADF /* UpdateCameraAngles.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCameraAngles.swift; path = "PlayerCore/action creators/UpdateCameraAngles.swift"; sourceTree = ""; }; - 3C3C4F8D8A243BAD54156DB670FD1908 /* libPlayerCore-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPlayerCore-iOS.a"; path = "libPlayerCore-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 3EA4C6ECC6D31F0FF4BA1BF40329BC9C /* AdVideoControls.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVideoControls.swift; path = PlayerControls/sources/AdVideoControls.swift; sourceTree = ""; }; - 3F98CCEF67CF63C75E7D83A6A8F0D303 /* WebviewViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WebviewViewController.swift; path = sources/vpaid/WebviewViewController.swift; sourceTree = ""; }; - 403F71811464ACD9A99579F63F32B4A1 /* VerizonVideoPartnerSDK-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "VerizonVideoPartnerSDK-tvOS.modulemap"; path = "../../Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap"; sourceTree = ""; }; - 40A5518617C429C4163D6E87360165C0 /* Pods-Tutorial_tvOS-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Tutorial_tvOS-resources.sh"; sourceTree = ""; }; - 40F2BE31DF0818B8128A0AE60E6309E0 /* VRMCoreItemSchedulingActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreItemSchedulingActionCreator.swift; path = "PlayerCore/action creators/VRMCoreItemSchedulingActionCreator.swift"; sourceTree = ""; }; - 414F952D8FE5E66772FF90040BE02D0C /* NopAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopAction.swift; path = PlayerCore/actions/NopAction.swift; sourceTree = ""; }; - 4166C0D3C7B05C2E6C684E192C72FEF9 /* PlayerControls-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PlayerControls-dummy.m"; sourceTree = ""; }; - 419FB98F68F5B5D8B4B60C3329909E7D /* MuteAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MuteAction.swift; path = PlayerCore/actions/MuteAction.swift; sourceTree = ""; }; - 42D4A577AEB49F55EA13D04331B0F5C9 /* MediaCharacteristicRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MediaCharacteristicRenderer.swift; path = VideoRenderer/VideoRenderer/MediaCharacteristicRenderer.swift; sourceTree = ""; }; - 4321E400DDE66BAAE0A740DD99522742 /* HeartbeatDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeartbeatDetector.swift; path = sources/metrics/detectors/heartbeat/HeartbeatDetector.swift; sourceTree = ""; }; - 4447F37C1E639EE2BD134D0A4687AE98 /* UserActionsDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UserActionsDetector.swift; path = "sources/metrics/detectors/user actions/UserActionsDetector.swift"; sourceTree = ""; }; - 45065CB419D5B8B16E450F9D6ACA8FB5 /* AdStartTimeoutActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdStartTimeoutActionCreator.swift; path = "PlayerCore/action creators/AdStartTimeoutActionCreator.swift"; sourceTree = ""; }; - 45B8CC8C4DFFA0CA503B15C61B25D46F /* Defaultable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Defaultable.swift; path = PlayerControls/sources/Defaultable.swift; sourceTree = ""; }; - 45C9079EF3F8CE6F85083DFD3750A2E9 /* libVerizonVideoPartnerSDK-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVerizonVideoPartnerSDK-tvOS.a"; path = "libVerizonVideoPartnerSDK-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 460EE4014DF508E80E9909C09A765B56 /* Context.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Context.swift; path = sources/config/Context.swift; sourceTree = ""; }; - 460FBEAAB6E657AE8B8ADDDB4D8FEC79 /* VRMResponseModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMResponseModel.swift; path = "PlayerCore/player model/VRM/VRMResponseModel.swift"; sourceTree = ""; }; - 461F3DE678AEF0C1034F0623ABB56D4C /* PlaylistStatisticDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaylistStatisticDetector.swift; path = "sources/metrics/detectors/playlist stats/PlaylistStatisticDetector.swift"; sourceTree = ""; }; - 462489537F00B6A09CBDDCCA4C97CBB4 /* UpdateDurationAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateDurationAction.swift; path = PlayerCore/actions/UpdateDurationAction.swift; sourceTree = ""; }; - 46B981960585FF391251AEC8976ACFCD /* InteractiveSeeking.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InteractiveSeeking.swift; path = PlayerCore/components/InteractiveSeeking.swift; sourceTree = ""; }; - 4B1DC63BAB8B93A062D22D6A73E11863 /* PlayerControls-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "PlayerControls-umbrella.h"; path = "../../Headers/Public/PlayerControls/PlayerControls-umbrella.h"; sourceTree = ""; }; - 4B5FDA4FF20C0084D03B3909CE8895E5 /* PlaybackReady.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackReady.swift; path = PlayerCore/actions/PlaybackReady.swift; sourceTree = ""; }; - 4C4E82A593F16973A626D9444902FFB4 /* TimeoutAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimeoutAction.swift; path = PlayerCore/actions/TimeoutAction.swift; sourceTree = ""; }; - 4C55A20DE7A6F80012CE7503BF0ED30A /* UpdatePlaybackStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdatePlaybackStatus.swift; path = "PlayerCore/action creators/UpdatePlaybackStatus.swift"; sourceTree = ""; }; - 4EF704FA5014FFE1065AFFE439D41A4B /* PlaybackSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackSession.swift; path = PlayerCore/components/PlaybackSession.swift; sourceTree = ""; }; - 50CD5E1FF0715F849B022F2418EB4F6D /* Ad.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Ad.swift; path = PlayerCore/components/Ad.swift; sourceTree = ""; }; - 511ACE7A91D3BB74B20359DDEB5FE58A /* Pods-Tutorial_tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial_tvOS.release.xcconfig"; sourceTree = ""; }; - 512BE73014C347312723D1227DE336B9 /* AverageBitrate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AverageBitrate.swift; path = PlayerCore/components/AverageBitrate.swift; sourceTree = ""; }; - 51A0FDF6422A78BE1D7C8EA259117B83 /* VRMProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMProvider.swift; path = sources/advertisements/VRMProvider.swift; sourceTree = ""; }; - 527E35CB6F5B14E41D788869CFCB38F9 /* VideoRenderer-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "VideoRenderer-tvOS-dummy.m"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS-dummy.m"; sourceTree = ""; }; - 52B058E513D4B95189C2216295A4F6BB /* ErrorDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ErrorDetector.swift; path = sources/metrics/detectors/error/ErrorDetector.swift; sourceTree = ""; }; - 540845E2714CC2F59492770758E3CAE7 /* PlayerControls-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PlayerControls-prefix.pch"; sourceTree = ""; }; - 542F4E0ADDEC67B8093682C950B4F66E /* VerizonVideoPartnerSDK-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "VerizonVideoPartnerSDK-iOS-prefix.pch"; sourceTree = ""; }; - 54A2866430B6EF9B4B6981E56B8FCE0B /* Memoise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Memoise.swift; path = sources/utils/Memoise.swift; sourceTree = ""; }; - 5508024C435694DF096810975436E9FB /* SystemPlayerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerViewController.swift; path = "sources/default controls/SystemPlayerViewController.swift"; sourceTree = ""; }; - 55C7CE7F718DD80837566C8586ADF744 /* VVPSDKPlugins.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVPSDKPlugins.swift; path = sources/VVPSDKPlugins.swift; sourceTree = ""; }; - 5659F0C868F2180006EA558B4CAF3C78 /* PlayAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayAction.swift; path = PlayerCore/actions/PlayAction.swift; sourceTree = ""; }; - 56DFC04F71E00BA0F5E9657CDE23E312 /* VideoRenderer-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "VideoRenderer-tvOS.modulemap"; path = "../../Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap"; sourceTree = ""; }; - 576A9B8EC5D87EC128DAB1B1C526FF76 /* VideoRenderer-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VideoRenderer-tvOS-prefix.pch"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS-prefix.pch"; sourceTree = ""; }; - 57C586F3179E8D955CCFCBAA8E680BA7 /* SphereVideoStreamViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SphereVideoStreamViewController.swift; path = VideoRenderer/VideoRenderer/SphereVideoStreamViewController.swift; sourceTree = ""; }; - 580C36A4C35AD6E45CD8B40C0E0361CF /* StartAdProcessingController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartAdProcessingController.swift; path = "sources/advertisements/VRM New Core/Controllers/StartAdProcessingController.swift"; sourceTree = ""; }; - 5838EEB535181551DAC39253F01ECF8E /* VRMResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMResponse.swift; path = "PlayerCore/components/New VRM Core/VRMResponse.swift"; sourceTree = ""; }; - 5851A4EB47BE6E9A1D0038CFA0E2E78F /* AirPlayView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AirPlayView.swift; path = PlayerControls/sources/AirPlayView.swift; sourceTree = ""; }; - 5906EEFA1985A3A746665567688BE259 /* PlaybackStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackStatus.swift; path = PlayerCore/components/PlaybackStatus.swift; sourceTree = ""; }; - 591465E5AC2A1E0E8A1F7A39A4ACAEA3 /* BufferingStart.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BufferingStart.swift; path = "sources/metrics/detectors/buffering start/BufferingStart.swift"; sourceTree = ""; }; - 59F775792BB0F7F138F51ECCDE6CA80F /* OpenMeasurementActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementActionCreator.swift; path = PlayerCore/OpenMeasurementActionCreator.swift; sourceTree = ""; }; - 5A30F7CC00D7A8023A5E11DFDB2693CA /* EnumPrism_PlayerControls.generated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EnumPrism_PlayerControls.generated.swift; path = PlayerControls/sources/EnumPrism_PlayerControls.generated.swift; sourceTree = ""; }; - 5B2AC2D19592F1B736A8D102D8339FFB /* AdPixels.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdPixels.swift; path = PlayerCore/components/AdPixels.swift; sourceTree = ""; }; - 5C010A5C8FED00EE4B2397BB1C7369CE /* AdVideoControls.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = AdVideoControls.xib; path = PlayerControls/resources/AdVideoControls.xib; sourceTree = ""; }; - 5C3AE3798C23665787D3E776DA4253ED /* UpdateRateAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateRateAction.swift; path = PlayerCore/actions/UpdateRateAction.swift; sourceTree = ""; }; - 5C59DDE1D58FDAED51F4502FA0AF1C80 /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = sources/utils/Disposable.swift; sourceTree = ""; }; - 5C8C9ED50FCB47458EBAF2F21528DA7F /* OnMainThread.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OnMainThread.swift; path = sources/utils/OnMainThread.swift; sourceTree = ""; }; - 5D6EF2C48BE3E40387FC560564125874 /* Pods-Tutorial-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Tutorial-acknowledgements.plist"; sourceTree = ""; }; - 5DCD449B7D6FB8F4D06C8735C5DC05C7 /* VideoRenderer-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VideoRenderer-iOS-umbrella.h"; path = "../../Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h"; sourceTree = ""; }; - 5E2A049DBA886FBA028CA9731F85A05C /* PlayerCore-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "PlayerCore-iOS-umbrella.h"; path = "../../Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h"; sourceTree = ""; }; - 5E2C03D6509FB40036F616C507D86022 /* Dictionary+ParseJSON.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Dictionary+ParseJSON.swift"; path = "sources/video provider/dictionary parser/Dictionary+ParseJSON.swift"; sourceTree = ""; }; - 5E4864552EC336B4FE0A5EF2E1CB7811 /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = PlayerControls/sources/Timer.swift; sourceTree = ""; }; - 5F576BF45DA2D2CEAEE5EC8E33055357 /* AirPlay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AirPlay.swift; path = PlayerCore/components/AirPlay.swift; sourceTree = ""; }; - 60B9F3F5BB432696D504C5B6C51A1554 /* AdKill.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdKill.swift; path = PlayerCore/components/AdKill.swift; sourceTree = ""; }; - 60FF74A7BD035B5282DE3119DE4642B3 /* Pods-Tutorial-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Tutorial-resources.sh"; sourceTree = ""; }; - 62026BE0CC4B962614C3C34DE645DCFB /* VPAIDErrors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDErrors.swift; path = PlayerCore/components/VPAIDErrors.swift; sourceTree = ""; }; - 62D2F928A95A153287553E0F2C52B5EC /* AdURLProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdURLProvider.swift; path = sources/advertisements/AdURLProvider.swift; sourceTree = ""; }; - 62DFF5D1B39759E88B07710D0DC5E352 /* CurrentTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentTime.swift; path = PlayerCore/components/CurrentTime.swift; sourceTree = ""; }; - 63F9DC649FC969E25E64A75BF8EA18BA /* VRMCurrentGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCurrentGroup.swift; path = "PlayerCore/components/New VRM Core/VRMCurrentGroup.swift"; sourceTree = ""; }; - 6410E471D1AA561B297ABE0AC6AEA0D6 /* ExecuteOnce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExecuteOnce.swift; path = sources/metrics/detectors/display/ExecuteOnce.swift; sourceTree = ""; }; - 6413681FA90F219063CA38DDC4DE44C2 /* VRMCoreNamespace.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreNamespace.swift; path = "PlayerCore/player model/VRM/VRMCoreNamespace.swift"; sourceTree = ""; }; - 64CAE4DFE1B068052CAD28CD3479FFE9 /* Pods-Tutorial.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial.debug.xcconfig"; sourceTree = ""; }; - 64FA5380686BEFF579D227DE32B9EC70 /* Telemetry.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Telemetry.swift; path = sources/telemetry/Telemetry.swift; sourceTree = ""; }; - 653008DFF69EDD47CFEDD60277BAB718 /* Command.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Command.swift; path = PlayerControls/sources/Command.swift; sourceTree = ""; }; - 660B5B38F90681D95AC2007826F46171 /* NonEmptyString.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NonEmptyString.swift; path = sources/utils/NonEmptyString.swift; sourceTree = ""; }; - 66821E99C6E07E9A39389B0C932EE183 /* VideoRenderer-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VideoRenderer-tvOS-umbrella.h"; path = "../../Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h"; sourceTree = ""; }; - 66E0E902192C72B907A32BABADE0D397 /* UpdateViewportDimensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateViewportDimensions.swift; path = "PlayerCore/action creators/UpdateViewportDimensions.swift"; sourceTree = ""; }; - 672B4C3A2B3D3F661A79A5745D06AD47 /* PlayerCore-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "PlayerCore-tvOS.modulemap"; path = "../../Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap"; sourceTree = ""; }; - 68D8732921FAEBC5CD44F22A999B5AF4 /* AirPlayActiveView.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = AirPlayActiveView.xib; path = PlayerControls/resources/AirPlayActiveView.xib; sourceTree = ""; }; - 6A74691E00AE97156DF472620CEAA522 /* Pods-Tutorial_tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Tutorial_tvOS-dummy.m"; sourceTree = ""; }; - 6AA52E2681A608952D2FE5184EEFEAC5 /* VRMCoreItemScheduling.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreItemScheduling.swift; path = PlayerCore/actions/VRMCoreItemScheduling.swift; sourceTree = ""; }; - 6B0ACF80C97108627F3DBE9E2EE82A07 /* VerizonVideoPartnerSDK-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VerizonVideoPartnerSDK-tvOS-prefix.pch"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-prefix.pch"; sourceTree = ""; }; - 6B6BBDCF89125EFE1CEAF85D413FA8A2 /* AdMaxShowTimeDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdMaxShowTimeDetector.swift; path = "sources/metrics/detectors/ad max show time/AdMaxShowTimeDetector.swift"; sourceTree = ""; }; - 6BB4ECE0E13789F9094F30C67F378EF0 /* Pods-Tutorial_tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Tutorial_tvOS.modulemap"; sourceTree = ""; }; - 6C3E401E7BE44C38AC689692AE758CD2 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; - 6CA40135221D1AD8B3102017C4C97F6C /* LoadingImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoadingImageView.swift; path = "PlayerControls/sources/loading image/LoadingImageView.swift"; sourceTree = ""; }; - 6CBA4BCF2815045C1D4CF7CA0DBDDE5A /* Next.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Next.swift; path = "PlayerCore/action creators/Next.swift"; sourceTree = ""; }; - 6CDE38D196D7DB3FC1159A5FA1CF84D2 /* Pods-Tutorial_tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Tutorial_tvOS-acknowledgements.markdown"; sourceTree = ""; }; - 6E4F60CFFBAD58031273A08B1FB9408F /* Mute.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Mute.swift; path = PlayerCore/components/Mute.swift; sourceTree = ""; }; - 6EFA39CAAC71F8686A1B5B4B1932240F /* AdManagerPresenter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdManagerPresenter.swift; path = sources/advertisements/AdManagerPresenter.swift; sourceTree = ""; }; - 6F1D30730DED4F86AC121BF0EE8F0E2C /* AdKillAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdKillAction.swift; path = PlayerCore/actions/AdKillAction.swift; sourceTree = ""; }; - 6FFFE0E92CD798E90F0EDA7EB5C36763 /* SideBarView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SideBarView.swift; path = PlayerControls/sources/SideBarView.swift; sourceTree = ""; }; - 714D5633E023D5949BA5628775D78B0A /* VPAIDActionCreators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDActionCreators.swift; path = "PlayerCore/action creators/VPAIDActionCreators.swift"; sourceTree = ""; }; - 7181A94DC797B9E262A7B2ADA8EC979E /* PlayerTracer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerTracer.swift; path = sources/player/tracer/PlayerTracer.swift; sourceTree = ""; }; - 71EF0C56CC8EBFBA6FAD1C79420B2C90 /* CompletePlaybackSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlaybackSession.swift; path = "PlayerCore/action creators/CompletePlaybackSession.swift"; sourceTree = ""; }; - 7262EE76D79C6E07F4892C2ABEE2E868 /* AdViewTimeDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdViewTimeDetector.swift; path = "sources/metrics/detectors/ad view time/AdViewTimeDetector.swift"; sourceTree = ""; }; - 7270FE10406CFB18B8AD70E6B3477B51 /* PlayerCore-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PlayerCore-iOS-dummy.m"; sourceTree = ""; }; - 73077F9E15837D0BE8AC62D891A12150 /* PlayAd.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayAd.swift; path = "PlayerCore/action creators/PlayAd.swift"; sourceTree = ""; }; - 73B59DAC509F4D05D438946DA8AB08C1 /* UpdateExternalPlaybackAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlaybackAction.swift; path = PlayerCore/actions/UpdateExternalPlaybackAction.swift; sourceTree = ""; }; - 74F7848AF57F43793F63A03F543441C9 /* PlayerProperties_Init.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerProperties_Init.swift; path = sources/player/PlayerProperties_Init.swift; sourceTree = ""; }; - 75F8A6BC04E4D383B72DBFC7BF008044 /* OpenSafariUtil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenSafariUtil.swift; path = "sources/custom controls/OpenSafariUtil.swift"; sourceTree = ""; }; - 767D9ED69DF4003267430D9F61522F96 /* ReporterTracer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReporterTracer.swift; path = "sources/metrics/tracking pixels/ReporterTracer.swift"; sourceTree = ""; }; - 7753BF54C19FA91D8D8C1291B6D3D94C /* JavaScriptObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JavaScriptObserver.swift; path = "sources/dynamic analytics/JavaScriptObserver.swift"; sourceTree = ""; }; - 79C4A6EA6FE7CBB68C15ABD5DA32F072 /* VASTModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VASTModel.swift; path = sources/advertisements/VASTModel.swift; sourceTree = ""; }; - 79EA22D311E6C24766AEB0E0C0F7E3B7 /* VideoTimeDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoTimeDetector.swift; path = "sources/metrics/detectors/video time/VideoTimeDetector.swift"; sourceTree = ""; }; - 7B48433E6E9ECCE607F953FA02773B10 /* Nop.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Nop.swift; path = "PlayerCore/action creators/Nop.swift"; sourceTree = ""; }; - 7B599A9D718C8A78602A75080BFA991D /* VPAIDEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDEvents.swift; path = "sources/metrics/detectors/vpaid event/VPAIDEvents.swift"; sourceTree = ""; }; - 7C0E2B7DF9056411131588C3D31055AB /* SphereView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SphereView.swift; path = VideoRenderer/VideoRenderer/SphereView.swift; sourceTree = ""; }; - 7D4446AE472B870BA1DB1C81F11A355C /* PlayerCore-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "PlayerCore-tvOS-umbrella.h"; path = "../../Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h"; sourceTree = ""; }; - 7D7FAF430C4EA0BE6DC14450B5EA5E37 /* PlayerCore-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "PlayerCore-tvOS.xcconfig"; path = "../PlayerCore-tvOS/PlayerCore-tvOS.xcconfig"; sourceTree = ""; }; - 7E3856B1600EE762699254B86EB0F864 /* TrackingPixelsConnector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsConnector.swift; path = "sources/metrics/tracking pixels/TrackingPixelsConnector.swift"; sourceTree = ""; }; - 7E3B4E1870C70D32A712D11D5FD64E49 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; - 7E4F338D5383965D04E52E8DDC0FA692 /* OpenMeasurementAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementAction.swift; path = PlayerCore/OpenMeasurementAction.swift; sourceTree = ""; }; - 7E809348BADE894A19CE912BEA3D0E70 /* VRMRequestController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRequestController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMRequestController.swift"; sourceTree = ""; }; - 7F5ACB7DBB7483D437A0956F2D5BCAFE /* VRMRequest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRequest.swift; path = sources/advertisements/VRM/VRMRequest.swift; sourceTree = ""; }; - 7F77164A2A36175243E1F3077B2A2256 /* VRMCoreAdResponseActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdResponseActionCreator.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreAdResponseActionCreator.swift"; sourceTree = ""; }; - 7F9F492419060418D4B6B463F6819EC0 /* VVP.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVP.swift; path = sources/VVP.swift; sourceTree = ""; }; - 8153174B6D0D53E9A16F820816F5080F /* SystemPlayerViewControlller_Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerViewControlller_Binding.swift; path = "sources/default controls/SystemPlayerViewControlller_Binding.swift"; sourceTree = ""; }; - 81DD3E91194AA98FE2439FADE4AC0E52 /* PictureInPictureStatusUpdate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureStatusUpdate.swift; path = "PlayerCore/action creators/PictureInPictureStatusUpdate.swift"; sourceTree = ""; }; - 826EC2FC2BC52DFDD904498123F0A178 /* VideoRenderer-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "VideoRenderer-iOS.xcconfig"; sourceTree = ""; }; - 82EF3817A266B768D751F271084995E6 /* OpenMeasurementServiceScript.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementServiceScript.swift; path = "sources/metrics/open measurement/OpenMeasurementServiceScript.swift"; sourceTree = ""; }; - 830BD7927F5A5B95F0FC270FA5349567 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = sources/utils/Result.swift; sourceTree = ""; }; - 83310F3D198D2939833F53952B6A4156 /* VRMCoreStartGroupActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreStartGroupActionCreator.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreStartGroupActionCreator.swift"; sourceTree = ""; }; - 833DB4C3BF586BEDB0DEFB403B05442B /* VVPSDK_Version.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVPSDK_Version.swift; path = sources/VVPSDK_Version.swift; sourceTree = ""; }; - 837575562C788FA755344A8D5B212BFA /* VerizonVideoPartnerSDK-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VerizonVideoPartnerSDK-iOS-umbrella.h"; path = "../../Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h"; sourceTree = ""; }; - 8557DD8B41AF0A9A27E0BDA03453D94B /* RendererRepository.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RendererRepository.swift; path = VideoRenderer/VideoRenderer/RendererRepository.swift; sourceTree = ""; }; - 8590C1D7E3789687685DBD5D7CF90FB6 /* PlayerProperties.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerProperties.swift; path = sources/player/PlayerProperties.swift; sourceTree = ""; }; - 85AC1AA457E993D50F4BE64B2939C767 /* OpenMeasurement_Tracking.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurement_Tracking.swift; path = PlayerCore/OpenMeasurement_Tracking.swift; sourceTree = ""; }; - 85B6A00D3FF5A49ECF73B009847F2D36 /* VRMItemController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMItemController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMItemController.swift"; sourceTree = ""; }; - 895EF76FD2DEE6AA667425569B02ADCB /* SystemPlayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerModel.swift; path = VideoRenderer/VideoRenderer/SystemPlayerModel.swift; sourceTree = ""; }; - 8AF4B34936F1EB07EFDE7EEBE17B894F /* VPAIDProps.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDProps.swift; path = sources/vpaid/VPAIDProps.swift; sourceTree = ""; }; - 8B9B88F2454A7AE08150E438D416EF69 /* PlayerControls.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = PlayerControls.modulemap; path = ../../Headers/Public/PlayerControls/PlayerControls.modulemap; sourceTree = ""; }; - 8CAEB6D5DBA7D8ABD8CBA8D414D5BEDF /* Rate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rate.swift; path = PlayerCore/components/Rate.swift; sourceTree = ""; }; - 8D23CBF84EED3D47272FBD411AD256DF /* MutePlayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MutePlayer.swift; path = "PlayerCore/action creators/MutePlayer.swift"; sourceTree = ""; }; - 8D297474849F896A9CCDBFF4D43A7480 /* Player.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Player.swift; path = sources/player/Player.swift; sourceTree = ""; }; - 8D66C71FA910DA59C2DD6FE366493616 /* ParseVRMItemController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParseVRMItemController.swift; path = "sources/advertisements/VRM New Core/Controllers/ParseVRMItemController.swift"; sourceTree = ""; }; - 8F7AC99EA9BB4DD560CC39E5F17FB477 /* PlaybackBufferingAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackBufferingAction.swift; path = PlayerCore/PlaybackBufferingAction.swift; sourceTree = ""; }; - 8FAEF47788187F0CD57AC4D4CF6599CE /* ContentControlsUIProps.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentControlsUIProps.swift; path = PlayerControls/sources/ContentControlsUIProps.swift; sourceTree = ""; }; - 904616F21DAB78E2183750398701150C /* VideoContextPresenter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoContextPresenter.swift; path = "sources/video stream presenter/VideoContextPresenter.swift"; sourceTree = ""; }; - 9068A799A39901F7F39F10D5C601D095 /* CompletePlaybackSessionAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlaybackSessionAction.swift; path = PlayerCore/actions/CompletePlaybackSessionAction.swift; sourceTree = ""; }; - 90B83F91CF87AB5C4DE3F00417F3A432 /* DefaultControlsViewController.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = DefaultControlsViewController.xib; path = PlayerControls/resources/DefaultControlsViewController.xib; sourceTree = ""; }; - 91EDACAD20EDFF844EF221278166B3D0 /* ContentControlsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentControlsViewController.swift; path = PlayerControls/sources/ContentControlsViewController.swift; sourceTree = ""; }; - 935190924972BE2AF78DB5F3DAE1091F /* OpenMeasurement.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurement.swift; path = PlayerCore/OpenMeasurement.swift; sourceTree = ""; }; - 939688037004E5CE1676B7CEBBE9E08B /* UpdateDuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateDuration.swift; path = "PlayerCore/action creators/UpdateDuration.swift"; sourceTree = ""; }; - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 94651A3DCC58CAF070812334F62D94CE /* SettingsViewController.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SettingsViewController.xib; path = PlayerControls/resources/SettingsViewController.xib; sourceTree = ""; }; - 94CBB443128BFDB72D523F89C04AA872 /* ContentFullScreenToggle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentFullScreenToggle.swift; path = "PlayerCore/action creators/ContentFullScreenToggle.swift"; sourceTree = ""; }; - 956CA8903BE26CEB879A446119E31306 /* VRMDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMDetector.swift; path = sources/metrics/detectors/vrm/VRMDetector.swift; sourceTree = ""; }; - 969CE127A493C1E565C6650EB6552E94 /* Pods-Tutorial_tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Tutorial_tvOS-acknowledgements.plist"; sourceTree = ""; }; - 981FCF0A9AAB9992E824F731B6924843 /* Duration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Duration.swift; path = PlayerCore/components/Duration.swift; sourceTree = ""; }; - 99BB873A027712E55EE7035DA0FD8309 /* QuartileDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuartileDetector.swift; path = sources/metrics/detectors/quartile/QuartileDetector.swift; sourceTree = ""; }; - 9B54B5C1F9391D4606F19BD1DA9B7D9A /* LoadedTimeRanges.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoadedTimeRanges.swift; path = PlayerCore/components/LoadedTimeRanges.swift; sourceTree = ""; }; - 9C46F677CAD5560EF429BB665A5F7E7E /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/WebKit.framework; sourceTree = DEVELOPER_DIR; }; - 9C9F32B6F133AE31003372A25423ABB7 /* VideoRenderer-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "VideoRenderer-tvOS.xcconfig"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS.xcconfig"; sourceTree = ""; }; - 9CDA438423EA9A1A5F33142AE0527696 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; }; - 9D62111FA2161A911C4D257294125EC6 /* MaxShowTimeController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaxShowTimeController.swift; path = sources/advertisements/MaxShowTimeController.swift; sourceTree = ""; }; - 9D82CAC87CFDBB09552BB04C050C8350 /* ControlsVisibilityController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlsVisibilityController.swift; path = PlayerControls/sources/ControlsVisibilityController.swift; sourceTree = ""; }; - 9DC0BF97B82A8D2D95082A17177C5DE2 /* Color.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Color.swift; path = PlayerControls/sources/Color.swift; sourceTree = ""; }; - 9FB5C44FCE64ADA3F6C1903590854360 /* OMScriptServiceAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OMScriptServiceAction.swift; path = PlayerCore/OMScriptServiceAction.swift; sourceTree = ""; }; - A1AB631583E8AD76A39F6CC7107F7982 /* VideoLoadingDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoLoadingDetector.swift; path = "sources/metrics/detectors/video loading/VideoLoadingDetector.swift"; sourceTree = ""; }; - A26518A7C487E4AE339B4662C69D3FCD /* Pods-Tutorial_tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial_tvOS.debug.xcconfig"; sourceTree = ""; }; - A351B422A76CE5A963A40F8E2C2489C7 /* UpdateMediaOptions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateMediaOptions.swift; path = "PlayerCore/action creators/UpdateMediaOptions.swift"; sourceTree = ""; }; - A402ADEFF7F87B82752402AD92E39F27 /* UpdateCurrentTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCurrentTime.swift; path = "PlayerCore/action creators/UpdateCurrentTime.swift"; sourceTree = ""; }; - A520BAE313A08EDD77FF55F02A1A9A1B /* UpdateVPAIDAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateVPAIDAction.swift; path = PlayerCore/actions/UpdateVPAIDAction.swift; sourceTree = ""; }; - A52D24C8F45218D77091971D0242B196 /* UpdateCameraAnglesAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCameraAnglesAction.swift; path = PlayerCore/actions/UpdateCameraAnglesAction.swift; sourceTree = ""; }; - A64C0FABCA9E69947EF243310565FDFA /* PropsMapping.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PropsMapping.swift; path = "sources/dynamic analytics/PropsMapping.swift"; sourceTree = ""; }; - A8B9A3EAC983A1F3AD4EEF2F10DEFC4F /* Autogeneratable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Autogeneratable.swift; path = PlayerControls/build_scripts/code_generation/Autogeneratable.swift; sourceTree = ""; }; - AD08D6027E2F36EF0A5F6EFDA3D0C94E /* MaxShowTimeActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaxShowTimeActionCreator.swift; path = "PlayerCore/action creators/MaxShowTimeActionCreator.swift"; sourceTree = ""; }; - ADBB37257086C69BE2D3A45E38621509 /* PlaybackCycleDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackCycleDetector.swift; path = "sources/metrics/detectors/playback cycle/PlaybackCycleDetector.swift"; sourceTree = ""; }; - ADBD98169C953D6CF2CABA20C0EC92D7 /* AdClickThroughAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickThroughAction.swift; path = PlayerCore/actions/AdClickThroughAction.swift; sourceTree = ""; }; - ADEB582B5F68BC8D3108EF44DE73C639 /* PlaybackModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackModel.swift; path = "PlayerCore/player model/PlaybackModel.swift"; sourceTree = ""; }; - AE67484A69A1F7F54757BFEF5CD7FD6D /* Pods-Tutorial-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Tutorial-umbrella.h"; sourceTree = ""; }; - AF4DFBF6B322DAAC6F3C7584F66B354A /* SettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SettingCell.swift; path = PlayerControls/sources/SettingCell.swift; sourceTree = ""; }; - AF60D4731856EC5C6CDDD8A899F613A2 /* Rethrow.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rethrow.swift; path = sources/utils/Rethrow.swift; sourceTree = ""; }; - B05BA6B252496D76FA213610874800F3 /* VideoStreamViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoStreamViewController.swift; path = VideoRenderer/VideoRenderer/VideoStreamViewController.swift; sourceTree = ""; }; - B257E2CD6F62E566E090564F44F8C590 /* VerizonVideoPartnerSDK-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VerizonVideoPartnerSDK-tvOS-umbrella.h"; path = "../../Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h"; sourceTree = ""; }; - B3243A549D845F8EB5894515FA46ECB6 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/CoreMedia.framework; sourceTree = DEVELOPER_DIR; }; - B375FA8FEEE412E94048793C25D2E13A /* VRMItemActions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMItemActions.swift; path = PlayerCore/actions/VRMItemActions.swift; sourceTree = ""; }; - B3E375E20D4CA38592494A8AD33620EE /* UpdateExternalPlaybackStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlaybackStatus.swift; path = "PlayerCore/action creators/UpdateExternalPlaybackStatus.swift"; sourceTree = ""; }; - B413C6D53F3C0197CCB7A7813A8C44A0 /* VideoPlayDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoPlayDetector.swift; path = "sources/metrics/detectors/video play/VideoPlayDetector.swift"; sourceTree = ""; }; - B417B3CB95F5039AFCB350F4F2A5C126 /* VRMCoreAdRequestAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdRequestAction.swift; path = "PlayerCore/actions/New VRM Core/VRMCoreAdRequestAction.swift"; sourceTree = ""; }; - B5AF3EF885CF9EBCAB773C9CBF143175 /* PictureInPictureControllerObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureControllerObserver.swift; path = VideoRenderer/VideoRenderer/PictureInPictureControllerObserver.swift; sourceTree = ""; }; - B5B7B58BF84B37AEF03D75A2389D742B /* SafariServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SafariServices.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/SafariServices.framework; sourceTree = DEVELOPER_DIR; }; - B6C00520495895A29A48A2574D0DF87C /* Playlist.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Playlist.swift; path = PlayerCore/components/Playlist.swift; sourceTree = ""; }; - B6D079AC9494A3CBF205BC2D6A6E46C4 /* PictiureInPicture.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictiureInPicture.swift; path = PlayerCore/components/PictiureInPicture.swift; sourceTree = ""; }; - B796C049CFF147D59B8F186968C41DEC /* Thumbnail+VideoProviderResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Thumbnail+VideoProviderResponse.swift"; path = "PlayerCore/player model/thumbnail/Thumbnail+VideoProviderResponse.swift"; sourceTree = ""; }; - B82DD30BE9F79FA625F8AE6D0706E90E /* Utils.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Utils.swift; path = PlayerControls/sources/Utils.swift; sourceTree = ""; }; - B8535B84956F4931055B6BBBF636BCBB /* TimerActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimerActionCreator.swift; path = "PlayerCore/action creators/TimerActionCreator.swift"; sourceTree = ""; }; - B872C7F7CE865558F85E0E92BE253E14 /* SettingHeaderView.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SettingHeaderView.xib; path = PlayerControls/resources/SettingHeaderView.xib; sourceTree = ""; }; - B89045B69B19780EB8C0D427DE59B2E0 /* SeekerController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekerController.swift; path = VideoRenderer/VideoRenderer/SeekerController.swift; sourceTree = ""; }; - B8B632F0507A346EC1129210D3DE3BD6 /* UpdateExternalPlayback.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlayback.swift; path = "PlayerCore/action creators/UpdateExternalPlayback.swift"; sourceTree = ""; }; - B9F276588C10024B75D1C6630E40505C /* SkipAdAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipAdAction.swift; path = PlayerCore/actions/SkipAdAction.swift; sourceTree = ""; }; - B9FB50E7B0F3ACA1BD021113B4118A08 /* SeekGestureRecognizer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekGestureRecognizer.swift; path = PlayerControls/sources/SeekGestureRecognizer.swift; sourceTree = ""; }; - BA154198FD701259B07985D457DD34AF /* UpdateRate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateRate.swift; path = "PlayerCore/action creators/UpdateRate.swift"; sourceTree = ""; }; - BAD0ED6762DD3A3D0E090D51D8843F74 /* Pods-Tutorial.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Tutorial.modulemap"; sourceTree = ""; }; - BC6A3C2D0EADAEB667FEEFE1FA946048 /* ApplyDecorator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ApplyDecorator.swift; path = sources/utils/ApplyDecorator.swift; sourceTree = ""; }; - BC8F4B2EDCA1349EEADFB7F7ECBF2263 /* Pods-Tutorial.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial.release.xcconfig"; sourceTree = ""; }; - BE2B607441CD8C92D380169E6DDA6AAD /* VideoRenderer-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "VideoRenderer-iOS-dummy.m"; sourceTree = ""; }; - BF741AE1D30E4B59132CC68D13FB30E5 /* VPAIDMessageHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDMessageHandler.swift; path = sources/vpaid/VPAIDMessageHandler.swift; sourceTree = ""; }; - C0B502E0086AF90E1ED7C3CE0777B86A /* AdCreative.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdCreative.swift; path = PlayerCore/components/AdCreative.swift; sourceTree = ""; }; - C0CDDCF97523F0787447C919873554E9 /* UpdateLoadedTimeRangesAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateLoadedTimeRangesAction.swift; path = PlayerCore/actions/UpdateLoadedTimeRangesAction.swift; sourceTree = ""; }; - C0DEBB8DB976D1C444796C7EB6B6F1CB /* VRMTopPriorityItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMTopPriorityItem.swift; path = "PlayerCore/components/New VRM Core/VRMTopPriorityItem.swift"; sourceTree = ""; }; - C1A805987D20AE9ADAE2FDF14D90BF6C /* VRMCoreAdResponseAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdResponseAction.swift; path = "PlayerCore/actions/New VRM Core/VRMCoreAdResponseAction.swift"; sourceTree = ""; }; - C1C0D528D7B2F30BE1DA9B1689C56FD2 /* SystemPlayerReplayDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerReplayDetector.swift; path = "sources/default controls/SystemPlayerReplayDetector.swift"; sourceTree = ""; }; - C2FF21C1967303926D3FC8E71602DEA8 /* VideoImpression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoImpression.swift; path = "sources/metrics/detectors/video impression/VideoImpression.swift"; sourceTree = ""; }; - C3F64BD34BB3CAA8B72641992CBEB342 /* TimeFormatter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimeFormatter.swift; path = PlayerControls/sources/TimeFormatter.swift; sourceTree = ""; }; - C44F0E9AF2959760F4495D3AAB757156 /* OpenMeasurementController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementController.swift; path = "sources/metrics/open measurement/OpenMeasurementController.swift"; sourceTree = ""; }; - C5B53B5950BD81738B677B5C8E7024B3 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/AVFoundation.framework; sourceTree = DEVELOPER_DIR; }; - C6FBFBA8B34E78F824AB8208E18BE62A /* Play.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Play.swift; path = "PlayerCore/action creators/Play.swift"; sourceTree = ""; }; - C7D2F94B83F4774F86F1D014D28E49DB /* libPlayerCore-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPlayerCore-tvOS.a"; path = "libPlayerCore-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - C8BFD14F7BCB4F454474DD557EC8FB2F /* TrackingPixelsGenerator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsGenerator.swift; path = "sources/metrics/tracking pixels/TrackingPixelsGenerator.swift"; sourceTree = ""; }; - C9EA918DED9C206E59D1F3D951C28CB6 /* VVPSDK.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVPSDK.swift; path = sources/VVPSDK.swift; sourceTree = ""; }; - CB737A73C09729E15EBB1FDD6881B647 /* AdFinishTracker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdFinishTracker.swift; path = PlayerCore/components/AdFinishTracker.swift; sourceTree = ""; }; - CB9B1E88711B17F9922543C2A2F45667 /* ConfigurationParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConfigurationParser.swift; path = sources/config/ConfigurationParser.swift; sourceTree = ""; }; - CBE2DC1A2F83392F9BDD282859EB7524 /* SeekerControlView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekerControlView.swift; path = PlayerControls/sources/SeekerControlView.swift; sourceTree = ""; }; - CC27E8E52BD7151EBF6FC002EC1B799C /* PlayerCore-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "PlayerCore-tvOS-dummy.m"; path = "../PlayerCore-tvOS/PlayerCore-tvOS-dummy.m"; sourceTree = ""; }; - CD3E4B12F5E2409448FAD53AABE7F950 /* PlayerUIControls.xcassets */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder.assetcatalog; name = PlayerUIControls.xcassets; path = PlayerControls/resources/PlayerUIControls.xcassets; sourceTree = ""; }; - CE3F0427920335482297FC712F9C1651 /* PlayerCore-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PlayerCore-iOS-prefix.pch"; sourceTree = ""; }; - CF40E1EA3BF7952E005C0ACCDF04E953 /* ShowAdAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShowAdAction.swift; path = PlayerCore/actions/ShowAdAction.swift; sourceTree = ""; }; - CF416E7292827AC9BF388D5EE1234AF2 /* UserActions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UserActions.swift; path = PlayerCore/components/UserActions.swift; sourceTree = ""; }; - D00260DDC45913DA4E36C1289BD6B68C /* Replay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Replay.swift; path = "PlayerCore/action creators/Replay.swift"; sourceTree = ""; }; - D139E9F005DCF621ADA8FFAA1CA71CC0 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/CoreMedia.framework; sourceTree = DEVELOPER_DIR; }; - D2A2FB54B9EE32B692A636C176BFF3CB /* PlayerControls.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PlayerControls.xcconfig; sourceTree = ""; }; - D2BDDD87D3B494A96246E20440F479F8 /* CompletePlayerSessionAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlayerSessionAction.swift; path = PlayerCore/actions/CompletePlayerSessionAction.swift; sourceTree = ""; }; - D2F23D4A4092AFBBB20BDF9E97B1A15E /* MetricsSender.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MetricsSender.swift; path = sources/metrics/sender/MetricsSender.swift; sourceTree = ""; }; - D30BEFD5ADDA7C97D87EFF200546858D /* VideoSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoSelector.swift; path = sources/player/VideoSelector.swift; sourceTree = ""; }; - D357A84012B47B909CC561C5B448C965 /* Future.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Future.swift; path = sources/utils/Future.swift; sourceTree = ""; }; - D3BE20027FBB749F3E16F5B1B2A2CB98 /* VideoProviderParsing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoProviderParsing.swift; path = "sources/video provider/provider/VideoProviderParsing.swift"; sourceTree = ""; }; - D481555CFF1973E60827AB07E878DC7B /* Camera.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Camera.swift; path = VideoRenderer/VideoRenderer/Camera.swift; sourceTree = ""; }; - D4DBDA8FD59F9C64001EA31D981AE9D0 /* StallingRecords.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StallingRecords.swift; path = PlayerCore/components/StallingRecords.swift; sourceTree = ""; }; - D521315A396FE12F6AE3BF25EC18CE64 /* AdClickthroughActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickthroughActionCreator.swift; path = "PlayerCore/action creators/AdClickthroughActionCreator.swift"; sourceTree = ""; }; - D60A46AAACB1BC39457A65E8974BA779 /* Dispatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dispatcher.swift; path = PlayerCore/Dispatcher.swift; sourceTree = ""; }; - D7F54FDD978BB172AA050F61AC76391F /* Pods-Tutorial-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Tutorial-acknowledgements.markdown"; sourceTree = ""; }; - D80C9C3213047EE632D9553A4C769DBF /* VRMRequestStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRequestStatus.swift; path = "PlayerCore/components/New VRM Core/VRMRequestStatus.swift"; sourceTree = ""; }; - D8F051A30702E7B41665B5809C07C3E2 /* PlayerCore-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "PlayerCore-iOS.xcconfig"; sourceTree = ""; }; - D921EEA1FDC52E6712233D73CFE9D0CA /* Codable_PlayerControls.generated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Codable_PlayerControls.generated.swift; path = PlayerControls/sources/Codable_PlayerControls.generated.swift; sourceTree = ""; }; - D96C8D4C2E1B6AC5850E03D6F9BA3A47 /* Viewport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Viewport.swift; path = PlayerCore/components/Viewport.swift; sourceTree = ""; }; - DB47FFE162435F98B1E42218D37D636C /* JavaScriptTelemetry.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JavaScriptTelemetry.swift; path = "sources/dynamic analytics/JavaScriptTelemetry.swift"; sourceTree = ""; }; - DBC7D2E96399A20D2A037A08B2082D33 /* UpdateDimensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateDimensions.swift; path = PlayerCore/actions/UpdateDimensions.swift; sourceTree = ""; }; - DBCC060C24A77FEE9187EF4352F472D6 /* SystemPlayerObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerObserver.swift; path = VideoRenderer/VideoRenderer/SystemPlayerObserver.swift; sourceTree = ""; }; - DDE1011BBF5FC1B0E35740B113722D46 /* Observer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observer.swift; path = sources/player/observer/Observer.swift; sourceTree = ""; }; - DDF42DD6E4992C9C46DD8CA3072906E9 /* SkipAd.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipAd.swift; path = "PlayerCore/action creators/SkipAd.swift"; sourceTree = ""; }; - DF97835F70ADC72148DDE977711C16B1 /* SettingHeaderView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SettingHeaderView.swift; path = PlayerControls/sources/SettingHeaderView.swift; sourceTree = ""; }; - DFF5225C2B850F1A950D899E1AA0B4D1 /* SelectVideoAtIndex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SelectVideoAtIndex.swift; path = "PlayerCore/action creators/SelectVideoAtIndex.swift"; sourceTree = ""; }; - E213B6FA430B7E01405FC1F578A03884 /* AirPlayActiveView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AirPlayActiveView.swift; path = PlayerControls/sources/AirPlayActiveView.swift; sourceTree = ""; }; - E2498FFB356547D3393E6AB2919DFC72 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = sources/config/Configuration.swift; sourceTree = ""; }; - E31B80BFF936795AA5C4A478B5EE0BA4 /* ScheduledVRMItems.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledVRMItems.swift; path = "PlayerCore/components/New VRM Core/ScheduledVRMItems.swift"; sourceTree = ""; }; - E37C4C9A91AED32895BDEBF5F4032EF6 /* PlaybackBuffering.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackBuffering.swift; path = PlayerCore/PlaybackBuffering.swift; sourceTree = ""; }; - E3B5A395D26DF4C5DB4E72DB2FA84013 /* Pause.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Pause.swift; path = "PlayerCore/action creators/Pause.swift"; sourceTree = ""; }; - E3EC4B7840232ABAC87ABCC542A8A1B4 /* DecileDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DecileDetector.swift; path = sources/metrics/detectors/decile/DecileDetector.swift; sourceTree = ""; }; - E50F435FBA742A8221327B76928F1447 /* PauseAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PauseAction.swift; path = PlayerCore/actions/PauseAction.swift; sourceTree = ""; }; - E59632BF977DAE7576AFBB52C77BB28F /* XMLParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = XMLParser.swift; path = sources/advertisements/XMLParser.swift; sourceTree = ""; }; - E638C9D630901ED04E17BD40FA99DF35 /* VASTWrapperProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VASTWrapperProcessor.swift; path = sources/advertisements/VASTWrapperProcessor.swift; sourceTree = ""; }; - E6907CEA46BBB8EC1FD145706ADFD70D /* SkipRepeatsDecorator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipRepeatsDecorator.swift; path = sources/utils/SkipRepeatsDecorator.swift; sourceTree = ""; }; - E695600957630B8096B0C777B2210AA1 /* Pods-Tutorial_tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Tutorial_tvOS-umbrella.h"; sourceTree = ""; }; - E720E2440EB170B1FF5F477CD2CF2A57 /* TimerSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimerSession.swift; path = PlayerCore/components/TimerSession.swift; sourceTree = ""; }; - E81865AF4FA2E4861D590F297C41AB92 /* libVideoRenderer-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVideoRenderer-tvOS.a"; path = "libVideoRenderer-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - E85308E7ECE202777E327F862E1A1CFC /* UpdateAverageBitrateAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateAverageBitrateAction.swift; path = PlayerCore/actions/UpdateAverageBitrateAction.swift; sourceTree = ""; }; - EA9A8A4215A3726A63AB49983F9CEDB8 /* Pods-Tutorial-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Tutorial-dummy.m"; sourceTree = ""; }; - EB771E978CA41E639189F89D52A9C09A /* MidrollDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MidrollDetector.swift; path = sources/advertisements/MidrollDetector.swift; sourceTree = ""; }; - EBA68203FA38A75D2E16ECCAFD80F12A /* RendererDescriptor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RendererDescriptor.swift; path = PlayerCore/RendererDescriptor.swift; sourceTree = ""; }; - EBE4FB5C1CFEBB5DEA7CE979BEC54D95 /* Seek.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Seek.swift; path = "PlayerCore/action creators/Seek.swift"; sourceTree = ""; }; - EC35229C5BF283161F901D488C47507B /* libPods-Tutorial_tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Tutorial_tvOS.a"; path = "libPods-Tutorial_tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - ED32760CD4C760EDD487654D2FBB7488 /* AdURLProviderProcess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdURLProviderProcess.swift; path = sources/advertisements/AdURLProviderProcess.swift; sourceTree = ""; }; - EDA3FC630C5849D50050741BECEFA3CE /* PlayerInterface.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerInterface.swift; path = sources/player/PlayerInterface.swift; sourceTree = ""; }; - EDC6B6CC5E134FF914417D5AE82D3362 /* PlayerSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerSession.swift; path = PlayerCore/components/PlayerSession.swift; sourceTree = ""; }; - EE36546AB93A0AC24C11EF9E0D8FE072 /* libPods-Tutorial.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Tutorial.a"; path = "libPods-Tutorial.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - EEE22018F9CD003D5A63236D9F801406 /* VRMCoreStartGroupProcessing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreStartGroupProcessing.swift; path = "PlayerCore/actions/New VRM Core/VRMCoreStartGroupProcessing.swift"; sourceTree = ""; }; - EF3663C0AECC745A319F9D623FFAC521 /* VRMGroupsQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMGroupsQueue.swift; path = PlayerCore/components/VRMGroupsQueue.swift; sourceTree = ""; }; - EF62C2FA51F371B761239A6F4237030A /* AdStartTimeoutController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdStartTimeoutController.swift; path = sources/advertisements/AdStartTimeoutController.swift; sourceTree = ""; }; - EFCD08872ED4FD44C60DEAF7D668601E /* State.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = State.swift; path = PlayerCore/components/State.swift; sourceTree = ""; }; - EFD4E2A1F2C8543C4DD923E3EB9CE476 /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = sources/utils/Timer.swift; sourceTree = ""; }; - F09FAD92BB59C2212454C4B9252963F5 /* PictureInPictureToggleAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureToggleAction.swift; path = PlayerCore/actions/PictureInPictureToggleAction.swift; sourceTree = ""; }; - F26EABDAC23795CBA1B2E2E39593E1E9 /* UpdateMediaOptionsAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateMediaOptionsAction.swift; path = PlayerCore/actions/UpdateMediaOptionsAction.swift; sourceTree = ""; }; - F40F5FE272D009E3E599DC5EF9C07D62 /* ContentFullScreen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentFullScreen.swift; path = PlayerCore/components/ContentFullScreen.swift; sourceTree = ""; }; - F49D79606778AB04B10A7CAE25C662D1 /* VerizonVideoPartnerSDK-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "VerizonVideoPartnerSDK-iOS-dummy.m"; sourceTree = ""; }; - F6F83D60E9328390087D84237A137B8F /* UpdateLoadedTimeRanges.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateLoadedTimeRanges.swift; path = "PlayerCore/action creators/UpdateLoadedTimeRanges.swift"; sourceTree = ""; }; - F7569F4011689A193E8AC7E9AC31675E /* Autogeneratable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Autogeneratable.swift; path = sources/utils/Autogeneratable.swift; sourceTree = ""; }; - F7FCF149223087241FDABE5334FBD85D /* VRMParseItemQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMParseItemQueue.swift; path = "PlayerCore/components/New VRM Core/VRMParseItemQueue.swift"; sourceTree = ""; }; - F80415A24D033D1D3F40A31C084CECC9 /* VPAIDState.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDState.swift; path = PlayerCore/components/VPAIDState.swift; sourceTree = ""; }; - F851642EED02BB9C483C8068E23A9270 /* AnimationDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationDelegate.swift; path = PlayerControls/sources/AnimationDelegate.swift; sourceTree = ""; }; - F9C8E0F248527D418766AEE0447745BE /* Metrics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Metrics.swift; path = sources/telemetry/Metrics.swift; sourceTree = ""; }; - FB983720F2689B9D19D2A819C2E317AF /* SeekerControlPlayground.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SeekerControlPlayground.xib; path = PlayerControls/resources/SeekerControlPlayground.xib; sourceTree = ""; }; - FC0A6ECF684B52307079B294DA99828B /* UpdateAverageBitrate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateAverageBitrate.swift; path = "PlayerCore/action creators/UpdateAverageBitrate.swift"; sourceTree = ""; }; + 00B6CFE7E7F6F12CA7ED462C1D06B093 /* TrackingPixelsReporter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsReporter.swift; path = "sources/metrics/tracking pixels/TrackingPixelsReporter.swift"; sourceTree = ""; }; + 00E5F760209DD07EB7392C6FFE7838D0 /* PictureInPictureToggleAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureToggleAction.swift; path = PlayerCore/actions/PictureInPictureToggleAction.swift; sourceTree = ""; }; + 01913AC15AC4F40244C808D2725F9FEA /* Pods-Tutorial-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Tutorial-dummy.m"; sourceTree = ""; }; + 034D75DEF9537918A4E0799C960B591D /* AdVideoControls.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = AdVideoControls.xib; path = PlayerControls/resources/AdVideoControls.xib; sourceTree = ""; }; + 044F59316AB07DD14F58AAB8EAE27F0A /* PlaybackFailed.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackFailed.swift; path = PlayerCore/actions/PlaybackFailed.swift; sourceTree = ""; }; + 04C5E40F9592EBC9A65DFB9D1AB36461 /* UpdateCameraAngles.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCameraAngles.swift; path = "PlayerCore/action creators/UpdateCameraAngles.swift"; sourceTree = ""; }; + 04CB85254C317DD2A09CC7A2B1F81A65 /* PlaylistStatisticDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaylistStatisticDetector.swift; path = "sources/metrics/detectors/playlist stats/PlaylistStatisticDetector.swift"; sourceTree = ""; }; + 054E0C60F3F76FB3C2D3738F157D18C4 /* VPAIDProps.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDProps.swift; path = sources/vpaid/VPAIDProps.swift; sourceTree = ""; }; + 0569E386FAF353D6D3496D3577F038EE /* ContentControlsUIProps.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentControlsUIProps.swift; path = PlayerControls/sources/ContentControlsUIProps.swift; sourceTree = ""; }; + 05C134C8F64221B7772BF1CF91859388 /* VerizonVideoPartnerSDK-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VerizonVideoPartnerSDK-tvOS-umbrella.h"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-umbrella.h"; sourceTree = ""; }; + 05E75D9179C0BAC5A3B770F04F45D0D8 /* UpdateDimensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateDimensions.swift; path = PlayerCore/actions/UpdateDimensions.swift; sourceTree = ""; }; + 064B100FBA997CA7EF23C718AA38E24D /* Autogeneratable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Autogeneratable.swift; path = PlayerControls/build_scripts/code_generation/Autogeneratable.swift; sourceTree = ""; }; + 06F04EAB91ACF8351163497054232A18 /* FinishVRMGroupProcessingController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FinishVRMGroupProcessingController.swift; path = "sources/advertisements/VRM New Core/Controllers/FinishVRMGroupProcessingController.swift"; sourceTree = ""; }; + 07C1A463EAEE0B59E88A0E89031A9266 /* SystemPlayerViewControlller_Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerViewControlller_Binding.swift; path = "sources/default controls/SystemPlayerViewControlller_Binding.swift"; sourceTree = ""; }; + 086360320F329D8302E34FF7529078A5 /* DefaultControlsViewController.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = DefaultControlsViewController.xib; path = PlayerControls/resources/DefaultControlsViewController.xib; sourceTree = ""; }; + 094AAE1A85C4FBE704E698FBDBF8F222 /* ReporterTracer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReporterTracer.swift; path = "sources/metrics/tracking pixels/ReporterTracer.swift"; sourceTree = ""; }; + 0A636A35441779271BCDDCC3697721AF /* Action.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Action.swift; path = sources/utils/Action.swift; sourceTree = ""; }; + 0B940473828B911A76CD420D1A2B601D /* Player_VideoEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Player_VideoEvents.swift; path = "sources/video detectors/Player_VideoEvents.swift"; sourceTree = ""; }; + 0B940EE3E08F933D60F42C0442890859 /* AdMaxShowTimeDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdMaxShowTimeDetector.swift; path = "sources/metrics/detectors/ad max show time/AdMaxShowTimeDetector.swift"; sourceTree = ""; }; + 0C6DE2B96C8351E5EA7E3D9A561DED45 /* Play.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Play.swift; path = "PlayerCore/action creators/Play.swift"; sourceTree = ""; }; + 0D09157E18B580F9A0C29349A33C35C4 /* VVP.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVP.swift; path = sources/VVP.swift; sourceTree = ""; }; + 0DAFFB3AEE797A99279281F7C6AA7869 /* TimeoutAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimeoutAction.swift; path = PlayerCore/actions/TimeoutAction.swift; sourceTree = ""; }; + 0E4EA93A9E4A379D052C130E08428E84 /* Ad.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Ad.swift; path = PlayerCore/components/Ad.swift; sourceTree = ""; }; + 0F4D2737B8CE26396BCBF76BF9D81A1D /* PlayerCore-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "PlayerCore-iOS.xcconfig"; sourceTree = ""; }; + 0FA95901A4230F99ECD6CF3623F7852A /* AdURLProviderProcess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdURLProviderProcess.swift; path = sources/advertisements/AdURLProviderProcess.swift; sourceTree = ""; }; + 1048B0D9145F129EE8B27675D8504F84 /* VRMCoreGroupProcessing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreGroupProcessing.swift; path = "PlayerCore/actions/New VRM Core/VRMCoreGroupProcessing.swift"; sourceTree = ""; }; + 1170FFC23FEE414E57D7D1E40FFD58A3 /* CurrentTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentTime.swift; path = PlayerCore/components/CurrentTime.swift; sourceTree = ""; }; + 12E355AC24B80A849E560B6B37735181 /* AirPlayView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AirPlayView.swift; path = PlayerControls/sources/AirPlayView.swift; sourceTree = ""; }; + 139DDC45B37F71E18C20B94C8F365C91 /* VRMTimeoutActionsCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMTimeoutActionsCreator.swift; path = "PlayerCore/action creators/New VRM Core/VRMTimeoutActionsCreator.swift"; sourceTree = ""; }; + 14B3C7CED428299A83D1B17FDD4CCF01 /* Thumbnail+VideoProviderResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Thumbnail+VideoProviderResponse.swift"; path = "PlayerCore/player model/thumbnail/Thumbnail+VideoProviderResponse.swift"; sourceTree = ""; }; + 15B717973EE21477DF8BB0748B02681F /* TimeFormatter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimeFormatter.swift; path = PlayerControls/sources/TimeFormatter.swift; sourceTree = ""; }; + 1616B1C185878594C5B5C7A5FB28FD76 /* VRMMidrollProcessorController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMMidrollProcessorController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMMidrollProcessorController.swift"; sourceTree = ""; }; + 164C622F3873703079AE2F90A1CE9E4E /* SettingCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SettingCell.swift; path = PlayerControls/sources/SettingCell.swift; sourceTree = ""; }; + 16A3E6249C0614E92710ABE781A2E24D /* RendererRepository.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RendererRepository.swift; path = VideoRenderer/VideoRenderer/RendererRepository.swift; sourceTree = ""; }; + 176C68CF6066CF79270C09A1A3A1A500 /* PlaybackBufferingAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackBufferingAction.swift; path = PlayerCore/PlaybackBufferingAction.swift; sourceTree = ""; }; + 197DDA6B84BE4F498732D3D1BF4162DD /* SettingCell.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SettingCell.xib; path = PlayerControls/resources/SettingCell.xib; sourceTree = ""; }; + 19CAC9740700F539F523B6290A54B724 /* VRMCoreItemSchedulingActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreItemSchedulingActionCreator.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreItemSchedulingActionCreator.swift"; sourceTree = ""; }; + 1A3606D3CBA75E4CCA38E67DC4ECEB32 /* Pipeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Pipeline.swift; path = sources/utils/Pipeline.swift; sourceTree = ""; }; + 1B0904CB47448F5D4E6AC8F8A185568F /* PlayerInterface.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerInterface.swift; path = sources/player/PlayerInterface.swift; sourceTree = ""; }; + 1B99D4514E3DC2D3A73626AA63F1A0D9 /* Defaultable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Defaultable.swift; path = PlayerControls/sources/Defaultable.swift; sourceTree = ""; }; + 1BC8F331FC0F9CD91961E9584A9DC84D /* NonEmptyString.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NonEmptyString.swift; path = sources/utils/NonEmptyString.swift; sourceTree = ""; }; + 1D2C80149026183A373986FA1B50DC91 /* OpenMeasurement_Tracking.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurement_Tracking.swift; path = PlayerCore/OpenMeasurement_Tracking.swift; sourceTree = ""; }; + 1D2ECC2490ED8AFEA39D5D62554D6B1F /* MaxAdSearchTimeController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaxAdSearchTimeController.swift; path = "sources/advertisements/VRM New Core/Controllers/MaxAdSearchTimeController.swift"; sourceTree = ""; }; + 1DEAB0929B915455327E41F9A8AE9A4F /* VRMCoreVASTModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreVASTModel.swift; path = "PlayerCore/player model/VRM/VRMCoreVASTModel.swift"; sourceTree = ""; }; + 1F0F191BD54CAA98B8C30AF42AA54701 /* VerizonVideoPartnerSDK-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VerizonVideoPartnerSDK-tvOS-prefix.pch"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-prefix.pch"; sourceTree = ""; }; + 1F16B032E4DF8CE0957BBCEF6D4E26BB /* PlayerCore-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PlayerCore-iOS-dummy.m"; sourceTree = ""; }; + 1F23F96C28DF5C30FEF8ADA9C980CCFA /* Pods-Tutorial_tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Tutorial_tvOS-dummy.m"; sourceTree = ""; }; + 1FE35B86E26F5F3EF619CBD5D0732349 /* PlaybackDuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackDuration.swift; path = PlayerCore/components/PlaybackDuration.swift; sourceTree = ""; }; + 203C979BBCED25626DD51D4EB8A33A46 /* AdClickthrough.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickthrough.swift; path = PlayerCore/components/AdClickthrough.swift; sourceTree = ""; }; + 209FCF3C1887B131F21E5FB7E7031B83 /* TrackingPixelsConnector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsConnector.swift; path = "sources/metrics/tracking pixels/TrackingPixelsConnector.swift"; sourceTree = ""; }; + 21028DEC97602C707A154D6AA36F7A46 /* VerizonVideoPartnerSDK-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "VerizonVideoPartnerSDK-iOS.xcconfig"; sourceTree = ""; }; + 21349908B1077D8FDBA34294FE59C118 /* SeekerControlView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekerControlView.swift; path = PlayerControls/sources/SeekerControlView.swift; sourceTree = ""; }; + 215D582548D0F59AA7DE97B62B7A8EA2 /* VRMParseItemQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMParseItemQueue.swift; path = "PlayerCore/components/New VRM Core/VRMParseItemQueue.swift"; sourceTree = ""; }; + 2305585E914996A388189D9C6F53C903 /* VideoRenderer-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "VideoRenderer-iOS.modulemap"; sourceTree = ""; }; + 2307F031C37CAFEC88180C9FCE333AC1 /* AdStartTimeoutController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdStartTimeoutController.swift; path = sources/advertisements/AdStartTimeoutController.swift; sourceTree = ""; }; + 2381728B182E51F65A2398680D67EA78 /* VRMOtherError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMOtherError.swift; path = "PlayerCore/components/New VRM Core/VRMOtherError.swift"; sourceTree = ""; }; + 23BE152EE50B060F11B59EF1D4AA9E84 /* SkipAdAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipAdAction.swift; path = PlayerCore/SkipAdAction.swift; sourceTree = ""; }; + 23D89C0CA935EDCE79B02559683FAE28 /* AdProcess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdProcess.swift; path = "PlayerCore/action creators/AdProcess.swift"; sourceTree = ""; }; + 241D7C3CE27DE263DEFC2A1939510AF1 /* Mute.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Mute.swift; path = PlayerCore/components/Mute.swift; sourceTree = ""; }; + 24421320230B829C904E25A74E154AF7 /* VideoContextPresenter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoContextPresenter.swift; path = "sources/video stream presenter/VideoContextPresenter.swift"; sourceTree = ""; }; + 250556BFF911BE5C9152305C40C7A585 /* OpenMeasurementServiceScript.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementServiceScript.swift; path = PlayerCore/OpenMeasurementServiceScript.swift; sourceTree = ""; }; + 250BB599A1C772610EFC383E6E87C434 /* ContentFullScreenToggle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentFullScreenToggle.swift; path = "PlayerCore/action creators/ContentFullScreenToggle.swift"; sourceTree = ""; }; + 2546F3AC631A153E0D85FB15DA1E79D1 /* VRMRequestDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRequestDetector.swift; path = sources/metrics/detectors/vrm/VRMRequestDetector.swift; sourceTree = ""; }; + 25530199B00503138E9F97F62ABFC169 /* PictureInPictureStatusUpdate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureStatusUpdate.swift; path = "PlayerCore/action creators/PictureInPictureStatusUpdate.swift"; sourceTree = ""; }; + 255FABA731E7F630E903F5092158FEE0 /* RendererDescriptor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RendererDescriptor.swift; path = PlayerCore/RendererDescriptor.swift; sourceTree = ""; }; + 25E6DAB0360283F153BFEB47269A97E3 /* VRMRequestController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRequestController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMRequestController.swift"; sourceTree = ""; }; + 26317AE0B22EA94F5D8E361F96C8CE87 /* AdPixels.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdPixels.swift; path = PlayerCore/components/AdPixels.swift; sourceTree = ""; }; + 265CBE33A29B95DD49CAADCF45E194CB /* Pods-Tutorial-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Tutorial-acknowledgements.plist"; sourceTree = ""; }; + 26BF146B6292576295E2F276A821D21A /* VideoRenderer-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VideoRenderer-tvOS-prefix.pch"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS-prefix.pch"; sourceTree = ""; }; + 278DFE128C479C9C160CE0CC42C9C65B /* PauseAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PauseAction.swift; path = PlayerCore/actions/PauseAction.swift; sourceTree = ""; }; + 27D97160CD0231B3EDA6B99F7A02B01E /* AdViewTimeDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdViewTimeDetector.swift; path = "sources/metrics/detectors/ad view time/AdViewTimeDetector.swift"; sourceTree = ""; }; + 280D7A9CFA13A8DA8ED56F7F568D2C18 /* PlayerControls.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PlayerControls.xcconfig; sourceTree = ""; }; + 2871189A8E8F8DCBE6A90ABB5D8EA042 /* TrackingPixelsConnector_Ad.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsConnector_Ad.swift; path = "sources/metrics/tracking pixels/TrackingPixelsConnector_Ad.swift"; sourceTree = ""; }; + 2908A08B70C308A5ED83F08F1C36730F /* AdClickThroughAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickThroughAction.swift; path = PlayerCore/actions/AdClickThroughAction.swift; sourceTree = ""; }; + 29AEAB463A986D0B2DC116919DE34599 /* ContentControlsViewController_Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentControlsViewController_Binding.swift; path = "sources/custom controls/ContentControlsViewController_Binding.swift"; sourceTree = ""; }; + 2A04D0589F5FBF791E1D7BCD9A5BB966 /* libVerizonVideoPartnerSDK-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVerizonVideoPartnerSDK-iOS.a"; path = "libVerizonVideoPartnerSDK-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2A08759625656C820C43E5B36A77E47C /* Pods-Tutorial_tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial_tvOS.debug.xcconfig"; sourceTree = ""; }; + 2B43AF6837A4014FCE9409A6CC59CDCE /* SelectVideoAtIndex.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SelectVideoAtIndex.swift; path = "PlayerCore/action creators/SelectVideoAtIndex.swift"; sourceTree = ""; }; + 2CC2D130B77C2B8C6C1737109FC842E3 /* UpdateExternalPlaybackStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlaybackStatus.swift; path = "PlayerCore/action creators/UpdateExternalPlaybackStatus.swift"; sourceTree = ""; }; + 2D59F17A202195C7AF92E46394929071 /* VRMTimeoutController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMTimeoutController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMTimeoutController.swift"; sourceTree = ""; }; + 2D879FFEB62970C3F50F9D016F5E0AAB /* PlayerCore-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "PlayerCore-tvOS.modulemap"; path = "../PlayerCore-tvOS/PlayerCore-tvOS.modulemap"; sourceTree = ""; }; + 2F3D17FCD60D1B7B3C3FF4063E83CDDB /* PlayerControls-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PlayerControls-prefix.pch"; sourceTree = ""; }; + 2FCF0627E65A9A4B37DEC717F9B54974 /* PlayerCore-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PlayerCore-iOS-umbrella.h"; sourceTree = ""; }; + 2FE296B2A3703D3C9C17C83CC4E502F9 /* BufferingStart.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BufferingStart.swift; path = "sources/metrics/detectors/buffering start/BufferingStart.swift"; sourceTree = ""; }; + 33C70C25279B08C42B2B59D196E66414 /* VerizonVideoPartnerSDK-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "VerizonVideoPartnerSDK-iOS-dummy.m"; sourceTree = ""; }; + 34113B05E2961F2CB9FC3CD4ACE915E3 /* MuteAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MuteAction.swift; path = PlayerCore/actions/MuteAction.swift; sourceTree = ""; }; + 344DA0286F0F8F9C4AD3682B575D91FC /* Pods-Tutorial_tvOS-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Tutorial_tvOS-acknowledgements.markdown"; sourceTree = ""; }; + 34D13B9B50D4BB0C55C56FEE2A8915D3 /* VRMFinalResult.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMFinalResult.swift; path = "PlayerCore/components/New VRM Core/VRMFinalResult.swift"; sourceTree = ""; }; + 35A03B133D318BBFB939C6D84132B8A6 /* VASTWrapperProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VASTWrapperProcessor.swift; path = sources/advertisements/VASTWrapperProcessor.swift; sourceTree = ""; }; + 35AE340418FF18C418FD3D6F03140CA7 /* AdManagerPresenter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdManagerPresenter.swift; path = sources/advertisements/AdManagerPresenter.swift; sourceTree = ""; }; + 3628493DEC13CCB3915896F896614B9D /* PlayerCore-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "PlayerCore-tvOS-umbrella.h"; path = "../PlayerCore-tvOS/PlayerCore-tvOS-umbrella.h"; sourceTree = ""; }; + 36449BB12FD7459EE745FF5C67A43148 /* PlayerViewController_Clickthrough.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerViewController_Clickthrough.swift; path = "sources/custom controls/PlayerViewController_Clickthrough.swift"; sourceTree = ""; }; + 367DAFF3F394C4E981EE0E158A38E566 /* VRMProcessingResult.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMProcessingResult.swift; path = "PlayerCore/components/New VRM Core/VRMProcessingResult.swift"; sourceTree = ""; }; + 3A314A3BBF3CCF2BEC62A9B444CBC9C1 /* PlayerSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerSession.swift; path = PlayerCore/components/PlayerSession.swift; sourceTree = ""; }; + 3A4CDC2EA513530920C6EA1CE9289BBE /* OpenMeasurement.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurement.swift; path = PlayerCore/OpenMeasurement.swift; sourceTree = ""; }; + 3A5E7D2920A3DFA410E85FB2721C11B7 /* libPlayerCore-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPlayerCore-tvOS.a"; path = "libPlayerCore-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 3B3EF7D052BEE09D17E3AD5E32A0D16B /* PlaybackReady.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackReady.swift; path = PlayerCore/actions/PlaybackReady.swift; sourceTree = ""; }; + 3D2E9C7F381CA32CB7DB86E13C66939E /* VPAIDErrors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDErrors.swift; path = PlayerCore/components/VPAIDErrors.swift; sourceTree = ""; }; + 3D378FEF89722949A528A121CAF5B977 /* SystemPlayerModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerModel.swift; path = VideoRenderer/VideoRenderer/SystemPlayerModel.swift; sourceTree = ""; }; + 3DAA41B3274DF46E1AFE15D42D9B2A5D /* Pods-Tutorial_tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Tutorial_tvOS-umbrella.h"; sourceTree = ""; }; + 3EE33908A9E097217B79C910158A0E8E /* HeartbeatDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HeartbeatDetector.swift; path = sources/metrics/detectors/heartbeat/HeartbeatDetector.swift; sourceTree = ""; }; + 411FC5668965585A84979C8ED23E023D /* Next.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Next.swift; path = "PlayerCore/action creators/Next.swift"; sourceTree = ""; }; + 416333376C9D774054B3EDDB85A160F6 /* Nop.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Nop.swift; path = "PlayerCore/action creators/Nop.swift"; sourceTree = ""; }; + 427589C49D3ACB758E1014AA94185D23 /* AdURLProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdURLProvider.swift; path = sources/advertisements/AdURLProvider.swift; sourceTree = ""; }; + 428E11D195B982CF6C0B6F47698DBA9F /* Pods-Tutorial_tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial_tvOS.release.xcconfig"; sourceTree = ""; }; + 42BAE093BE03F8B8CC13C11F0BFF1919 /* ProcessAdItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ProcessAdItem.swift; path = sources/advertisements/ProcessAdItem.swift; sourceTree = ""; }; + 4301473EAB3AE3570F0B3978BF0AB3DF /* AdKillAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdKillAction.swift; path = PlayerCore/actions/AdKillAction.swift; sourceTree = ""; }; + 430FE541D41B703063A27A90D14A0521 /* MidrollDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MidrollDetector.swift; path = sources/advertisements/MidrollDetector.swift; sourceTree = ""; }; + 4311D05253D6B22DE1EF6CFA02545A15 /* Color.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Color.swift; path = PlayerControls/sources/Color.swift; sourceTree = ""; }; + 43E20AC004F65581CEAB7385A17AE759 /* ContentPlaybackCycleDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentPlaybackCycleDetector.swift; path = "sources/metrics/detectors/playback cycle/ContentPlaybackCycleDetector.swift"; sourceTree = ""; }; + 44D4B4D227FF9576ABED24E37CD2D02C /* VerizonVideoPartnerSDK-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "VerizonVideoPartnerSDK-iOS-prefix.pch"; sourceTree = ""; }; + 44EADAC5304B3A226A8E272A4D3038E8 /* ProcessGroupsAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ProcessGroupsAction.swift; path = PlayerCore/actions/ProcessGroupsAction.swift; sourceTree = ""; }; + 45B1D6C4FAAAE1B422D83F35071916E1 /* VideoStreamViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoStreamViewController.swift; path = VideoRenderer/VideoRenderer/VideoStreamViewController.swift; sourceTree = ""; }; + 45C8975B3A0F0FC888091574CA480B2F /* ErrorDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ErrorDetector.swift; path = sources/metrics/detectors/error/ErrorDetector.swift; sourceTree = ""; }; + 4689AC7C0054304905979031B880A398 /* SystemPlayerReplayDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerReplayDetector.swift; path = "sources/default controls/SystemPlayerReplayDetector.swift"; sourceTree = ""; }; + 472AE8A1137536C36C7DF40C9C8C3A04 /* VRMCoreNamespace.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreNamespace.swift; path = "PlayerCore/player model/VRM/VRMCoreNamespace.swift"; sourceTree = ""; }; + 47B60C98F9B679E2EB1FC340E822F834 /* libVideoRenderer-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVideoRenderer-iOS.a"; path = "libVideoRenderer-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 47CEEEFD41EA14BEE3C015CE3A125E86 /* VASTParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VASTParser.swift; path = sources/advertisements/VASTParser.swift; sourceTree = ""; }; + 481CD5ED4BE0C17A8AAC450B33002442 /* VerizonVideoPartnerSDK-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "VerizonVideoPartnerSDK-tvOS.modulemap"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.modulemap"; sourceTree = ""; }; + 48500F19ADDB5D858A2CCFCD19942D6B /* MetricsSender.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MetricsSender.swift; path = sources/metrics/sender/MetricsSender.swift; sourceTree = ""; }; + 48A4A8C5A3C7D583FFCAEFE1E8F7315E /* VideoLoadingDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoLoadingDetector.swift; path = "sources/metrics/detectors/video loading/VideoLoadingDetector.swift"; sourceTree = ""; }; + 493F1EB01D28B76478B7ACD1E3B3D30A /* Playlist.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Playlist.swift; path = PlayerCore/components/Playlist.swift; sourceTree = ""; }; + 49E49264C3EE6D9BFA8E5415E806E4A3 /* SelectVideoAtIndexAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SelectVideoAtIndexAction.swift; path = PlayerCore/actions/SelectVideoAtIndexAction.swift; sourceTree = ""; }; + 4AB9DF35E0C35EF0253809903201A63B /* ExecuteOnce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ExecuteOnce.swift; path = sources/metrics/detectors/display/ExecuteOnce.swift; sourceTree = ""; }; + 4D4AB2046B9FCBE3489A48965734D155 /* Autogeneratable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Autogeneratable.swift; path = sources/utils/Autogeneratable.swift; sourceTree = ""; }; + 4D858D99FE39945840CB73334AB61FDE /* VideoRenderer-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "VideoRenderer-iOS-dummy.m"; sourceTree = ""; }; + 4E5DC228BF87087E5913738B5B594E8A /* VPAIDEvents.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDEvents.swift; path = "sources/metrics/detectors/vpaid event/VPAIDEvents.swift"; sourceTree = ""; }; + 4EC6531781089A8EF98F99BAF11C1FF4 /* Memoise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Memoise.swift; path = sources/utils/Memoise.swift; sourceTree = ""; }; + 4ECB04A6AC31C73E881B615C0BF3744F /* VRMCoreResultSelection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreResultSelection.swift; path = PlayerCore/VRMCoreResultSelection.swift; sourceTree = ""; }; + 506DF7858B5FD5FA426CC341F20A998F /* Player.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Player.swift; path = sources/player/Player.swift; sourceTree = ""; }; + 51A0B7A264E2DE2B48D33025A632B7EE /* TimerAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimerAction.swift; path = PlayerCore/actions/TimerAction.swift; sourceTree = ""; }; + 53014B83B47DFC39471AA6860B220C00 /* UpdatePlaybackBuffering.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdatePlaybackBuffering.swift; path = PlayerCore/UpdatePlaybackBuffering.swift; sourceTree = ""; }; + 539D4BF5DDA135A144A33F1B3491BF6C /* VRMCoreAdProcess.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdProcess.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreAdProcess.swift"; sourceTree = ""; }; + 544EF9941E6FF56B467B8D851A1DAC51 /* MediaCharacteristicRenderer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MediaCharacteristicRenderer.swift; path = VideoRenderer/VideoRenderer/MediaCharacteristicRenderer.swift; sourceTree = ""; }; + 54C9EF2713DF7FA01C9F94DF325BBBD6 /* VRMCoreResultSelectionActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreResultSelectionActionCreator.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreResultSelectionActionCreator.swift"; sourceTree = ""; }; + 5525DDE0659D3ABE5D10729E6C07DDAE /* PlayerControls-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PlayerControls-umbrella.h"; sourceTree = ""; }; + 55B42E543A247656831F8E0B4230FE66 /* UpdateLoadedTimeRangesAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateLoadedTimeRangesAction.swift; path = PlayerCore/actions/UpdateLoadedTimeRangesAction.swift; sourceTree = ""; }; + 561A9475F0DB349710A588E9F4C79A49 /* VRMRequest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRequest.swift; path = sources/advertisements/VRM/VRMRequest.swift; sourceTree = ""; }; + 5709CE06F5B549609FE8462430243D29 /* PictureInPictureToggle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureToggle.swift; path = "PlayerCore/action creators/PictureInPictureToggle.swift"; sourceTree = ""; }; + 5713B360EC4A1F4B5357519A6E5ED3D7 /* ContentControlsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentControlsViewController.swift; path = PlayerControls/sources/ContentControlsViewController.swift; sourceTree = ""; }; + 5760BEB7F46BBDDD79CF7A91CB81D670 /* DefaultControlsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultControlsViewController.swift; path = PlayerControls/sources/DefaultControlsViewController.swift; sourceTree = ""; }; + 581CBD6D2BF13A8DB084832CD1950B9A /* SeekGestureRecognizer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekGestureRecognizer.swift; path = PlayerControls/sources/SeekGestureRecognizer.swift; sourceTree = ""; }; + 5937FAA24A6D86837725BD75C7BE21E0 /* VideoRenderer-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "VideoRenderer-tvOS-dummy.m"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS-dummy.m"; sourceTree = ""; }; + 594203ACF72DC1903C44419A7A2AAD2F /* OMScriptServiceAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OMScriptServiceAction.swift; path = PlayerCore/OMScriptServiceAction.swift; sourceTree = ""; }; + 59CB6FAA9AF56573C3833FB22DE7EE0C /* OpenMeasurementContext.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementContext.swift; path = "sources/metrics/open measurement/OpenMeasurementContext.swift"; sourceTree = ""; }; + 59F8A65588EBEC892C54F8FCB9F7C586 /* AdMetrics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdMetrics.swift; path = sources/advertisements/AdMetrics.swift; sourceTree = ""; }; + 5ADBA0CA3804B8A28C80080F7367D059 /* AdVRMManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVRMManager.swift; path = PlayerCore/components/AdVRMManager.swift; sourceTree = ""; }; + 5C06F11396D553D7D1AA62B99DE5FDA6 /* libPods-Tutorial_tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Tutorial_tvOS.a"; path = "libPods-Tutorial_tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 5C1183763D19B7CC749D911B1BCC366F /* VideoImpression.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoImpression.swift; path = "sources/metrics/detectors/video impression/VideoImpression.swift"; sourceTree = ""; }; + 5C12591FF1FBA7D741C75E7433A08B69 /* AdSkipDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdSkipDetector.swift; path = "sources/metrics/detectors/ad skip/AdSkipDetector.swift"; sourceTree = ""; }; + 5CDEAA8CEA39CF549E71BF33508A7324 /* VRMItemActions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMItemActions.swift; path = PlayerCore/actions/VRMItemActions.swift; sourceTree = ""; }; + 5D83D8E9D84454271D7A2D01F7D8E6BB /* Command.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Command.swift; path = PlayerControls/sources/Command.swift; sourceTree = ""; }; + 5DFC27D9425A7D8F28D4908E4B88021E /* TimerSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimerSession.swift; path = PlayerCore/components/TimerSession.swift; sourceTree = ""; }; + 5ED28EFD6C6A7790314310DB02731E78 /* ShowAdAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShowAdAction.swift; path = PlayerCore/actions/ShowAdAction.swift; sourceTree = ""; }; + 5ED9B48BF3B00001E299FC5757CAAE6E /* AirPlayActiveView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AirPlayActiveView.swift; path = PlayerControls/sources/AirPlayActiveView.swift; sourceTree = ""; }; + 5FCFF5A4F79D69730C17CEB96F0E090E /* PictureInPictureUpdateAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureUpdateAction.swift; path = PlayerCore/actions/PictureInPictureUpdateAction.swift; sourceTree = ""; }; + 5FF5DEFCC2A4D984F086303606593BDA /* UpdateMediaOptionsAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateMediaOptionsAction.swift; path = PlayerCore/actions/UpdateMediaOptionsAction.swift; sourceTree = ""; }; + 60009E9262872E5EF84393A7A6765FD7 /* ControlsVisibilityController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ControlsVisibilityController.swift; path = PlayerControls/sources/ControlsVisibilityController.swift; sourceTree = ""; }; + 60E61FCA747500B26F6E909D8E8C5143 /* Viewport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Viewport.swift; path = PlayerCore/components/Viewport.swift; sourceTree = ""; }; + 61AF9BD5A37819EF4B90A0F967822049 /* Progress.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Progress.swift; path = "PlayerCore/phantom types/Progress.swift"; sourceTree = ""; }; + 62197EA5B64BF7334F805F9E838C098D /* AdInfoHolder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdInfoHolder.swift; path = PlayerCore/components/AdInfoHolder.swift; sourceTree = ""; }; + 639DBFF53B7BFB869AF06C09FDACC6FC /* AdClickDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickDetector.swift; path = "sources/metrics/detectors/ad click/AdClickDetector.swift"; sourceTree = ""; }; + 643BC1398CB4F4F11465F6B9D298A187 /* Replay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Replay.swift; path = "PlayerCore/action creators/Replay.swift"; sourceTree = ""; }; + 652A3033B2C9E0D6EC8A18D24CC49930 /* VideoProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoProvider.swift; path = "sources/video provider/provider/VideoProvider.swift"; sourceTree = ""; }; + 6635C0DFD349C624B963179F82356682 /* OMSDK-Oath2.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "OMSDK-Oath2.xcconfig"; sourceTree = ""; }; + 677340E664314FA33C5A2949DB5D5746 /* VRMSelectFinalResultController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMSelectFinalResultController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMSelectFinalResultController.swift"; sourceTree = ""; }; + 680F847DBB3093378AEEB56B1AC90165 /* VVPSDKPlugins.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVPSDKPlugins.swift; path = sources/VVPSDKPlugins.swift; sourceTree = ""; }; + 6A02B32D8AE15487262DDF5A345FD3F5 /* UpdatePlaybackStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdatePlaybackStatus.swift; path = "PlayerCore/action creators/UpdatePlaybackStatus.swift"; sourceTree = ""; }; + 6A1E360E33BAC9D776A2608A53BE261A /* AdErrorDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdErrorDetector.swift; path = "sources/metrics/detectors/ad error/AdErrorDetector.swift"; sourceTree = ""; }; + 6AA5AC218163904092E98370D7E692D7 /* DecileDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DecileDetector.swift; path = sources/metrics/detectors/decile/DecileDetector.swift; sourceTree = ""; }; + 6AEF06810C45EE3B931C19E5AEA6308F /* AverageBitrate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AverageBitrate.swift; path = PlayerCore/components/AverageBitrate.swift; sourceTree = ""; }; + 6CB305DE80426085C7691D487F0E0A3F /* MaxShowTimeActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaxShowTimeActionCreator.swift; path = "PlayerCore/action creators/MaxShowTimeActionCreator.swift"; sourceTree = ""; }; + 6D406DFA536D717B46FD529FBA0BF8E0 /* UserActionsDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UserActionsDetector.swift; path = "sources/metrics/detectors/user actions/UserActionsDetector.swift"; sourceTree = ""; }; + 6DAEC7776C55862876E750FEACA51168 /* TrackingPixelsGenerator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TrackingPixelsGenerator.swift; path = "sources/metrics/tracking pixels/TrackingPixelsGenerator.swift"; sourceTree = ""; }; + 6E897C289563C8D67431C0832803FF67 /* VRMFetchItemQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMFetchItemQueue.swift; path = "PlayerCore/components/New VRM Core/VRMFetchItemQueue.swift"; sourceTree = ""; }; + 6F2EB17A21177241791F90E41A92A695 /* libVideoRenderer-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVideoRenderer-tvOS.a"; path = "libVideoRenderer-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 6F44F4E161A8489EE354612B7C17A056 /* VRMParsingError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMParsingError.swift; path = "PlayerCore/components/New VRM Core/VRMParsingError.swift"; sourceTree = ""; }; + 6FA46C937BC9EC1120B323D397C3306F /* UpdateLoadedTimeRanges.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateLoadedTimeRanges.swift; path = "PlayerCore/action creators/UpdateLoadedTimeRanges.swift"; sourceTree = ""; }; + 7065C6F011B75B341722CDE919FC3FDD /* Network.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Network.swift; path = sources/network/Network.swift; sourceTree = ""; }; + 714AED141F35A308423F5820CC5756C6 /* DropAdAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DropAdAction.swift; path = PlayerCore/actions/DropAdAction.swift; sourceTree = ""; }; + 71BC77D346B110E01B8B6E87DC95B977 /* PlaybackModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackModel.swift; path = "PlayerCore/player model/PlaybackModel.swift"; sourceTree = ""; }; + 726549240549AA20EDFF7E613C30C722 /* UpdateDuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateDuration.swift; path = "PlayerCore/action creators/UpdateDuration.swift"; sourceTree = ""; }; + 73CE698D25BD83DC56819D10851CC914 /* PlayerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerViewController.swift; path = "sources/custom controls/PlayerViewController.swift"; sourceTree = ""; }; + 7455A26172FA5AC9BBC4B6D9749FA612 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = sources/config/Configuration.swift; sourceTree = ""; }; + 74CBB90085492AD5C7AA4839CC8046CA /* Pods-Tutorial_tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Tutorial_tvOS.modulemap"; sourceTree = ""; }; + 75D46A82A2541597AC2FF03DAFFE9173 /* VPAIDAdCreativeController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDAdCreativeController.swift; path = "sources/advertisements/creative controllers/VPAIDAdCreativeController.swift"; sourceTree = ""; }; + 76C987F09CA0D8802B7A1311D9004DF3 /* LoadingImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoadingImageView.swift; path = "PlayerControls/sources/loading image/LoadingImageView.swift"; sourceTree = ""; }; + 76F034D17EA7D7784B6AF9684E8F839C /* Dispatcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dispatcher.swift; path = PlayerCore/Dispatcher.swift; sourceTree = ""; }; + 7754FEDA277F514B38C43CA983A9026F /* VRMResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMResponse.swift; path = "PlayerCore/components/New VRM Core/VRMResponse.swift"; sourceTree = ""; }; + 7780B8EA9AE4AFF085FF9E0D0592F6F8 /* Pods-Tutorial_tvOS-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Tutorial_tvOS-acknowledgements.plist"; sourceTree = ""; }; + 77D0255014DDAFAA7DF51193CA40C588 /* UpdateCameraAnglesAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCameraAnglesAction.swift; path = PlayerCore/actions/UpdateCameraAnglesAction.swift; sourceTree = ""; }; + 77F51F491D76AB35364D89E74ED2DAD1 /* AdClickthroughActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdClickthroughActionCreator.swift; path = "PlayerCore/action creators/AdClickthroughActionCreator.swift"; sourceTree = ""; }; + 791C8844A01363CDB2AD23A947C4C0EF /* libVerizonVideoPartnerSDK-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libVerizonVideoPartnerSDK-tvOS.a"; path = "libVerizonVideoPartnerSDK-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 796DF63865035761781E66AD55C79DE6 /* libPlayerCore-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPlayerCore-iOS.a"; path = "libPlayerCore-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 7A19F0B455D82DAA236C847B05C55F18 /* PlayerControls.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; name = PlayerControls.bundle; path = "PlayerControls-PlayerControls.bundle"; sourceTree = BUILT_PRODUCTS_DIR; }; + 7A4A46D792C8CCCDB9A798319C23FFA2 /* StartVRMGroupProcessingController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartVRMGroupProcessingController.swift; path = "sources/advertisements/VRM New Core/Controllers/StartVRMGroupProcessingController.swift"; sourceTree = ""; }; + 7BB11C1A92D6607C244AE946D7D57987 /* Dictionary+ParseJSON.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Dictionary+ParseJSON.swift"; path = "sources/video provider/dictionary parser/Dictionary+ParseJSON.swift"; sourceTree = ""; }; + 7D9B6C9BB8A9A2A01C79E116C9875866 /* libPods-Tutorial.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-Tutorial.a"; path = "libPods-Tutorial.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 7D9F455C653DF8363BB7DA63C0EA969A /* VRMCoreAdResponseAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdResponseAction.swift; path = "PlayerCore/actions/New VRM Core/VRMCoreAdResponseAction.swift"; sourceTree = ""; }; + 7DFA52D4EFBFC5456BF448D03DB27EBF /* PropsMapping.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PropsMapping.swift; path = "sources/dynamic analytics/PropsMapping.swift"; sourceTree = ""; }; + 7F0A47CBE7E7F298CA7A1FE4B3949D98 /* VRMParsingResult.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMParsingResult.swift; path = "PlayerCore/components/New VRM Core/VRMParsingResult.swift"; sourceTree = ""; }; + 7FCE2F76F140961737078289D1609531 /* Action.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Action.swift; path = VideoRenderer/VideoRenderer/Action.swift; sourceTree = ""; }; + 805643DD11BA75587522F957A546F953 /* AdEngineResponseDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdEngineResponseDetector.swift; path = sources/metrics/detectors/vrm/AdEngineResponseDetector.swift; sourceTree = ""; }; + 80B6590E6EFB86E1CB778B74B18701C9 /* PlayAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayAction.swift; path = PlayerCore/actions/PlayAction.swift; sourceTree = ""; }; + 8143811FD96617CE2039C18C6580078A /* FetchVRMItemController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FetchVRMItemController.swift; path = "sources/advertisements/VRM New Core/Controllers/FetchVRMItemController.swift"; sourceTree = ""; }; + 824338BCBF79EE3D7671CF14DCDE8A53 /* VRMTopPriorityItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMTopPriorityItem.swift; path = "PlayerCore/components/New VRM Core/VRMTopPriorityItem.swift"; sourceTree = ""; }; + 82A5148365180E280B3D9BB173DB7A0E /* AdRequestAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdRequestAction.swift; path = PlayerCore/actions/AdRequestAction.swift; sourceTree = ""; }; + 82B7E18AFA9FC1603F5301F68D1B8DA0 /* BundleHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BundleHelper.swift; path = PlayerControls/sources/BundleHelper.swift; sourceTree = ""; }; + 8336F8499CB16D44455B9D10BDAB06E5 /* MP4AdCreativeController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MP4AdCreativeController.swift; path = "sources/advertisements/creative controllers/MP4AdCreativeController.swift"; sourceTree = ""; }; + 835CBCD89A796EF1E50161C6DFBA737D /* UserActions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UserActions.swift; path = PlayerCore/components/UserActions.swift; sourceTree = ""; }; + 835DCBC54061C74AFC9BC984DD6F8473 /* VRMProcessingTimeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMProcessingTimeout.swift; path = "PlayerCore/components/New VRM Core/VRMProcessingTimeout.swift"; sourceTree = ""; }; + 83B3ACF5209EC5C571EE73809085806C /* PlayerControls-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PlayerControls-dummy.m"; sourceTree = ""; }; + 8571682A4838548A24654C7208B83D54 /* SystemPlayerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerViewController.swift; path = "sources/default controls/SystemPlayerViewController.swift"; sourceTree = ""; }; + 858B163FB4203D92E6B74942B07CB1D5 /* State.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = State.swift; path = PlayerCore/components/State.swift; sourceTree = ""; }; + 85B543E5BB9CF463A54C35BC0CCE290F /* MediaOptions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MediaOptions.swift; path = PlayerCore/components/MediaOptions.swift; sourceTree = ""; }; + 85C2563E1594BB1A79E1D5BC0F785EF7 /* VRMCoreGroupActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreGroupActionCreator.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreGroupActionCreator.swift"; sourceTree = ""; }; + 87165F5C75D244EB55EE4E8D855982F7 /* CompletePlaybackSessionAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlaybackSessionAction.swift; path = PlayerCore/actions/CompletePlaybackSessionAction.swift; sourceTree = ""; }; + 8741F2E90332E8747958B21645DBCF03 /* VRMProcessingController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMProcessingController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMProcessingController.swift"; sourceTree = ""; }; + 8823496B4EB40057F7682B2C034CDF6B /* Telemetry.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Telemetry.swift; path = sources/telemetry/Telemetry.swift; sourceTree = ""; }; + 8B032B2A8F22CB7A0CAAA2D3DF0D849E /* VRMResponseModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMResponseModel.swift; path = "PlayerCore/player model/VRM/VRMResponseModel.swift"; sourceTree = ""; }; + 8B5646CA166C043A646A28B52C313296 /* PictureInPictureControllerObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictureInPictureControllerObserver.swift; path = VideoRenderer/VideoRenderer/PictureInPictureControllerObserver.swift; sourceTree = ""; }; + 8B7DE15A456FE044A1CD72FF70B37762 /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = PlayerControls/sources/Timer.swift; sourceTree = ""; }; + 8BB06B45928AE54BC4AB0D60A9441E11 /* Pods-Tutorial.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial.debug.xcconfig"; sourceTree = ""; }; + 8C512E9F41D0253D10C8267F4E1F0AAB /* VideoRenderer-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "VideoRenderer-iOS.xcconfig"; sourceTree = ""; }; + 8CBAFE903F1CB1122596467C3069BAFC /* EnumPrism_PlayerControls.generated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EnumPrism_PlayerControls.generated.swift; path = PlayerControls/sources/EnumPrism_PlayerControls.generated.swift; sourceTree = ""; }; + 8D0CF6B2232E18B3C96E4C86193F2189 /* Metrics.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Metrics.swift; path = sources/telemetry/Metrics.swift; sourceTree = ""; }; + 8DBD9AD6689B7C9FBD0FE077A2B42D42 /* AdStartTimeoutActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdStartTimeoutActionCreator.swift; path = "PlayerCore/action creators/AdStartTimeoutActionCreator.swift"; sourceTree = ""; }; + 8E0DBAE83144AFE0ED40E8DC7C949D8E /* UpdateRateAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateRateAction.swift; path = PlayerCore/actions/UpdateRateAction.swift; sourceTree = ""; }; + 8E61491A266B23563687661C22FC1963 /* CompletePlayerSessionAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlayerSessionAction.swift; path = PlayerCore/actions/CompletePlayerSessionAction.swift; sourceTree = ""; }; + 8EA34E4B327D15CADDE622453E68098E /* libPlayerControls.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = libPlayerControls.a; path = libPlayerControls.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 8FAB0DEBAF9ADBCE8199A6FCCFFAD285 /* 3secPlaybackDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = 3secPlaybackDetector.swift; path = "sources/metrics/detectors/3sec playback/3secPlaybackDetector.swift"; sourceTree = ""; }; + 9016865398F659D6CF2136722F14B058 /* ResourceBundle-PlayerControls-PlayerControls-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "ResourceBundle-PlayerControls-PlayerControls-Info.plist"; sourceTree = ""; }; + 91D95986C627EE7612B3198DE338A18A /* Camera.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Camera.swift; path = VideoRenderer/VideoRenderer/Camera.swift; sourceTree = ""; }; + 9375C8A6EEEF93548251864F810A413A /* AdFinishTracker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdFinishTracker.swift; path = PlayerCore/components/AdFinishTracker.swift; sourceTree = ""; }; + 938EF0021D9EB8602D878B43E90701AF /* AdCreative.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdCreative.swift; path = PlayerCore/components/AdCreative.swift; sourceTree = ""; }; + 949CEA9182DF8B907F7B5D9162EB79E3 /* ParseVRMItemController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParseVRMItemController.swift; path = "sources/advertisements/VRM New Core/Controllers/ParseVRMItemController.swift"; sourceTree = ""; }; + 99E8B7B5FCCA28CC4CA559806CD8A687 /* MuteDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MuteDetector.swift; path = sources/metrics/detectors/mute/MuteDetector.swift; sourceTree = ""; }; + 9A07428ABBDDD8905B46E749BB74574F /* Store.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Store.swift; path = sources/player/Store.swift; sourceTree = ""; }; + 9AA4B3130440CB6D3C100086510EB980 /* AdPlaybackCycleDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdPlaybackCycleDetector.swift; path = "sources/metrics/detectors/playback cycle/AdPlaybackCycleDetector.swift"; sourceTree = ""; }; + 9B6F46A934F2DA5EEC8E1F96965AEBAC /* Seek.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Seek.swift; path = "PlayerCore/action creators/Seek.swift"; sourceTree = ""; }; + 9B99EB97E6ABA6A3D47C30B688CD2297 /* UpdateExternalPlaybackStatusAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlaybackStatusAction.swift; path = PlayerCore/actions/UpdateExternalPlaybackStatusAction.swift; sourceTree = ""; }; + 9BBD6341619BC902CC7C4B475B68E1D9 /* SeekerController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekerController.swift; path = VideoRenderer/VideoRenderer/SeekerController.swift; sourceTree = ""; }; + 9BE822C569EAF9184A96F18225EA6DEF /* VideoSelector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoSelector.swift; path = sources/player/VideoSelector.swift; sourceTree = ""; }; + 9BED9CA577C475F4720BE8DCBAD30127 /* CompletePlayerSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlayerSession.swift; path = "PlayerCore/action creators/CompletePlayerSession.swift"; sourceTree = ""; }; + 9CF76D0086E98DB22D803526733F1CC4 /* VRMDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMDetector.swift; path = sources/metrics/detectors/vrm/VRMDetector.swift; sourceTree = ""; }; + 9CF82A4A446951B30E5AC50656688170 /* FullScreenToggleAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FullScreenToggleAction.swift; path = PlayerCore/actions/FullScreenToggleAction.swift; sourceTree = ""; }; + 9CFD8D23E9B278A4ACBBBBF4F1AD540C /* AdKill.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdKill.swift; path = PlayerCore/components/AdKill.swift; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9DED38BB3012DCBFF58337192619C7A9 /* UpdateExternalPlayback.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlayback.swift; path = "PlayerCore/action creators/UpdateExternalPlayback.swift"; sourceTree = ""; }; + 9E27451E4F7AFF1B3CADB6BC353EE831 /* VRMCoreAdRequestAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdRequestAction.swift; path = "PlayerCore/actions/New VRM Core/VRMCoreAdRequestAction.swift"; sourceTree = ""; }; + 9EAC1E66E56BBEEE6A3BA8C6E5301803 /* PlayerCore-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "PlayerCore-tvOS-prefix.pch"; path = "../PlayerCore-tvOS/PlayerCore-tvOS-prefix.pch"; sourceTree = ""; }; + 9EB0F9514492C1A8387E81CB0F274202 /* AdVideoControls.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVideoControls.swift; path = PlayerControls/sources/AdVideoControls.swift; sourceTree = ""; }; + 9EDC97E7EA719B903BCBA324B7BF53BA /* PlayerControls.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PlayerControls.modulemap; sourceTree = ""; }; + A0442A9817D6CAB03E131FD82EB1F5F9 /* Duration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Duration.swift; path = PlayerCore/components/Duration.swift; sourceTree = ""; }; + A070C289EE321386B0EDB6EE640E57DB /* SideBarView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SideBarView.swift; path = PlayerControls/sources/SideBarView.swift; sourceTree = ""; }; + A24ACA732C3DFE1D74D0659EA497FAD0 /* OnMainThread.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OnMainThread.swift; path = sources/utils/OnMainThread.swift; sourceTree = ""; }; + A2ACF31A5FA0502DC622B8B546D90A0E /* UpdateCurrentTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCurrentTime.swift; path = "PlayerCore/action creators/UpdateCurrentTime.swift"; sourceTree = ""; }; + A2BD7A15AD8CAA610F5E035740B09214 /* Pods-Tutorial.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Tutorial.modulemap"; sourceTree = ""; }; + A3B76CDEF86878DB87E16B0E1014779F /* Pods-Tutorial-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Tutorial-umbrella.h"; sourceTree = ""; }; + A45D3A187E2D59F4C7EAA7E7147AE95B /* UpdateVPAIDAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateVPAIDAction.swift; path = PlayerCore/actions/UpdateVPAIDAction.swift; sourceTree = ""; }; + A46F5E549E5785B06031F771E4D35B49 /* PlayerCore-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "PlayerCore-iOS.modulemap"; sourceTree = ""; }; + A4BD22CAA4F6A906B2098551B9F7834C /* SkipAd.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipAd.swift; path = PlayerCore/SkipAd.swift; sourceTree = ""; }; + A61F8352732DD31CCB759EF347C1870F /* Rethrow.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rethrow.swift; path = sources/utils/Rethrow.swift; sourceTree = ""; }; + A6D01C33BE1B1C3B72DD1820648DF703 /* Pods-Tutorial-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Tutorial-resources.sh"; sourceTree = ""; }; + A77024FDE646B0362FE0EBE24748A62D /* UpdateDurationAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateDurationAction.swift; path = PlayerCore/actions/UpdateDurationAction.swift; sourceTree = ""; }; + A828D10861EA9A9D0D961C943B378027 /* Pods-Tutorial-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Tutorial-acknowledgements.markdown"; sourceTree = ""; }; + A893B6EFF46FFB985B44D5DBAB32EEBC /* VRMItemResponseTime.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMItemResponseTime.swift; path = "PlayerCore/components/New VRM Core/VRMItemResponseTime.swift"; sourceTree = ""; }; + AA4D79DE44B9B97BE67427A91A2350DD /* SphereView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SphereView.swift; path = VideoRenderer/VideoRenderer/SphereView.swift; sourceTree = ""; }; + AA8D78AA287EE9A4800AE58217292B4B /* IntentDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = IntentDetector.swift; path = sources/metrics/detectors/intent/IntentDetector.swift; sourceTree = ""; }; + ABBEB252F023A0B798A03A045FB0A646 /* Stub.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Stub.swift; path = sources/utils/Stub.swift; sourceTree = ""; }; + AC0D17059B4A3787999B845D18407B97 /* OpenMeasurementController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementController.swift; path = "sources/metrics/open measurement/OpenMeasurementController.swift"; sourceTree = ""; }; + AC4211B40C57E745758BC338334C7A90 /* OpenMeasurementActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementActionCreator.swift; path = PlayerCore/OpenMeasurementActionCreator.swift; sourceTree = ""; }; + AD45EA40C96A3CBD46D0C370A935E922 /* PictiureInPicture.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PictiureInPicture.swift; path = PlayerCore/components/PictiureInPicture.swift; sourceTree = ""; }; + AD7312650961A076EE151D98AAC0EF7C /* UpdateMediaOptions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateMediaOptions.swift; path = "PlayerCore/action creators/UpdateMediaOptions.swift"; sourceTree = ""; }; + AE3B7E151EFBF277DF015CA5542ADBA2 /* TimerActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TimerActionCreator.swift; path = "PlayerCore/action creators/TimerActionCreator.swift"; sourceTree = ""; }; + AF66E6E9DC0438FBEE9AF77DE14A21F4 /* Observer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observer.swift; path = sources/player/observer/Observer.swift; sourceTree = ""; }; + AF786315EE8C19934A3DB0B97F5545B5 /* NopAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopAction.swift; path = PlayerCore/actions/NopAction.swift; sourceTree = ""; }; + B00D830C53778B7A30263D266B9C6830 /* JavaScriptObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JavaScriptObserver.swift; path = "sources/dynamic analytics/JavaScriptObserver.swift"; sourceTree = ""; }; + B09C58AD26D0539E3C5165B59A309A57 /* VMRCoreProcessingResult.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VMRCoreProcessingResult.swift; path = "PlayerCore/player model/VRM/VMRCoreProcessingResult.swift"; sourceTree = ""; }; + B0DD6F578407D63E6E9E07E26B2C44D2 /* SettingsViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SettingsViewController.swift; path = PlayerControls/sources/SettingsViewController.swift; sourceTree = ""; }; + B1C9BB081E98FA80C43BADCE8B8C0C2B /* OMServiceScriptActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OMServiceScriptActionCreator.swift; path = PlayerCore/OMServiceScriptActionCreator.swift; sourceTree = ""; }; + B2178E5269A751FB7D86F4B2C7EB9D40 /* PlayerUIControls.xcassets */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder.assetcatalog; name = PlayerUIControls.xcassets; path = PlayerControls/resources/PlayerUIControls.xcassets; sourceTree = ""; }; + B224529236EB51260EAA18CB19996B73 /* SettingsViewController.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SettingsViewController.xib; path = PlayerControls/resources/SettingsViewController.xib; sourceTree = ""; }; + B2455CC47DC7111B35D5A43644731415 /* VRMProvider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMProvider.swift; path = sources/advertisements/VRMProvider.swift; sourceTree = ""; }; + B2C45AF85FE47A98D7D7E54E8BA0B16B /* AdEngineRequestDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdEngineRequestDetector.swift; path = sources/metrics/detectors/vrm/AdEngineRequestDetector.swift; sourceTree = ""; }; + B33514C0500719FF13768B4963F0745F /* AdVRMManager_Hashable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVRMManager_Hashable.swift; path = PlayerCore/components/AdVRMManager_Hashable.swift; sourceTree = ""; }; + B399500384F916842F86E15D0D826767 /* ActionProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ActionProtocol.swift; path = PlayerCore/actions/ActionProtocol.swift; sourceTree = ""; }; + B39D58A1A76A849199D1948EB821142F /* Context.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Context.swift; path = sources/config/Context.swift; sourceTree = ""; }; + B3FA318A2E3DF2CFA759BDB4E82CB533 /* DropAd.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DropAd.swift; path = "PlayerCore/action creators/DropAd.swift"; sourceTree = ""; }; + B46184B120B636FE04338E4C563B129C /* InteractiveSeeking.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InteractiveSeeking.swift; path = PlayerCore/components/InteractiveSeeking.swift; sourceTree = ""; }; + B478DAE3F84EA196FB1D9CF227287BD6 /* AdVRMEngine.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVRMEngine.swift; path = sources/advertisements/AdVRMEngine.swift; sourceTree = ""; }; + B4E59E6FD0B0C4BFBB7E0221E17C0CFA /* VideoTimeDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoTimeDetector.swift; path = "sources/metrics/detectors/video time/VideoTimeDetector.swift"; sourceTree = ""; }; + B532472E47ED45EF0E259AFAA1ABFFCA /* PlayerTracer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerTracer.swift; path = sources/player/tracer/PlayerTracer.swift; sourceTree = ""; }; + B6A7B067302D1217C91F1F39BF1768FE /* VASTModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VASTModel.swift; path = sources/advertisements/VASTModel.swift; sourceTree = ""; }; + B7C5CE70F344F924E600C2D8B2817AFB /* VASTParser_Offset.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VASTParser_Offset.swift; path = sources/advertisements/VASTParser_Offset.swift; sourceTree = ""; }; + B82D2E1F35C6422802B38AE57C957AB7 /* VerizonVideoPartnerSDK-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "VerizonVideoPartnerSDK-tvOS-dummy.m"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-dummy.m"; sourceTree = ""; }; + B97181249BBB2F99B5853756BB4E354E /* VRMMaxAdSearchTimeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMMaxAdSearchTimeout.swift; path = "PlayerCore/components/New VRM Core/VRMMaxAdSearchTimeout.swift"; sourceTree = ""; }; + B9855B4C13C7EE5DE8B3AC4515AEEFF0 /* ScheduledVRMItems.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledVRMItems.swift; path = "PlayerCore/components/New VRM Core/ScheduledVRMItems.swift"; sourceTree = ""; }; + B9D019C51554738DDD794F38EEB211F0 /* UpdateCurrentTimeAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateCurrentTimeAction.swift; path = PlayerCore/actions/UpdateCurrentTimeAction.swift; sourceTree = ""; }; + B9F76B6D7229DE79AD601286E64BAAB3 /* Prev.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Prev.swift; path = "PlayerCore/action creators/Prev.swift"; sourceTree = ""; }; + BA02DC9293B05E2596FA0CB59EF6B59D /* VideoRenderer-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "VideoRenderer-iOS-prefix.pch"; sourceTree = ""; }; + BA04477A9500F6D7A8E45616B0E569E1 /* MaxShowTimeController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MaxShowTimeController.swift; path = sources/advertisements/MaxShowTimeController.swift; sourceTree = ""; }; + BA3D76B27D547E798DA99CDA05B1B837 /* UserActionInitiated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UserActionInitiated.swift; path = sources/player/UserActionInitiated.swift; sourceTree = ""; }; + BBCCCB551F0ECA160E70AB64A12DEDA9 /* SeekToTimeAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SeekToTimeAction.swift; path = PlayerCore/actions/SeekToTimeAction.swift; sourceTree = ""; }; + BC66F2A8B5B6EDF34D63E051CB6D81E8 /* Provider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Provider.swift; path = sources/config/Provider.swift; sourceTree = ""; }; + BEA0BF08850706B54F76DCB759A7F4B7 /* VRMPrerollProcessorController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMPrerollProcessorController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMPrerollProcessorController.swift"; sourceTree = ""; }; + BF8745F1E559298C885D1FDDFC8E8C8D /* UpdateViewportDimensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateViewportDimensions.swift; path = "PlayerCore/action creators/UpdateViewportDimensions.swift"; sourceTree = ""; }; + C0D1A886DE0E01892C71BE92826F2CC0 /* VRMRequestStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRequestStatus.swift; path = "PlayerCore/components/New VRM Core/VRMRequestStatus.swift"; sourceTree = ""; }; + C1489AF6684DBF0166EFE3EB8A41E839 /* PlayAd.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayAd.swift; path = "PlayerCore/action creators/PlayAd.swift"; sourceTree = ""; }; + C22C8242C1F2ABAC787D8BAAFAC32CBB /* SettingHeaderView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SettingHeaderView.swift; path = PlayerControls/sources/SettingHeaderView.swift; sourceTree = ""; }; + C2D56E644CF63253D28DFC6335D3D402 /* VRMFetchingError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMFetchingError.swift; path = "PlayerCore/components/New VRM Core/VRMFetchingError.swift"; sourceTree = ""; }; + C34BF3BC09D1FC4EB79ECC13B7B492C6 /* ConfigurationParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConfigurationParser.swift; path = sources/config/ConfigurationParser.swift; sourceTree = ""; }; + C35AE9F4A0256C3DA4C307C163388081 /* Codable_PlayerControls.generated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Codable_PlayerControls.generated.swift; path = PlayerControls/sources/Codable_PlayerControls.generated.swift; sourceTree = ""; }; + C37C9FC0A3A078FA59D3B86FAD4F688E /* OpenMeasurementServiceScript.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementServiceScript.swift; path = "sources/metrics/open measurement/OpenMeasurementServiceScript.swift"; sourceTree = ""; }; + C38CF208EE1D98ADB05F98D536478A21 /* SystemPlayerObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SystemPlayerObserver.swift; path = VideoRenderer/VideoRenderer/SystemPlayerObserver.swift; sourceTree = ""; }; + C4172B9253EAEF78D1DB954B824AB87D /* UpdateRate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateRate.swift; path = "PlayerCore/action creators/UpdateRate.swift"; sourceTree = ""; }; + C617DF87E031CF468400B9E93FC1BF08 /* OpenMeasurementAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenMeasurementAction.swift; path = PlayerCore/OpenMeasurementAction.swift; sourceTree = ""; }; + C63818EE6B6EE8F45CD2F6F1CD38C7F5 /* SphereVideoStreamViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SphereVideoStreamViewController.swift; path = VideoRenderer/VideoRenderer/SphereVideoStreamViewController.swift; sourceTree = ""; }; + C68916F4ED4CDB54CE85B90A71CDC3E5 /* VRMCurrentGroup.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCurrentGroup.swift; path = "PlayerCore/components/New VRM Core/VRMCurrentGroup.swift"; sourceTree = ""; }; + C6951F7BE7D5D5AD3DC55B3809326086 /* Rate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rate.swift; path = PlayerCore/components/Rate.swift; sourceTree = ""; }; + C7C0C247770502E9BF9C7B69DDC4DAE6 /* VideoActionsDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoActionsDetector.swift; path = "sources/metrics/detectors/video actions detector/VideoActionsDetector.swift"; sourceTree = ""; }; + C8989EF50C3E962BA75326F12C59D799 /* JavaScriptTelemetry.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JavaScriptTelemetry.swift; path = "sources/dynamic analytics/JavaScriptTelemetry.swift"; sourceTree = ""; }; + C986FAECDCB0230F974CB8F5F2F47CED /* VRMCoreAdResponseActionCreator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreAdResponseActionCreator.swift; path = "PlayerCore/action creators/New VRM Core/VRMCoreAdResponseActionCreator.swift"; sourceTree = ""; }; + CBB763041742564CB65860AED3926299 /* AirPlayActiveView.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = AirPlayActiveView.xib; path = PlayerControls/resources/AirPlayActiveView.xib; sourceTree = ""; }; + CC1A62597C9C983B207E4C5678EF7454 /* AdVASTModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AdVASTModel.swift; path = PlayerCore/components/AdVASTModel.swift; sourceTree = ""; }; + CDC7331BA5E15E312E118D0428E477DE /* QuartileDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = QuartileDetector.swift; path = sources/metrics/detectors/quartile/QuartileDetector.swift; sourceTree = ""; }; + D11779009B807C7D99D278F03AFA1D81 /* VRMTimeoutError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMTimeoutError.swift; path = "PlayerCore/components/New VRM Core/VRMTimeoutError.swift"; sourceTree = ""; }; + D1551CED86005DE931CEB79035141A54 /* UpdateExternalPlaybackAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateExternalPlaybackAction.swift; path = PlayerCore/actions/UpdateExternalPlaybackAction.swift; sourceTree = ""; }; + D1C51EBCB50E78FF34FAC17DD0E684F2 /* Utils.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Utils.swift; path = PlayerControls/sources/Utils.swift; sourceTree = ""; }; + D2F6D1FB83309A23757064B6B25F52F0 /* VideoProviderResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoProviderResponse.swift; path = "sources/video provider/VideoProviderResponse.swift"; sourceTree = ""; }; + D36E5A62ABBF63E5FCA84A90A9902247 /* VideoRenderer-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "VideoRenderer-iOS-umbrella.h"; sourceTree = ""; }; + D44B7EE4B1EAA453712013C800D719F0 /* AnimationDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimationDelegate.swift; path = PlayerControls/sources/AnimationDelegate.swift; sourceTree = ""; }; + D459F7458A3B12465FC33034E3184000 /* PlayerCore-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PlayerCore-iOS-prefix.pch"; sourceTree = ""; }; + D4FF8794DA1BCA344E18875AF13D6229 /* VVPSDK_Version.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVPSDK_Version.swift; path = sources/VVPSDK_Version.swift; sourceTree = ""; }; + D5F315E5F3548741107931C1A14E1D7E /* VVPSDK.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VVPSDK.swift; path = sources/VVPSDK.swift; sourceTree = ""; }; + D60C3D1AE672A087104F01FF72B03696 /* BufferingDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BufferingDetector.swift; path = sources/metrics/detectors/buffering/BufferingDetector.swift; sourceTree = ""; }; + D9510DD84940922624A9D77C93A18633 /* VerizonVideoPartnerSDK-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "VerizonVideoPartnerSDK-tvOS.xcconfig"; path = "../VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.xcconfig"; sourceTree = ""; }; + D991A1FDDC54C6EE2596B40B7A706E1C /* VPAIDMessageHandler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDMessageHandler.swift; path = sources/vpaid/VPAIDMessageHandler.swift; sourceTree = ""; }; + DB9471519FE70B1521B2D44C54502B2B /* StallingRecords.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StallingRecords.swift; path = PlayerCore/components/StallingRecords.swift; sourceTree = ""; }; + DBA36A1682403007F3A50D1BC0596CBE /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = sources/utils/Timer.swift; sourceTree = ""; }; + DBE5D285419EC85B2E22D7D00497AE95 /* MutePlayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MutePlayer.swift; path = "PlayerCore/action creators/MutePlayer.swift"; sourceTree = ""; }; + DBF90D1E6E5F620B0E65C8A007E9B64E /* CompletePlaybackSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompletePlaybackSession.swift; path = "PlayerCore/action creators/CompletePlaybackSession.swift"; sourceTree = ""; }; + DC697AAAACE190F2FB66CFED1CAEBBEF /* PlayerProperties_Init.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerProperties_Init.swift; path = sources/player/PlayerProperties_Init.swift; sourceTree = ""; }; + DCD7E16ED4840943F5ED1B88FE91DEA1 /* ApplyDecorator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ApplyDecorator.swift; path = sources/utils/ApplyDecorator.swift; sourceTree = ""; }; + DD3703C4CCA1948595C33E144DEBC84A /* Pods-Tutorial.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tutorial.release.xcconfig"; sourceTree = ""; }; + DD3E7D8C856E5C55094E5B3BE907C393 /* ContextStartedDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContextStartedDetector.swift; path = "sources/metrics/detectors/context started/ContextStartedDetector.swift"; sourceTree = ""; }; + DE234D6B1EFFFEC9D19AD9EA1E0EC594 /* PlayerCore-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "PlayerCore-tvOS-dummy.m"; path = "../PlayerCore-tvOS/PlayerCore-tvOS-dummy.m"; sourceTree = ""; }; + DE36F8982BE133B26ADD5C80F5E56699 /* VRMRedirectError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMRedirectError.swift; path = "PlayerCore/components/New VRM Core/VRMRedirectError.swift"; sourceTree = ""; }; + DE9FC3E4681729774879CAF45D2CDD5F /* Props+Autogeneratable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Props+Autogeneratable.swift"; path = "PlayerControls/sources/Props+Autogeneratable.swift"; sourceTree = ""; }; + DEB912DDE048D6BD02212F5F4C96333D /* PlaybackStatus.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackStatus.swift; path = PlayerCore/components/PlaybackStatus.swift; sourceTree = ""; }; + E155AA96480BC79AE0AC099C465DE9B3 /* PlayerCore-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "PlayerCore-tvOS.xcconfig"; path = "../PlayerCore-tvOS/PlayerCore-tvOS.xcconfig"; sourceTree = ""; }; + E2278ABA7DCB21F477D19ECF8CA0F605 /* Pause.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Pause.swift; path = "PlayerCore/action creators/Pause.swift"; sourceTree = ""; }; + E22ED38996DA85CF35684C7FC4DAD2AB /* Thumbnails.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Thumbnails.swift; path = "PlayerCore/player model/thumbnail/Thumbnails.swift"; sourceTree = ""; }; + E27AE12A4BEB6ECF0561472F3BCC87FB /* OpenSafariUtil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OpenSafariUtil.swift; path = "sources/custom controls/OpenSafariUtil.swift"; sourceTree = ""; }; + E2E9478652995245D2EC22153ED88794 /* VerizonVideoPartnerSDK-iOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "VerizonVideoPartnerSDK-iOS-umbrella.h"; sourceTree = ""; }; + E34C176E5DE9B672E5815EC6872C9AC0 /* OMSDK_Oath2.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = OMSDK_Oath2.framework; sourceTree = ""; }; + E5D83140F5B04D7A6D7364CE06AD080C /* VerizonVideoPartnerSDK-iOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "VerizonVideoPartnerSDK-iOS.modulemap"; sourceTree = ""; }; + E67AEE76C5D7EEA3916AC1206500E4FE /* SlotOpportunityDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SlotOpportunityDetector.swift; path = "sources/metrics/detectors/slot opportunity/SlotOpportunityDetector.swift"; sourceTree = ""; }; + E7105227D3411818EDB2232F4C963BF9 /* ShowContentAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShowContentAction.swift; path = PlayerCore/actions/ShowContentAction.swift; sourceTree = ""; }; + E72618A482BB0C852DBCD29A9D3B8C67 /* PlayerViewController_Binding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerViewController_Binding.swift; path = "sources/custom controls/PlayerViewController_Binding.swift"; sourceTree = ""; }; + E779BB81CD7A7993B58A67FF97ECCF5A /* VRMItemController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMItemController.swift; path = "sources/advertisements/VRM New Core/Controllers/VRMItemController.swift"; sourceTree = ""; }; + E84D116294F68DF4023DA6E7D078758B /* XMLParser.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = XMLParser.swift; path = sources/advertisements/XMLParser.swift; sourceTree = ""; }; + E86AA001C09C2D512F6176449744A80B /* VideoPlayDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoPlayDetector.swift; path = "sources/metrics/detectors/video play/VideoPlayDetector.swift"; sourceTree = ""; }; + E956678F8DE3C0B2CD0D4F3EAC755272 /* LoadedTimeRanges.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LoadedTimeRanges.swift; path = PlayerCore/components/LoadedTimeRanges.swift; sourceTree = ""; }; + EC39F8966ED54045F1D83D3763B59DDB /* PlayerProperties.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlayerProperties.swift; path = sources/player/PlayerProperties.swift; sourceTree = ""; }; + ED2340697D337C644EC3B3EC1EF6ED35 /* Future.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Future.swift; path = sources/utils/Future.swift; sourceTree = ""; }; + EDA3BB1B5218C94CA3C4CE23A6B751D5 /* VRMGroupsQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMGroupsQueue.swift; path = PlayerCore/components/VRMGroupsQueue.swift; sourceTree = ""; }; + EDBEB28C19A80F24BC1F548F528DB7A7 /* VideoRenderer-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "VideoRenderer-tvOS.xcconfig"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS.xcconfig"; sourceTree = ""; }; + EE024C1BB9541FE781071A75F007DD47 /* SkipRepeatsDecorator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipRepeatsDecorator.swift; path = sources/utils/SkipRepeatsDecorator.swift; sourceTree = ""; }; + EEA4C7B25CB723B65E89BFE58C89E835 /* PlaybackBuffering.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackBuffering.swift; path = PlayerCore/PlaybackBuffering.swift; sourceTree = ""; }; + EF44F98BBF2371139D4C0D8ACE98319D /* ContentFullScreen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ContentFullScreen.swift; path = PlayerCore/components/ContentFullScreen.swift; sourceTree = ""; }; + F049CCF3D33F84A39B5F497871059EF6 /* SettingHeaderView.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SettingHeaderView.xib; path = PlayerControls/resources/SettingHeaderView.xib; sourceTree = ""; }; + F27BC79EB536AC04D95AB45AFC79DF62 /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = sources/utils/Disposable.swift; sourceTree = ""; }; + F30E910FA727584E123AA34E1CF60467 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = sources/utils/Result.swift; sourceTree = ""; }; + F3EB988310F57A5CD87BA1CBC7E7945C /* VPAIDState.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDState.swift; path = PlayerCore/components/VPAIDState.swift; sourceTree = ""; }; + F417626604A449BC0CBE227305599FAB /* UpdateAverageBitrate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateAverageBitrate.swift; path = "PlayerCore/action creators/UpdateAverageBitrate.swift"; sourceTree = ""; }; + F516F4059EE3C41041CE7BA734064D28 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = sources/player/observer/Observable.swift; sourceTree = ""; }; + F724FAF0CE3CFA5E62A141C75303C78B /* EndPlayback.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = EndPlayback.swift; path = "PlayerCore/action creators/EndPlayback.swift"; sourceTree = ""; }; + F7F3C02905B500CE36B5DAF7FCC9D05B /* VRMCoreItemScheduling.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMCoreItemScheduling.swift; path = PlayerCore/actions/VRMCoreItemScheduling.swift; sourceTree = ""; }; + F8FC512A4E402E444283EC00A30EABDB /* VideoRenderer-tvOS.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; name = "VideoRenderer-tvOS.modulemap"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS.modulemap"; sourceTree = ""; }; + F943DD66976477937ED606AC402B819F /* VideoRenderer-tvOS-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "VideoRenderer-tvOS-umbrella.h"; path = "../VideoRenderer-tvOS/VideoRenderer-tvOS-umbrella.h"; sourceTree = ""; }; + F96B5D4AE71A534A44412C6111306234 /* AirPlay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AirPlay.swift; path = PlayerCore/components/AirPlay.swift; sourceTree = ""; }; + F97179D00692409596EE4332EC28BF0D /* WebviewViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WebviewViewController.swift; path = sources/vpaid/WebviewViewController.swift; sourceTree = ""; }; + FAFB722B1E3545B56FE55825A40DD99A /* UpdateAverageBitrateAction.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = UpdateAverageBitrateAction.swift; path = PlayerCore/actions/UpdateAverageBitrateAction.swift; sourceTree = ""; }; + FC67DDC930B2F9061A1676FB1C1D3DE1 /* SeekerControlPlayground.xib */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.xib; name = SeekerControlPlayground.xib; path = PlayerControls/resources/SeekerControlPlayground.xib; sourceTree = ""; }; + FD69C5F28ECAEAD21998EA9D9663434E /* PlaybackSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PlaybackSession.swift; path = PlayerCore/components/PlaybackSession.swift; sourceTree = ""; }; + FDBD225336208C1F1029B2E1DF4CB643 /* VPAIDActionCreators.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VPAIDActionCreators.swift; path = "PlayerCore/action creators/VPAIDActionCreators.swift"; sourceTree = ""; }; + FF2B9D097CAC2C9FF35D70C3CA7053C3 /* VRMTimeoutActions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VRMTimeoutActions.swift; path = "PlayerCore/actions/New VRM Core/VRMTimeoutActions.swift"; sourceTree = ""; }; + FF6A17C9892B0251481926AA1AF2D083 /* VideoProviderParsing.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VideoProviderParsing.swift; path = "sources/video provider/provider/VideoProviderParsing.swift"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 044D7D11E3B37C810EC9D4A27275F350 /* Frameworks */ = { + 00EF18E0A1F8AD954E9F45DEF3317E59 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0BACC0214ED283CC300985F6E6A20043 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 1E7B5536B6EF3F1195BD15970379F353 /* Frameworks */ = { + 0CB1FBB33FF8B2D42BE788CAABFD4CD2 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 868BCFC7B5C4921DCA90F84A7C03927B /* CoreGraphics.framework in Frameworks */, - DCC35D3A47B757A6DE5ED606CD6CBD90 /* CoreMedia.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 38F62E34A4828EE2BA0AD65FACDEB3FE /* Frameworks */ = { + 13DF74DC95D234FB2B402FA573B0CC41 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 38950BF71A3A5169A6FFBD30F2EC7171 /* AVFoundation.framework in Frameworks */, - 7672FED5AB8901D32A3156224E947301 /* CoreGraphics.framework in Frameworks */, - F804B25C595F4A3D0A8DD63D250A4830 /* CoreMedia.framework in Frameworks */, - 5A1F22FA4E71C3DD7E932434BBAF7DD2 /* WebKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5E46FE1A8750AB805AD9DBB64DE8C2D6 /* Frameworks */ = { + 16C653B4A3E7AFF36C9F4BF2FE55F89B /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 644A4373D375C2C1B1FCAC9B7059A418 /* Frameworks */ = { + 18B725EA4C680DA1D1B2A97F4E1FC496 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 66C6280145508DB8AF4C49354DC370CC /* Frameworks */ = { + 48B56308A3F3CDA182C47BFDF578A55F /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 7B9C4E1A903F25ACB22DAFD8BC65668B /* CoreGraphics.framework in Frameworks */, - 671A286D6B55C90C386C71A951006949 /* CoreMedia.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6D23995A891B2AD835ED6ECD392CFE4C /* Frameworks */ = { + 51C1FEE66AF9959C295E855EAB85E002 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - F9543DF7FA85296FD69AE625B929C172 /* AVFoundation.framework in Frameworks */, - 8D69267477D8E9578383E3549A649570 /* CoreGraphics.framework in Frameworks */, - 23FC405C63670C17BD48F35AFF791645 /* CoreMedia.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 96132B7E90B6B2B9B10DBEBECE94D6C4 /* Frameworks */ = { + 6985815C6A8EE5AC2A524099868F0806 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 07AC8747AF1C0EE55BDD8405FBE35155 /* CoreMedia.framework in Frameworks */, - 18DE1242ED1FB039727391152C7D4985 /* Foundation.framework in Frameworks */, - 46CEBF85385248A26EEA7C9462E98A84 /* SafariServices.framework in Frameworks */, - 4A29793386D570F4D16D536F4DC0B10A /* UIKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - FA0615C1F8CDDEB16081B10206054730 /* Frameworks */ = { + 76BC55F09939AFA501CA9265735F08A4 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( @@ -1112,828 +1215,883 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 0C67E4E2DBBBDEE2138BD3FC19BE7054 /* Support Files */ = { + 0581B2821842BE8232304FAD6333EEAD /* OMSDK-Oath2 */ = { isa = PBXGroup; children = ( - 8B9B88F2454A7AE08150E438D416EF69 /* PlayerControls.modulemap */, - D2A2FB54B9EE32B692A636C176BFF3CB /* PlayerControls.xcconfig */, - 4166C0D3C7B05C2E6C684E192C72FEF9 /* PlayerControls-dummy.m */, - 540845E2714CC2F59492770758E3CAE7 /* PlayerControls-prefix.pch */, - 4B1DC63BAB8B93A062D22D6A73E11863 /* PlayerControls-umbrella.h */, + 345F34A73266C032ABD2E46ADA90C320 /* Frameworks */, + C26ACBE12124C78D20C0FFF395114CAA /* Support Files */, ); - name = "Support Files"; - path = "../Target Support Files/PlayerControls"; + name = "OMSDK-Oath2"; + path = "OMSDK-Oath2"; sourceTree = ""; }; - 0E170579A85D2A218CF3993663482045 /* Support Files */ = { + 07E4C02B40639B7BAEFD62616F35235C /* Support Files */ = { isa = PBXGroup; children = ( - 16B2B49658B8FC9079710A58247AA691 /* VerizonVideoPartnerSDK-iOS.modulemap */, - 182EC1D691EA0D66F27E2AB5471A4FF0 /* VerizonVideoPartnerSDK-iOS.xcconfig */, - F49D79606778AB04B10A7CAE25C662D1 /* VerizonVideoPartnerSDK-iOS-dummy.m */, - 542F4E0ADDEC67B8093682C950B4F66E /* VerizonVideoPartnerSDK-iOS-prefix.pch */, - 837575562C788FA755344A8D5B212BFA /* VerizonVideoPartnerSDK-iOS-umbrella.h */, - 403F71811464ACD9A99579F63F32B4A1 /* VerizonVideoPartnerSDK-tvOS.modulemap */, - 11B4B76EABDBD17D9DDDD9C4992AC267 /* VerizonVideoPartnerSDK-tvOS.xcconfig */, - 18479E651BED943B21D4094B695CB5C3 /* VerizonVideoPartnerSDK-tvOS-dummy.m */, - 6B0ACF80C97108627F3DBE9E2EE82A07 /* VerizonVideoPartnerSDK-tvOS-prefix.pch */, - B257E2CD6F62E566E090564F44F8C590 /* VerizonVideoPartnerSDK-tvOS-umbrella.h */, + A46F5E549E5785B06031F771E4D35B49 /* PlayerCore-iOS.modulemap */, + 0F4D2737B8CE26396BCBF76BF9D81A1D /* PlayerCore-iOS.xcconfig */, + 1F16B032E4DF8CE0957BBCEF6D4E26BB /* PlayerCore-iOS-dummy.m */, + D459F7458A3B12465FC33034E3184000 /* PlayerCore-iOS-prefix.pch */, + 2FCF0627E65A9A4B37DEC717F9B54974 /* PlayerCore-iOS-umbrella.h */, + 2D879FFEB62970C3F50F9D016F5E0AAB /* PlayerCore-tvOS.modulemap */, + E155AA96480BC79AE0AC099C465DE9B3 /* PlayerCore-tvOS.xcconfig */, + DE234D6B1EFFFEC9D19AD9EA1E0EC594 /* PlayerCore-tvOS-dummy.m */, + 9EAC1E66E56BBEEE6A3BA8C6E5301803 /* PlayerCore-tvOS-prefix.pch */, + 3628493DEC13CCB3915896F896614B9D /* PlayerCore-tvOS-umbrella.h */, ); name = "Support Files"; - path = "../Target Support Files/VerizonVideoPartnerSDK-iOS"; + path = "../Target Support Files/PlayerCore-iOS"; sourceTree = ""; }; - 0E6C7DE3F16967CF92DA3D531BCB2BB2 /* PlayerCore */ = { + 0ECFD1E51420AA83ADF3225782EAEAEA /* Pods */ = { isa = PBXGroup; children = ( - 0FAD7A57BEB02007887CC8FADDBB58B1 /* ActionProtocol.swift */, - 50CD5E1FF0715F849B022F2418EB4F6D /* Ad.swift */, - 12EDBC85553EC56459B4AFFD2BC00DEB /* AdClickthrough.swift */, - ADBD98169C953D6CF2CABA20C0EC92D7 /* AdClickThroughAction.swift */, - D521315A396FE12F6AE3BF25EC18CE64 /* AdClickthroughActionCreator.swift */, - C0B502E0086AF90E1ED7C3CE0777B86A /* AdCreative.swift */, - CB737A73C09729E15EBB1FDD6881B647 /* AdFinishTracker.swift */, - 33134BB259E7102EA1B40C5EEBE2777D /* AdInfoHolder.swift */, - 60B9F3F5BB432696D504C5B6C51A1554 /* AdKill.swift */, - 6F1D30730DED4F86AC121BF0EE8F0E2C /* AdKillAction.swift */, - 5B2AC2D19592F1B736A8D102D8339FFB /* AdPixels.swift */, - 045810D2B7A2421CA10E5823AC70CCD5 /* AdProcess.swift */, - 1824C76AAFA51CFCF5207329529D3E4F /* AdRequestAction.swift */, - 45065CB419D5B8B16E450F9D6ACA8FB5 /* AdStartTimeoutActionCreator.swift */, - 33C386ABBAA954DD9C8CFE5CCD90135A /* AdVASTModel.swift */, - 00C8541BC89273217935B674255CDBCF /* AdVRMManager.swift */, - 14D27AEA7B2E2A901251E2EDBC73796C /* AdVRMManager_Hashable.swift */, - 5F576BF45DA2D2CEAEE5EC8E33055357 /* AirPlay.swift */, - 512BE73014C347312723D1227DE336B9 /* AverageBitrate.swift */, - 71EF0C56CC8EBFBA6FAD1C79420B2C90 /* CompletePlaybackSession.swift */, - 9068A799A39901F7F39F10D5C601D095 /* CompletePlaybackSessionAction.swift */, - 05B1B2816ED4C554DDB9303D17FF368D /* CompletePlayerSession.swift */, - D2BDDD87D3B494A96246E20440F479F8 /* CompletePlayerSessionAction.swift */, - F40F5FE272D009E3E599DC5EF9C07D62 /* ContentFullScreen.swift */, - 94CBB443128BFDB72D523F89C04AA872 /* ContentFullScreenToggle.swift */, - 62DFF5D1B39759E88B07710D0DC5E352 /* CurrentTime.swift */, - D60A46AAACB1BC39457A65E8974BA779 /* Dispatcher.swift */, - 981FCF0A9AAB9992E824F731B6924843 /* Duration.swift */, - 1254F86FCA694BEC7D513BFED2755C16 /* EndPlayback.swift */, - 266584E0D12E576419C89F8C665F8F8C /* FullScreenToggleAction.swift */, - 46B981960585FF391251AEC8976ACFCD /* InteractiveSeeking.swift */, - 9B54B5C1F9391D4606F19BD1DA9B7D9A /* LoadedTimeRanges.swift */, - AD08D6027E2F36EF0A5F6EFDA3D0C94E /* MaxShowTimeActionCreator.swift */, - 0AC5C0DD018F44AA233111BC67356CF7 /* MediaOptions.swift */, - 6E4F60CFFBAD58031273A08B1FB9408F /* Mute.swift */, - 419FB98F68F5B5D8B4B60C3329909E7D /* MuteAction.swift */, - 8D23CBF84EED3D47272FBD411AD256DF /* MutePlayer.swift */, - 6CBA4BCF2815045C1D4CF7CA0DBDDE5A /* Next.swift */, - 7B48433E6E9ECCE607F953FA02773B10 /* Nop.swift */, - 414F952D8FE5E66772FF90040BE02D0C /* NopAction.swift */, - 9FB5C44FCE64ADA3F6C1903590854360 /* OMScriptServiceAction.swift */, - 39F0708782DC0A936D163B220E4B20AD /* OMServiceScriptActionCreator.swift */, - 935190924972BE2AF78DB5F3DAE1091F /* OpenMeasurement.swift */, - 85AC1AA457E993D50F4BE64B2939C767 /* OpenMeasurement_Tracking.swift */, - 7E4F338D5383965D04E52E8DDC0FA692 /* OpenMeasurementAction.swift */, - 59F775792BB0F7F138F51ECCDE6CA80F /* OpenMeasurementActionCreator.swift */, - 1F5098F9297DD3B239FFBF84AF87F044 /* OpenMeasurementServiceScript.swift */, - E3B5A395D26DF4C5DB4E72DB2FA84013 /* Pause.swift */, - E50F435FBA742A8221327B76928F1447 /* PauseAction.swift */, - B6D079AC9494A3CBF205BC2D6A6E46C4 /* PictiureInPicture.swift */, - 81DD3E91194AA98FE2439FADE4AC0E52 /* PictureInPictureStatusUpdate.swift */, - 37C3213BEB4536CCFD8E8A87E74ED35D /* PictureInPictureToggle.swift */, - F09FAD92BB59C2212454C4B9252963F5 /* PictureInPictureToggleAction.swift */, - 0A391B11F749C6DE8AA14A316C6274FA /* PictureInPictureUpdateAction.swift */, - C6FBFBA8B34E78F824AB8208E18BE62A /* Play.swift */, - 5659F0C868F2180006EA558B4CAF3C78 /* PlayAction.swift */, - 73077F9E15837D0BE8AC62D891A12150 /* PlayAd.swift */, - E37C4C9A91AED32895BDEBF5F4032EF6 /* PlaybackBuffering.swift */, - 8F7AC99EA9BB4DD560CC39E5F17FB477 /* PlaybackBufferingAction.swift */, - 095C36F7DA5A2234C11F074566F74C42 /* PlaybackDuration.swift */, - 07B7F0918426056110EBF06E940BA82D /* PlaybackFailed.swift */, - ADEB582B5F68BC8D3108EF44DE73C639 /* PlaybackModel.swift */, - 4B5FDA4FF20C0084D03B3909CE8895E5 /* PlaybackReady.swift */, - 4EF704FA5014FFE1065AFFE439D41A4B /* PlaybackSession.swift */, - 5906EEFA1985A3A746665567688BE259 /* PlaybackStatus.swift */, - EDC6B6CC5E134FF914417D5AE82D3362 /* PlayerSession.swift */, - B6C00520495895A29A48A2574D0DF87C /* Playlist.swift */, - 0F7B7A6D0FDE44BD494B6674664FEC9D /* Prev.swift */, - 18C0BB836697B2766FB7C3FAA1EC744E /* ProcessGroupsAction.swift */, - 3A383559DAE3DB38D22E11A5AC4F023B /* Progress.swift */, - 8CAEB6D5DBA7D8ABD8CBA8D414D5BEDF /* Rate.swift */, - EBA68203FA38A75D2E16ECCAFD80F12A /* RendererDescriptor.swift */, - D00260DDC45913DA4E36C1289BD6B68C /* Replay.swift */, - E31B80BFF936795AA5C4A478B5EE0BA4 /* ScheduledVRMItems.swift */, - EBE4FB5C1CFEBB5DEA7CE979BEC54D95 /* Seek.swift */, - 133FC706F5DFE798FB3CF33AC781F67D /* SeekToTimeAction.swift */, - DFF5225C2B850F1A950D899E1AA0B4D1 /* SelectVideoAtIndex.swift */, - 35D71948F19056E7FE4D5EFDD84D95B0 /* SelectVideoAtIndexAction.swift */, - CF40E1EA3BF7952E005C0ACCDF04E953 /* ShowAdAction.swift */, - 36A5247CE66D428B4383A2ACDC5A4C1F /* ShowContentAction.swift */, - DDF42DD6E4992C9C46DD8CA3072906E9 /* SkipAd.swift */, - B9F276588C10024B75D1C6630E40505C /* SkipAdAction.swift */, - D4DBDA8FD59F9C64001EA31D981AE9D0 /* StallingRecords.swift */, - EFCD08872ED4FD44C60DEAF7D668601E /* State.swift */, - B796C049CFF147D59B8F186968C41DEC /* Thumbnail+VideoProviderResponse.swift */, - 1B7BE45CA8617D5B741107076225FED6 /* Thumbnails.swift */, - 4C4E82A593F16973A626D9444902FFB4 /* TimeoutAction.swift */, - 29EE0E53726C52234015F82E6B738A6A /* TimerAction.swift */, - B8535B84956F4931055B6BBBF636BCBB /* TimerActionCreator.swift */, - E720E2440EB170B1FF5F477CD2CF2A57 /* TimerSession.swift */, - FC0A6ECF684B52307079B294DA99828B /* UpdateAverageBitrate.swift */, - E85308E7ECE202777E327F862E1A1CFC /* UpdateAverageBitrateAction.swift */, - 3C20B6FA2D026F5770896C70DDFFFADF /* UpdateCameraAngles.swift */, - A52D24C8F45218D77091971D0242B196 /* UpdateCameraAnglesAction.swift */, - A402ADEFF7F87B82752402AD92E39F27 /* UpdateCurrentTime.swift */, - 001DF36A9EFCD0DCE34D82D1A1B6E40C /* UpdateCurrentTimeAction.swift */, - DBC7D2E96399A20D2A037A08B2082D33 /* UpdateDimensions.swift */, - 939688037004E5CE1676B7CEBBE9E08B /* UpdateDuration.swift */, - 462489537F00B6A09CBDDCCA4C97CBB4 /* UpdateDurationAction.swift */, - B8B632F0507A346EC1129210D3DE3BD6 /* UpdateExternalPlayback.swift */, - 73B59DAC509F4D05D438946DA8AB08C1 /* UpdateExternalPlaybackAction.swift */, - B3E375E20D4CA38592494A8AD33620EE /* UpdateExternalPlaybackStatus.swift */, - 3512E99680627AB754AF4DF7DFC6BF4C /* UpdateExternalPlaybackStatusAction.swift */, - F6F83D60E9328390087D84237A137B8F /* UpdateLoadedTimeRanges.swift */, - C0CDDCF97523F0787447C919873554E9 /* UpdateLoadedTimeRangesAction.swift */, - A351B422A76CE5A963A40F8E2C2489C7 /* UpdateMediaOptions.swift */, - F26EABDAC23795CBA1B2E2E39593E1E9 /* UpdateMediaOptionsAction.swift */, - 33D8666A2774E4D3A1C8B150C0C39162 /* UpdatePlaybackBuffering.swift */, - 4C55A20DE7A6F80012CE7503BF0ED30A /* UpdatePlaybackStatus.swift */, - BA154198FD701259B07985D457DD34AF /* UpdateRate.swift */, - 5C3AE3798C23665787D3E776DA4253ED /* UpdateRateAction.swift */, - 66E0E902192C72B907A32BABADE0D397 /* UpdateViewportDimensions.swift */, - A520BAE313A08EDD77FF55F02A1A9A1B /* UpdateVPAIDAction.swift */, - CF416E7292827AC9BF388D5EE1234AF2 /* UserActions.swift */, - D96C8D4C2E1B6AC5850E03D6F9BA3A47 /* Viewport.swift */, - 714D5633E023D5949BA5628775D78B0A /* VPAIDActionCreators.swift */, - 62026BE0CC4B962614C3C34DE645DCFB /* VPAIDErrors.swift */, - F80415A24D033D1D3F40A31C084CECC9 /* VPAIDState.swift */, - 3B989F2B2C92E5E5D1FABA5217152569 /* VRMCoreAdProcess.swift */, - B417B3CB95F5039AFCB350F4F2A5C126 /* VRMCoreAdRequestAction.swift */, - C1A805987D20AE9ADAE2FDF14D90BF6C /* VRMCoreAdResponseAction.swift */, - 7F77164A2A36175243E1F3077B2A2256 /* VRMCoreAdResponseActionCreator.swift */, - 6AA52E2681A608952D2FE5184EEFEAC5 /* VRMCoreItemScheduling.swift */, - 40F2BE31DF0818B8128A0AE60E6309E0 /* VRMCoreItemSchedulingActionCreator.swift */, - 6413681FA90F219063CA38DDC4DE44C2 /* VRMCoreNamespace.swift */, - 83310F3D198D2939833F53952B6A4156 /* VRMCoreStartGroupActionCreator.swift */, - EEE22018F9CD003D5A63236D9F801406 /* VRMCoreStartGroupProcessing.swift */, - 28AA53DD58EBA4F9D20A8F3F6B4819D6 /* VRMCoreVASTModel.swift */, - 63F9DC649FC969E25E64A75BF8EA18BA /* VRMCurrentGroup.swift */, - 3569F7E8315224CF7FD04F6F980025E5 /* VRMFetchItemQueue.swift */, - EF3663C0AECC745A319F9D623FFAC521 /* VRMGroupsQueue.swift */, - B375FA8FEEE412E94048793C25D2E13A /* VRMItemActions.swift */, - F7FCF149223087241FDABE5334FBD85D /* VRMParseItemQueue.swift */, - 1C29B6EF6CA72B2AE2F1676F9AA33B30 /* VRMParsingResult.swift */, - D80C9C3213047EE632D9553A4C769DBF /* VRMRequestStatus.swift */, - 5838EEB535181551DAC39253F01ECF8E /* VRMResponse.swift */, - 460FBEAAB6E657AE8B8ADDDB4D8FEC79 /* VRMResponseModel.swift */, - C0DEBB8DB976D1C444796C7EB6B6F1CB /* VRMTopPriorityItem.swift */, - 7975DDC78D447DF20EB3D92FB82D06E1 /* Support Files */, + 0581B2821842BE8232304FAD6333EEAD /* OMSDK-Oath2 */, + 39A10A46496C2FE8457253B0C52D43A8 /* PlayerControls */, + 638159233241E03B059DA3D850FC152D /* PlayerCore */, + 9E6D22F9789A4DC35B172CF27B27699C /* VerizonVideoPartnerSDK */, + C4E9ED74430FA61FACAD3C016C62D49E /* VideoRenderer */, ); - name = PlayerCore; - path = PlayerCore; + name = Pods; sourceTree = ""; }; - 17BB1D62FD241F42E8ED9ABF915015D7 /* Frameworks */ = { + 345F34A73266C032ABD2E46ADA90C320 /* Frameworks */ = { isa = PBXGroup; children = ( - 289E0FA7FFC93254F0286F3C8ED2C50F /* OMSDK_Oath2.framework */, + E34C176E5DE9B672E5815EC6872C9AC0 /* OMSDK_Oath2.framework */, ); name = Frameworks; sourceTree = ""; }; - 3756849259A61682C2A9E2F7B957720C /* iOS */ = { - isa = PBXGroup; - children = ( - 9CDA438423EA9A1A5F33142AE0527696 /* AVFoundation.framework */, - 1BCA902E3AC269DF8DEC62A869009AA3 /* CoreGraphics.framework */, - B3243A549D845F8EB5894515FA46ECB6 /* CoreMedia.framework */, - 3A86F0C2ED4C170E8A84D0C7B65A649D /* Foundation.framework */, - B5B7B58BF84B37AEF03D75A2389D742B /* SafariServices.framework */, - 6C3E401E7BE44C38AC689692AE758CD2 /* UIKit.framework */, - 9C46F677CAD5560EF429BB665A5F7E7E /* WebKit.framework */, - ); - name = iOS; - sourceTree = ""; - }; - 5A8FA2E18D520A1C870A28BE590AC3E4 /* Pods-Tutorial */ = { + 39A10A46496C2FE8457253B0C52D43A8 /* PlayerControls */ = { isa = PBXGroup; children = ( - BAD0ED6762DD3A3D0E090D51D8843F74 /* Pods-Tutorial.modulemap */, - D7F54FDD978BB172AA050F61AC76391F /* Pods-Tutorial-acknowledgements.markdown */, - 5D6EF2C48BE3E40387FC560564125874 /* Pods-Tutorial-acknowledgements.plist */, - EA9A8A4215A3726A63AB49983F9CEDB8 /* Pods-Tutorial-dummy.m */, - 1F5BA1EC743F9EC66B7D847944F1684F /* Pods-Tutorial-frameworks.sh */, - 60FF74A7BD035B5282DE3119DE4642B3 /* Pods-Tutorial-resources.sh */, - AE67484A69A1F7F54757BFEF5CD7FD6D /* Pods-Tutorial-umbrella.h */, - 64CAE4DFE1B068052CAD28CD3479FFE9 /* Pods-Tutorial.debug.xcconfig */, - BC8F4B2EDCA1349EEADFB7F7ECBF2263 /* Pods-Tutorial.release.xcconfig */, + 9EB0F9514492C1A8387E81CB0F274202 /* AdVideoControls.swift */, + 5ED9B48BF3B00001E299FC5757CAAE6E /* AirPlayActiveView.swift */, + 12E355AC24B80A849E560B6B37735181 /* AirPlayView.swift */, + D44B7EE4B1EAA453712013C800D719F0 /* AnimationDelegate.swift */, + 064B100FBA997CA7EF23C718AA38E24D /* Autogeneratable.swift */, + 82B7E18AFA9FC1603F5301F68D1B8DA0 /* BundleHelper.swift */, + C35AE9F4A0256C3DA4C307C163388081 /* Codable_PlayerControls.generated.swift */, + 4311D05253D6B22DE1EF6CFA02545A15 /* Color.swift */, + 5D83D8E9D84454271D7A2D01F7D8E6BB /* Command.swift */, + 0569E386FAF353D6D3496D3577F038EE /* ContentControlsUIProps.swift */, + 5713B360EC4A1F4B5357519A6E5ED3D7 /* ContentControlsViewController.swift */, + 60009E9262872E5EF84393A7A6765FD7 /* ControlsVisibilityController.swift */, + 1B99D4514E3DC2D3A73626AA63F1A0D9 /* Defaultable.swift */, + 5760BEB7F46BBDDD79CF7A91CB81D670 /* DefaultControlsViewController.swift */, + 8CBAFE903F1CB1122596467C3069BAFC /* EnumPrism_PlayerControls.generated.swift */, + 76C987F09CA0D8802B7A1311D9004DF3 /* LoadingImageView.swift */, + DE9FC3E4681729774879CAF45D2CDD5F /* Props+Autogeneratable.swift */, + 21349908B1077D8FDBA34294FE59C118 /* SeekerControlView.swift */, + 581CBD6D2BF13A8DB084832CD1950B9A /* SeekGestureRecognizer.swift */, + 164C622F3873703079AE2F90A1CE9E4E /* SettingCell.swift */, + C22C8242C1F2ABAC787D8BAAFAC32CBB /* SettingHeaderView.swift */, + B0DD6F578407D63E6E9E07E26B2C44D2 /* SettingsViewController.swift */, + A070C289EE321386B0EDB6EE640E57DB /* SideBarView.swift */, + 15B717973EE21477DF8BB0748B02681F /* TimeFormatter.swift */, + 8B7DE15A456FE044A1CD72FF70B37762 /* Timer.swift */, + D1C51EBCB50E78FF34FAC17DD0E684F2 /* Utils.swift */, + 4228DEA2049573DF47104CB8B828CAE2 /* Resources */, + 47C9B4B67C9F40E35D74760D69B32BBD /* Support Files */, ); - name = "Pods-Tutorial"; - path = "Target Support Files/Pods-Tutorial"; + name = PlayerControls; + path = PlayerControls; sourceTree = ""; }; - 653814269318F9C192EDD026AA977B95 /* Pods */ = { + 4228DEA2049573DF47104CB8B828CAE2 /* Resources */ = { isa = PBXGroup; children = ( - 828B3D0FDB0BAF52D46443B9FC395FD2 /* OMSDK-Oath2 */, - 8301A7E7C3B5F4C09AD432069269DB00 /* PlayerControls */, - 0E6C7DE3F16967CF92DA3D531BCB2BB2 /* PlayerCore */, - DE74B55C44F0E550E4223A689528CF56 /* VerizonVideoPartnerSDK */, - A502F061A7281A6C6427631ECD545E07 /* VideoRenderer */, + 034D75DEF9537918A4E0799C960B591D /* AdVideoControls.xib */, + CBB763041742564CB65860AED3926299 /* AirPlayActiveView.xib */, + 086360320F329D8302E34FF7529078A5 /* DefaultControlsViewController.xib */, + B2178E5269A751FB7D86F4B2C7EB9D40 /* PlayerUIControls.xcassets */, + FC67DDC930B2F9061A1676FB1C1D3DE1 /* SeekerControlPlayground.xib */, + 197DDA6B84BE4F498732D3D1BF4162DD /* SettingCell.xib */, + F049CCF3D33F84A39B5F497871059EF6 /* SettingHeaderView.xib */, + B224529236EB51260EAA18CB19996B73 /* SettingsViewController.xib */, ); - name = Pods; + name = Resources; sourceTree = ""; }; - 6E82891DFAC82BF148C93ADB5D60A828 /* tvOS */ = { + 47C9B4B67C9F40E35D74760D69B32BBD /* Support Files */ = { isa = PBXGroup; children = ( - C5B53B5950BD81738B677B5C8E7024B3 /* AVFoundation.framework */, - 7E3B4E1870C70D32A712D11D5FD64E49 /* CoreGraphics.framework */, - D139E9F005DCF621ADA8FFAA1CA71CC0 /* CoreMedia.framework */, + 9EDC97E7EA719B903BCBA324B7BF53BA /* PlayerControls.modulemap */, + 280D7A9CFA13A8DA8ED56F7F568D2C18 /* PlayerControls.xcconfig */, + 83B3ACF5209EC5C571EE73809085806C /* PlayerControls-dummy.m */, + 2F3D17FCD60D1B7B3C3FF4063E83CDDB /* PlayerControls-prefix.pch */, + 5525DDE0659D3ABE5D10729E6C07DDAE /* PlayerControls-umbrella.h */, + 9016865398F659D6CF2136722F14B058 /* ResourceBundle-PlayerControls-PlayerControls-Info.plist */, ); - name = tvOS; + name = "Support Files"; + path = "../Target Support Files/PlayerControls"; sourceTree = ""; }; - 73045AC49A8818FCD490E1D552D6CF3D /* Resources */ = { + 638159233241E03B059DA3D850FC152D /* PlayerCore */ = { isa = PBXGroup; children = ( - 5C010A5C8FED00EE4B2397BB1C7369CE /* AdVideoControls.xib */, - 68D8732921FAEBC5CD44F22A999B5AF4 /* AirPlayActiveView.xib */, - 90B83F91CF87AB5C4DE3F00417F3A432 /* DefaultControlsViewController.xib */, - CD3E4B12F5E2409448FAD53AABE7F950 /* PlayerUIControls.xcassets */, - FB983720F2689B9D19D2A819C2E317AF /* SeekerControlPlayground.xib */, - 094239C49BC1DA91AB7880B4BF816371 /* SettingCell.xib */, - B872C7F7CE865558F85E0E92BE253E14 /* SettingHeaderView.xib */, - 94651A3DCC58CAF070812334F62D94CE /* SettingsViewController.xib */, + B399500384F916842F86E15D0D826767 /* ActionProtocol.swift */, + 0E4EA93A9E4A379D052C130E08428E84 /* Ad.swift */, + 203C979BBCED25626DD51D4EB8A33A46 /* AdClickthrough.swift */, + 2908A08B70C308A5ED83F08F1C36730F /* AdClickThroughAction.swift */, + 77F51F491D76AB35364D89E74ED2DAD1 /* AdClickthroughActionCreator.swift */, + 938EF0021D9EB8602D878B43E90701AF /* AdCreative.swift */, + 9375C8A6EEEF93548251864F810A413A /* AdFinishTracker.swift */, + 62197EA5B64BF7334F805F9E838C098D /* AdInfoHolder.swift */, + 9CFD8D23E9B278A4ACBBBBF4F1AD540C /* AdKill.swift */, + 4301473EAB3AE3570F0B3978BF0AB3DF /* AdKillAction.swift */, + 26317AE0B22EA94F5D8E361F96C8CE87 /* AdPixels.swift */, + 23D89C0CA935EDCE79B02559683FAE28 /* AdProcess.swift */, + 82A5148365180E280B3D9BB173DB7A0E /* AdRequestAction.swift */, + 8DBD9AD6689B7C9FBD0FE077A2B42D42 /* AdStartTimeoutActionCreator.swift */, + CC1A62597C9C983B207E4C5678EF7454 /* AdVASTModel.swift */, + 5ADBA0CA3804B8A28C80080F7367D059 /* AdVRMManager.swift */, + B33514C0500719FF13768B4963F0745F /* AdVRMManager_Hashable.swift */, + F96B5D4AE71A534A44412C6111306234 /* AirPlay.swift */, + 6AEF06810C45EE3B931C19E5AEA6308F /* AverageBitrate.swift */, + DBF90D1E6E5F620B0E65C8A007E9B64E /* CompletePlaybackSession.swift */, + 87165F5C75D244EB55EE4E8D855982F7 /* CompletePlaybackSessionAction.swift */, + 9BED9CA577C475F4720BE8DCBAD30127 /* CompletePlayerSession.swift */, + 8E61491A266B23563687661C22FC1963 /* CompletePlayerSessionAction.swift */, + EF44F98BBF2371139D4C0D8ACE98319D /* ContentFullScreen.swift */, + 250BB599A1C772610EFC383E6E87C434 /* ContentFullScreenToggle.swift */, + 1170FFC23FEE414E57D7D1E40FFD58A3 /* CurrentTime.swift */, + 76F034D17EA7D7784B6AF9684E8F839C /* Dispatcher.swift */, + B3FA318A2E3DF2CFA759BDB4E82CB533 /* DropAd.swift */, + 714AED141F35A308423F5820CC5756C6 /* DropAdAction.swift */, + A0442A9817D6CAB03E131FD82EB1F5F9 /* Duration.swift */, + F724FAF0CE3CFA5E62A141C75303C78B /* EndPlayback.swift */, + 9CF82A4A446951B30E5AC50656688170 /* FullScreenToggleAction.swift */, + B46184B120B636FE04338E4C563B129C /* InteractiveSeeking.swift */, + E956678F8DE3C0B2CD0D4F3EAC755272 /* LoadedTimeRanges.swift */, + 6CB305DE80426085C7691D487F0E0A3F /* MaxShowTimeActionCreator.swift */, + 85B543E5BB9CF463A54C35BC0CCE290F /* MediaOptions.swift */, + 241D7C3CE27DE263DEFC2A1939510AF1 /* Mute.swift */, + 34113B05E2961F2CB9FC3CD4ACE915E3 /* MuteAction.swift */, + DBE5D285419EC85B2E22D7D00497AE95 /* MutePlayer.swift */, + 411FC5668965585A84979C8ED23E023D /* Next.swift */, + 416333376C9D774054B3EDDB85A160F6 /* Nop.swift */, + AF786315EE8C19934A3DB0B97F5545B5 /* NopAction.swift */, + 594203ACF72DC1903C44419A7A2AAD2F /* OMScriptServiceAction.swift */, + B1C9BB081E98FA80C43BADCE8B8C0C2B /* OMServiceScriptActionCreator.swift */, + 3A4CDC2EA513530920C6EA1CE9289BBE /* OpenMeasurement.swift */, + 1D2C80149026183A373986FA1B50DC91 /* OpenMeasurement_Tracking.swift */, + C617DF87E031CF468400B9E93FC1BF08 /* OpenMeasurementAction.swift */, + AC4211B40C57E745758BC338334C7A90 /* OpenMeasurementActionCreator.swift */, + 250556BFF911BE5C9152305C40C7A585 /* OpenMeasurementServiceScript.swift */, + E2278ABA7DCB21F477D19ECF8CA0F605 /* Pause.swift */, + 278DFE128C479C9C160CE0CC42C9C65B /* PauseAction.swift */, + AD45EA40C96A3CBD46D0C370A935E922 /* PictiureInPicture.swift */, + 25530199B00503138E9F97F62ABFC169 /* PictureInPictureStatusUpdate.swift */, + 5709CE06F5B549609FE8462430243D29 /* PictureInPictureToggle.swift */, + 00E5F760209DD07EB7392C6FFE7838D0 /* PictureInPictureToggleAction.swift */, + 5FCFF5A4F79D69730C17CEB96F0E090E /* PictureInPictureUpdateAction.swift */, + 0C6DE2B96C8351E5EA7E3D9A561DED45 /* Play.swift */, + 80B6590E6EFB86E1CB778B74B18701C9 /* PlayAction.swift */, + C1489AF6684DBF0166EFE3EB8A41E839 /* PlayAd.swift */, + EEA4C7B25CB723B65E89BFE58C89E835 /* PlaybackBuffering.swift */, + 176C68CF6066CF79270C09A1A3A1A500 /* PlaybackBufferingAction.swift */, + 1FE35B86E26F5F3EF619CBD5D0732349 /* PlaybackDuration.swift */, + 044F59316AB07DD14F58AAB8EAE27F0A /* PlaybackFailed.swift */, + 71BC77D346B110E01B8B6E87DC95B977 /* PlaybackModel.swift */, + 3B3EF7D052BEE09D17E3AD5E32A0D16B /* PlaybackReady.swift */, + FD69C5F28ECAEAD21998EA9D9663434E /* PlaybackSession.swift */, + DEB912DDE048D6BD02212F5F4C96333D /* PlaybackStatus.swift */, + 3A314A3BBF3CCF2BEC62A9B444CBC9C1 /* PlayerSession.swift */, + 493F1EB01D28B76478B7ACD1E3B3D30A /* Playlist.swift */, + B9F76B6D7229DE79AD601286E64BAAB3 /* Prev.swift */, + 44EADAC5304B3A226A8E272A4D3038E8 /* ProcessGroupsAction.swift */, + 61AF9BD5A37819EF4B90A0F967822049 /* Progress.swift */, + C6951F7BE7D5D5AD3DC55B3809326086 /* Rate.swift */, + 255FABA731E7F630E903F5092158FEE0 /* RendererDescriptor.swift */, + 643BC1398CB4F4F11465F6B9D298A187 /* Replay.swift */, + B9855B4C13C7EE5DE8B3AC4515AEEFF0 /* ScheduledVRMItems.swift */, + 9B6F46A934F2DA5EEC8E1F96965AEBAC /* Seek.swift */, + BBCCCB551F0ECA160E70AB64A12DEDA9 /* SeekToTimeAction.swift */, + 2B43AF6837A4014FCE9409A6CC59CDCE /* SelectVideoAtIndex.swift */, + 49E49264C3EE6D9BFA8E5415E806E4A3 /* SelectVideoAtIndexAction.swift */, + 5ED28EFD6C6A7790314310DB02731E78 /* ShowAdAction.swift */, + E7105227D3411818EDB2232F4C963BF9 /* ShowContentAction.swift */, + A4BD22CAA4F6A906B2098551B9F7834C /* SkipAd.swift */, + 23BE152EE50B060F11B59EF1D4AA9E84 /* SkipAdAction.swift */, + DB9471519FE70B1521B2D44C54502B2B /* StallingRecords.swift */, + 858B163FB4203D92E6B74942B07CB1D5 /* State.swift */, + 14B3C7CED428299A83D1B17FDD4CCF01 /* Thumbnail+VideoProviderResponse.swift */, + E22ED38996DA85CF35684C7FC4DAD2AB /* Thumbnails.swift */, + 0DAFFB3AEE797A99279281F7C6AA7869 /* TimeoutAction.swift */, + 51A0B7A264E2DE2B48D33025A632B7EE /* TimerAction.swift */, + AE3B7E151EFBF277DF015CA5542ADBA2 /* TimerActionCreator.swift */, + 5DFC27D9425A7D8F28D4908E4B88021E /* TimerSession.swift */, + F417626604A449BC0CBE227305599FAB /* UpdateAverageBitrate.swift */, + FAFB722B1E3545B56FE55825A40DD99A /* UpdateAverageBitrateAction.swift */, + 04C5E40F9592EBC9A65DFB9D1AB36461 /* UpdateCameraAngles.swift */, + 77D0255014DDAFAA7DF51193CA40C588 /* UpdateCameraAnglesAction.swift */, + A2ACF31A5FA0502DC622B8B546D90A0E /* UpdateCurrentTime.swift */, + B9D019C51554738DDD794F38EEB211F0 /* UpdateCurrentTimeAction.swift */, + 05E75D9179C0BAC5A3B770F04F45D0D8 /* UpdateDimensions.swift */, + 726549240549AA20EDFF7E613C30C722 /* UpdateDuration.swift */, + A77024FDE646B0362FE0EBE24748A62D /* UpdateDurationAction.swift */, + 9DED38BB3012DCBFF58337192619C7A9 /* UpdateExternalPlayback.swift */, + D1551CED86005DE931CEB79035141A54 /* UpdateExternalPlaybackAction.swift */, + 2CC2D130B77C2B8C6C1737109FC842E3 /* UpdateExternalPlaybackStatus.swift */, + 9B99EB97E6ABA6A3D47C30B688CD2297 /* UpdateExternalPlaybackStatusAction.swift */, + 6FA46C937BC9EC1120B323D397C3306F /* UpdateLoadedTimeRanges.swift */, + 55B42E543A247656831F8E0B4230FE66 /* UpdateLoadedTimeRangesAction.swift */, + AD7312650961A076EE151D98AAC0EF7C /* UpdateMediaOptions.swift */, + 5FF5DEFCC2A4D984F086303606593BDA /* UpdateMediaOptionsAction.swift */, + 53014B83B47DFC39471AA6860B220C00 /* UpdatePlaybackBuffering.swift */, + 6A02B32D8AE15487262DDF5A345FD3F5 /* UpdatePlaybackStatus.swift */, + C4172B9253EAEF78D1DB954B824AB87D /* UpdateRate.swift */, + 8E0DBAE83144AFE0ED40E8DC7C949D8E /* UpdateRateAction.swift */, + BF8745F1E559298C885D1FDDFC8E8C8D /* UpdateViewportDimensions.swift */, + A45D3A187E2D59F4C7EAA7E7147AE95B /* UpdateVPAIDAction.swift */, + 835CBCD89A796EF1E50161C6DFBA737D /* UserActions.swift */, + 60E61FCA747500B26F6E909D8E8C5143 /* Viewport.swift */, + B09C58AD26D0539E3C5165B59A309A57 /* VMRCoreProcessingResult.swift */, + FDBD225336208C1F1029B2E1DF4CB643 /* VPAIDActionCreators.swift */, + 3D2E9C7F381CA32CB7DB86E13C66939E /* VPAIDErrors.swift */, + F3EB988310F57A5CD87BA1CBC7E7945C /* VPAIDState.swift */, + 539D4BF5DDA135A144A33F1B3491BF6C /* VRMCoreAdProcess.swift */, + 9E27451E4F7AFF1B3CADB6BC353EE831 /* VRMCoreAdRequestAction.swift */, + 7D9F455C653DF8363BB7DA63C0EA969A /* VRMCoreAdResponseAction.swift */, + C986FAECDCB0230F974CB8F5F2F47CED /* VRMCoreAdResponseActionCreator.swift */, + 85C2563E1594BB1A79E1D5BC0F785EF7 /* VRMCoreGroupActionCreator.swift */, + 1048B0D9145F129EE8B27675D8504F84 /* VRMCoreGroupProcessing.swift */, + F7F3C02905B500CE36B5DAF7FCC9D05B /* VRMCoreItemScheduling.swift */, + 19CAC9740700F539F523B6290A54B724 /* VRMCoreItemSchedulingActionCreator.swift */, + 472AE8A1137536C36C7DF40C9C8C3A04 /* VRMCoreNamespace.swift */, + 4ECB04A6AC31C73E881B615C0BF3744F /* VRMCoreResultSelection.swift */, + 54C9EF2713DF7FA01C9F94DF325BBBD6 /* VRMCoreResultSelectionActionCreator.swift */, + 1DEAB0929B915455327E41F9A8AE9A4F /* VRMCoreVASTModel.swift */, + C68916F4ED4CDB54CE85B90A71CDC3E5 /* VRMCurrentGroup.swift */, + C2D56E644CF63253D28DFC6335D3D402 /* VRMFetchingError.swift */, + 6E897C289563C8D67431C0832803FF67 /* VRMFetchItemQueue.swift */, + 34D13B9B50D4BB0C55C56FEE2A8915D3 /* VRMFinalResult.swift */, + EDA3BB1B5218C94CA3C4CE23A6B751D5 /* VRMGroupsQueue.swift */, + 5CDEAA8CEA39CF549E71BF33508A7324 /* VRMItemActions.swift */, + A893B6EFF46FFB985B44D5DBAB32EEBC /* VRMItemResponseTime.swift */, + B97181249BBB2F99B5853756BB4E354E /* VRMMaxAdSearchTimeout.swift */, + 2381728B182E51F65A2398680D67EA78 /* VRMOtherError.swift */, + 215D582548D0F59AA7DE97B62B7A8EA2 /* VRMParseItemQueue.swift */, + 6F44F4E161A8489EE354612B7C17A056 /* VRMParsingError.swift */, + 7F0A47CBE7E7F298CA7A1FE4B3949D98 /* VRMParsingResult.swift */, + 367DAFF3F394C4E981EE0E158A38E566 /* VRMProcessingResult.swift */, + 835DCBC54061C74AFC9BC984DD6F8473 /* VRMProcessingTimeout.swift */, + DE36F8982BE133B26ADD5C80F5E56699 /* VRMRedirectError.swift */, + C0D1A886DE0E01892C71BE92826F2CC0 /* VRMRequestStatus.swift */, + 7754FEDA277F514B38C43CA983A9026F /* VRMResponse.swift */, + 8B032B2A8F22CB7A0CAAA2D3DF0D849E /* VRMResponseModel.swift */, + FF2B9D097CAC2C9FF35D70C3CA7053C3 /* VRMTimeoutActions.swift */, + 139DDC45B37F71E18C20B94C8F365C91 /* VRMTimeoutActionsCreator.swift */, + D11779009B807C7D99D278F03AFA1D81 /* VRMTimeoutError.swift */, + 824338BCBF79EE3D7671CF14DCDE8A53 /* VRMTopPriorityItem.swift */, + 07E4C02B40639B7BAEFD62616F35235C /* Support Files */, ); - name = Resources; + name = PlayerCore; + path = PlayerCore; sourceTree = ""; }; - 7975DDC78D447DF20EB3D92FB82D06E1 /* Support Files */ = { + 7E0CEB80EC061A46964F3337CA1DF0A0 /* Targets Support Files */ = { isa = PBXGroup; children = ( - 1B7D5C77E04419451C8DEDF2C71DC5AE /* PlayerCore-iOS.modulemap */, - D8F051A30702E7B41665B5809C07C3E2 /* PlayerCore-iOS.xcconfig */, - 7270FE10406CFB18B8AD70E6B3477B51 /* PlayerCore-iOS-dummy.m */, - CE3F0427920335482297FC712F9C1651 /* PlayerCore-iOS-prefix.pch */, - 5E2A049DBA886FBA028CA9731F85A05C /* PlayerCore-iOS-umbrella.h */, - 672B4C3A2B3D3F661A79A5745D06AD47 /* PlayerCore-tvOS.modulemap */, - 7D7FAF430C4EA0BE6DC14450B5EA5E37 /* PlayerCore-tvOS.xcconfig */, - CC27E8E52BD7151EBF6FC002EC1B799C /* PlayerCore-tvOS-dummy.m */, - 0E0270EDFB632597DF7A2C3BE5700B8C /* PlayerCore-tvOS-prefix.pch */, - 7D4446AE472B870BA1DB1C81F11A355C /* PlayerCore-tvOS-umbrella.h */, + BB460E83738D340F644EDBDF72897C78 /* Pods-Tutorial */, + 9F27F797FBA08FAFB24FAD33A3868AAD /* Pods-Tutorial_tvOS */, ); - name = "Support Files"; - path = "../Target Support Files/PlayerCore-iOS"; + name = "Targets Support Files"; sourceTree = ""; }; - 7BEF0F173CB5C2699FEFD2C07F2BF51A /* Products */ = { + 8C2238C4E4B97A378BC4D5CA8D85C24B /* Products */ = { isa = PBXGroup; children = ( - 333B54DA2691BCC6B172C9B06241D4DD /* libPlayerControls.a */, - 3C3C4F8D8A243BAD54156DB670FD1908 /* libPlayerCore-iOS.a */, - C7D2F94B83F4774F86F1D014D28E49DB /* libPlayerCore-tvOS.a */, - EE36546AB93A0AC24C11EF9E0D8FE072 /* libPods-Tutorial.a */, - EC35229C5BF283161F901D488C47507B /* libPods-Tutorial_tvOS.a */, - 05EF839117BFA04DA2CBF757037FF5E1 /* libVerizonVideoPartnerSDK-iOS.a */, - 45C9079EF3F8CE6F85083DFD3750A2E9 /* libVerizonVideoPartnerSDK-tvOS.a */, - 13A765C219566708BFA87587CA8BDB19 /* libVideoRenderer-iOS.a */, - E81865AF4FA2E4861D590F297C41AB92 /* libVideoRenderer-tvOS.a */, + 8EA34E4B327D15CADDE622453E68098E /* libPlayerControls.a */, + 796DF63865035761781E66AD55C79DE6 /* libPlayerCore-iOS.a */, + 3A5E7D2920A3DFA410E85FB2721C11B7 /* libPlayerCore-tvOS.a */, + 7D9B6C9BB8A9A2A01C79E116C9875866 /* libPods-Tutorial.a */, + 5C06F11396D553D7D1AA62B99DE5FDA6 /* libPods-Tutorial_tvOS.a */, + 2A04D0589F5FBF791E1D7BCD9A5BB966 /* libVerizonVideoPartnerSDK-iOS.a */, + 791C8844A01363CDB2AD23A947C4C0EF /* libVerizonVideoPartnerSDK-tvOS.a */, + 47B60C98F9B679E2EB1FC340E822F834 /* libVideoRenderer-iOS.a */, + 6F2EB17A21177241791F90E41A92A695 /* libVideoRenderer-tvOS.a */, + 7A19F0B455D82DAA236C847B05C55F18 /* PlayerControls.bundle */, ); name = Products; sourceTree = ""; }; - 7DB346D0F39D3F0E887471402A8071AB = { + 911F92BAE91AD28C677BF9EB7A71F799 /* Support Files */ = { isa = PBXGroup; children = ( - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, - C75969F740DB8C4AD2B4AD643C4C7A20 /* Frameworks */, - 653814269318F9C192EDD026AA977B95 /* Pods */, - 7BEF0F173CB5C2699FEFD2C07F2BF51A /* Products */, - FFEAA1C54C74260A025645BFF427D917 /* Targets Support Files */, + 2305585E914996A388189D9C6F53C903 /* VideoRenderer-iOS.modulemap */, + 8C512E9F41D0253D10C8267F4E1F0AAB /* VideoRenderer-iOS.xcconfig */, + 4D858D99FE39945840CB73334AB61FDE /* VideoRenderer-iOS-dummy.m */, + BA02DC9293B05E2596FA0CB59EF6B59D /* VideoRenderer-iOS-prefix.pch */, + D36E5A62ABBF63E5FCA84A90A9902247 /* VideoRenderer-iOS-umbrella.h */, + F8FC512A4E402E444283EC00A30EABDB /* VideoRenderer-tvOS.modulemap */, + EDBEB28C19A80F24BC1F548F528DB7A7 /* VideoRenderer-tvOS.xcconfig */, + 5937FAA24A6D86837725BD75C7BE21E0 /* VideoRenderer-tvOS-dummy.m */, + 26BF146B6292576295E2F276A821D21A /* VideoRenderer-tvOS-prefix.pch */, + F943DD66976477937ED606AC402B819F /* VideoRenderer-tvOS-umbrella.h */, ); + name = "Support Files"; + path = "../Target Support Files/VideoRenderer-iOS"; sourceTree = ""; }; - 828B3D0FDB0BAF52D46443B9FC395FD2 /* OMSDK-Oath2 */ = { + 9E6D22F9789A4DC35B172CF27B27699C /* VerizonVideoPartnerSDK */ = { isa = PBXGroup; children = ( - 17BB1D62FD241F42E8ED9ABF915015D7 /* Frameworks */, + 8FAB0DEBAF9ADBCE8199A6FCCFFAD285 /* 3secPlaybackDetector.swift */, + 0A636A35441779271BCDDCC3697721AF /* Action.swift */, + 639DBFF53B7BFB869AF06C09FDACC6FC /* AdClickDetector.swift */, + B2C45AF85FE47A98D7D7E54E8BA0B16B /* AdEngineRequestDetector.swift */, + 805643DD11BA75587522F957A546F953 /* AdEngineResponseDetector.swift */, + 6A1E360E33BAC9D776A2608A53BE261A /* AdErrorDetector.swift */, + 35AE340418FF18C418FD3D6F03140CA7 /* AdManagerPresenter.swift */, + 0B940EE3E08F933D60F42C0442890859 /* AdMaxShowTimeDetector.swift */, + 59F8A65588EBEC892C54F8FCB9F7C586 /* AdMetrics.swift */, + 9AA4B3130440CB6D3C100086510EB980 /* AdPlaybackCycleDetector.swift */, + 5C12591FF1FBA7D741C75E7433A08B69 /* AdSkipDetector.swift */, + 2307F031C37CAFEC88180C9FCE333AC1 /* AdStartTimeoutController.swift */, + 427589C49D3ACB758E1014AA94185D23 /* AdURLProvider.swift */, + 0FA95901A4230F99ECD6CF3623F7852A /* AdURLProviderProcess.swift */, + 27D97160CD0231B3EDA6B99F7A02B01E /* AdViewTimeDetector.swift */, + B478DAE3F84EA196FB1D9CF227287BD6 /* AdVRMEngine.swift */, + DCD7E16ED4840943F5ED1B88FE91DEA1 /* ApplyDecorator.swift */, + 4D4AB2046B9FCBE3489A48965734D155 /* Autogeneratable.swift */, + D60C3D1AE672A087104F01FF72B03696 /* BufferingDetector.swift */, + 2FE296B2A3703D3C9C17C83CC4E502F9 /* BufferingStart.swift */, + 7455A26172FA5AC9BBC4B6D9749FA612 /* Configuration.swift */, + C34BF3BC09D1FC4EB79ECC13B7B492C6 /* ConfigurationParser.swift */, + 29AEAB463A986D0B2DC116919DE34599 /* ContentControlsViewController_Binding.swift */, + 43E20AC004F65581CEAB7385A17AE759 /* ContentPlaybackCycleDetector.swift */, + B39D58A1A76A849199D1948EB821142F /* Context.swift */, + DD3E7D8C856E5C55094E5B3BE907C393 /* ContextStartedDetector.swift */, + 6AA5AC218163904092E98370D7E692D7 /* DecileDetector.swift */, + 7BB11C1A92D6607C244AE946D7D57987 /* Dictionary+ParseJSON.swift */, + F27BC79EB536AC04D95AB45AFC79DF62 /* Disposable.swift */, + 45C8975B3A0F0FC888091574CA480B2F /* ErrorDetector.swift */, + 4AB9DF35E0C35EF0253809903201A63B /* ExecuteOnce.swift */, + 8143811FD96617CE2039C18C6580078A /* FetchVRMItemController.swift */, + 06F04EAB91ACF8351163497054232A18 /* FinishVRMGroupProcessingController.swift */, + ED2340697D337C644EC3B3EC1EF6ED35 /* Future.swift */, + 3EE33908A9E097217B79C910158A0E8E /* HeartbeatDetector.swift */, + AA8D78AA287EE9A4800AE58217292B4B /* IntentDetector.swift */, + B00D830C53778B7A30263D266B9C6830 /* JavaScriptObserver.swift */, + C8989EF50C3E962BA75326F12C59D799 /* JavaScriptTelemetry.swift */, + 1D2ECC2490ED8AFEA39D5D62554D6B1F /* MaxAdSearchTimeController.swift */, + BA04477A9500F6D7A8E45616B0E569E1 /* MaxShowTimeController.swift */, + 4EC6531781089A8EF98F99BAF11C1FF4 /* Memoise.swift */, + 8D0CF6B2232E18B3C96E4C86193F2189 /* Metrics.swift */, + 48500F19ADDB5D858A2CCFCD19942D6B /* MetricsSender.swift */, + 430FE541D41B703063A27A90D14A0521 /* MidrollDetector.swift */, + 8336F8499CB16D44455B9D10BDAB06E5 /* MP4AdCreativeController.swift */, + 99E8B7B5FCCA28CC4CA559806CD8A687 /* MuteDetector.swift */, + 7065C6F011B75B341722CDE919FC3FDD /* Network.swift */, + 1BC8F331FC0F9CD91961E9584A9DC84D /* NonEmptyString.swift */, + F516F4059EE3C41041CE7BA734064D28 /* Observable.swift */, + AF66E6E9DC0438FBEE9AF77DE14A21F4 /* Observer.swift */, + A24ACA732C3DFE1D74D0659EA497FAD0 /* OnMainThread.swift */, + 59CB6FAA9AF56573C3833FB22DE7EE0C /* OpenMeasurementContext.swift */, + AC0D17059B4A3787999B845D18407B97 /* OpenMeasurementController.swift */, + C37C9FC0A3A078FA59D3B86FAD4F688E /* OpenMeasurementServiceScript.swift */, + E27AE12A4BEB6ECF0561472F3BCC87FB /* OpenSafariUtil.swift */, + 949CEA9182DF8B907F7B5D9162EB79E3 /* ParseVRMItemController.swift */, + 1A3606D3CBA75E4CCA38E67DC4ECEB32 /* Pipeline.swift */, + 506DF7858B5FD5FA426CC341F20A998F /* Player.swift */, + 0B940473828B911A76CD420D1A2B601D /* Player_VideoEvents.swift */, + 1B0904CB47448F5D4E6AC8F8A185568F /* PlayerInterface.swift */, + EC39F8966ED54045F1D83D3763B59DDB /* PlayerProperties.swift */, + DC697AAAACE190F2FB66CFED1CAEBBEF /* PlayerProperties_Init.swift */, + B532472E47ED45EF0E259AFAA1ABFFCA /* PlayerTracer.swift */, + 73CE698D25BD83DC56819D10851CC914 /* PlayerViewController.swift */, + E72618A482BB0C852DBCD29A9D3B8C67 /* PlayerViewController_Binding.swift */, + 36449BB12FD7459EE745FF5C67A43148 /* PlayerViewController_Clickthrough.swift */, + 04CB85254C317DD2A09CC7A2B1F81A65 /* PlaylistStatisticDetector.swift */, + 42BAE093BE03F8B8CC13C11F0BFF1919 /* ProcessAdItem.swift */, + 7DFA52D4EFBFC5456BF448D03DB27EBF /* PropsMapping.swift */, + BC66F2A8B5B6EDF34D63E051CB6D81E8 /* Provider.swift */, + CDC7331BA5E15E312E118D0428E477DE /* QuartileDetector.swift */, + 094AAE1A85C4FBE704E698FBDBF8F222 /* ReporterTracer.swift */, + F30E910FA727584E123AA34E1CF60467 /* Result.swift */, + A61F8352732DD31CCB759EF347C1870F /* Rethrow.swift */, + EE024C1BB9541FE781071A75F007DD47 /* SkipRepeatsDecorator.swift */, + E67AEE76C5D7EEA3916AC1206500E4FE /* SlotOpportunityDetector.swift */, + 7A4A46D792C8CCCDB9A798319C23FFA2 /* StartVRMGroupProcessingController.swift */, + 9A07428ABBDDD8905B46E749BB74574F /* Store.swift */, + ABBEB252F023A0B798A03A045FB0A646 /* Stub.swift */, + 4689AC7C0054304905979031B880A398 /* SystemPlayerReplayDetector.swift */, + 8571682A4838548A24654C7208B83D54 /* SystemPlayerViewController.swift */, + 07C1A463EAEE0B59E88A0E89031A9266 /* SystemPlayerViewControlller_Binding.swift */, + 8823496B4EB40057F7682B2C034CDF6B /* Telemetry.swift */, + DBA36A1682403007F3A50D1BC0596CBE /* Timer.swift */, + 209FCF3C1887B131F21E5FB7E7031B83 /* TrackingPixelsConnector.swift */, + 2871189A8E8F8DCBE6A90ABB5D8EA042 /* TrackingPixelsConnector_Ad.swift */, + 6DAEC7776C55862876E750FEACA51168 /* TrackingPixelsGenerator.swift */, + 00B6CFE7E7F6F12CA7ED462C1D06B093 /* TrackingPixelsReporter.swift */, + BA3D76B27D547E798DA99CDA05B1B837 /* UserActionInitiated.swift */, + 6D406DFA536D717B46FD529FBA0BF8E0 /* UserActionsDetector.swift */, + B6A7B067302D1217C91F1F39BF1768FE /* VASTModel.swift */, + 47CEEEFD41EA14BEE3C015CE3A125E86 /* VASTParser.swift */, + B7C5CE70F344F924E600C2D8B2817AFB /* VASTParser_Offset.swift */, + 35A03B133D318BBFB939C6D84132B8A6 /* VASTWrapperProcessor.swift */, + C7C0C247770502E9BF9C7B69DDC4DAE6 /* VideoActionsDetector.swift */, + 24421320230B829C904E25A74E154AF7 /* VideoContextPresenter.swift */, + 5C1183763D19B7CC749D911B1BCC366F /* VideoImpression.swift */, + 48A4A8C5A3C7D583FFCAEFE1E8F7315E /* VideoLoadingDetector.swift */, + E86AA001C09C2D512F6176449744A80B /* VideoPlayDetector.swift */, + 652A3033B2C9E0D6EC8A18D24CC49930 /* VideoProvider.swift */, + FF6A17C9892B0251481926AA1AF2D083 /* VideoProviderParsing.swift */, + D2F6D1FB83309A23757064B6B25F52F0 /* VideoProviderResponse.swift */, + 9BE822C569EAF9184A96F18225EA6DEF /* VideoSelector.swift */, + B4E59E6FD0B0C4BFBB7E0221E17C0CFA /* VideoTimeDetector.swift */, + 75D46A82A2541597AC2FF03DAFFE9173 /* VPAIDAdCreativeController.swift */, + 4E5DC228BF87087E5913738B5B594E8A /* VPAIDEvents.swift */, + D991A1FDDC54C6EE2596B40B7A706E1C /* VPAIDMessageHandler.swift */, + 054E0C60F3F76FB3C2D3738F157D18C4 /* VPAIDProps.swift */, + 9CF76D0086E98DB22D803526733F1CC4 /* VRMDetector.swift */, + E779BB81CD7A7993B58A67FF97ECCF5A /* VRMItemController.swift */, + 1616B1C185878594C5B5C7A5FB28FD76 /* VRMMidrollProcessorController.swift */, + BEA0BF08850706B54F76DCB759A7F4B7 /* VRMPrerollProcessorController.swift */, + 8741F2E90332E8747958B21645DBCF03 /* VRMProcessingController.swift */, + B2455CC47DC7111B35D5A43644731415 /* VRMProvider.swift */, + 561A9475F0DB349710A588E9F4C79A49 /* VRMRequest.swift */, + 25E6DAB0360283F153BFEB47269A97E3 /* VRMRequestController.swift */, + 2546F3AC631A153E0D85FB15DA1E79D1 /* VRMRequestDetector.swift */, + 677340E664314FA33C5A2949DB5D5746 /* VRMSelectFinalResultController.swift */, + 2D59F17A202195C7AF92E46394929071 /* VRMTimeoutController.swift */, + 0D09157E18B580F9A0C29349A33C35C4 /* VVP.swift */, + D5F315E5F3548741107931C1A14E1D7E /* VVPSDK.swift */, + D4FF8794DA1BCA344E18875AF13D6229 /* VVPSDK_Version.swift */, + 680F847DBB3093378AEEB56B1AC90165 /* VVPSDKPlugins.swift */, + F97179D00692409596EE4332EC28BF0D /* WebviewViewController.swift */, + E84D116294F68DF4023DA6E7D078758B /* XMLParser.swift */, + 9EF9B06501D4D64080A6C7CF361F4A58 /* Support Files */, ); - name = "OMSDK-Oath2"; - path = "OMSDK-Oath2"; + name = VerizonVideoPartnerSDK; + path = VerizonVideoPartnerSDK; sourceTree = ""; }; - 8301A7E7C3B5F4C09AD432069269DB00 /* PlayerControls */ = { + 9EF9B06501D4D64080A6C7CF361F4A58 /* Support Files */ = { isa = PBXGroup; children = ( - 3EA4C6ECC6D31F0FF4BA1BF40329BC9C /* AdVideoControls.swift */, - E213B6FA430B7E01405FC1F578A03884 /* AirPlayActiveView.swift */, - 5851A4EB47BE6E9A1D0038CFA0E2E78F /* AirPlayView.swift */, - F851642EED02BB9C483C8068E23A9270 /* AnimationDelegate.swift */, - A8B9A3EAC983A1F3AD4EEF2F10DEFC4F /* Autogeneratable.swift */, - D921EEA1FDC52E6712233D73CFE9D0CA /* Codable_PlayerControls.generated.swift */, - 9DC0BF97B82A8D2D95082A17177C5DE2 /* Color.swift */, - 653008DFF69EDD47CFEDD60277BAB718 /* Command.swift */, - 8FAEF47788187F0CD57AC4D4CF6599CE /* ContentControlsUIProps.swift */, - 91EDACAD20EDFF844EF221278166B3D0 /* ContentControlsViewController.swift */, - 9D82CAC87CFDBB09552BB04C050C8350 /* ControlsVisibilityController.swift */, - 45B8CC8C4DFFA0CA503B15C61B25D46F /* Defaultable.swift */, - 1476B71504A734BE72060B7D13F68196 /* DefaultControlsViewController.swift */, - 5A30F7CC00D7A8023A5E11DFDB2693CA /* EnumPrism_PlayerControls.generated.swift */, - 6CA40135221D1AD8B3102017C4C97F6C /* LoadingImageView.swift */, - 093B6082E73E5596B3859CAB3C9F03CE /* Props+Autogeneratable.swift */, - CBE2DC1A2F83392F9BDD282859EB7524 /* SeekerControlView.swift */, - B9FB50E7B0F3ACA1BD021113B4118A08 /* SeekGestureRecognizer.swift */, - AF4DFBF6B322DAAC6F3C7584F66B354A /* SettingCell.swift */, - DF97835F70ADC72148DDE977711C16B1 /* SettingHeaderView.swift */, - 3218AD1998D67188CEED8A2C62E26403 /* SettingsViewController.swift */, - 6FFFE0E92CD798E90F0EDA7EB5C36763 /* SideBarView.swift */, - C3F64BD34BB3CAA8B72641992CBEB342 /* TimeFormatter.swift */, - 5E4864552EC336B4FE0A5EF2E1CB7811 /* Timer.swift */, - B82DD30BE9F79FA625F8AE6D0706E90E /* Utils.swift */, - 73045AC49A8818FCD490E1D552D6CF3D /* Resources */, - 0C67E4E2DBBBDEE2138BD3FC19BE7054 /* Support Files */, + E5D83140F5B04D7A6D7364CE06AD080C /* VerizonVideoPartnerSDK-iOS.modulemap */, + 21028DEC97602C707A154D6AA36F7A46 /* VerizonVideoPartnerSDK-iOS.xcconfig */, + 33C70C25279B08C42B2B59D196E66414 /* VerizonVideoPartnerSDK-iOS-dummy.m */, + 44D4B4D227FF9576ABED24E37CD2D02C /* VerizonVideoPartnerSDK-iOS-prefix.pch */, + E2E9478652995245D2EC22153ED88794 /* VerizonVideoPartnerSDK-iOS-umbrella.h */, + 481CD5ED4BE0C17A8AAC450B33002442 /* VerizonVideoPartnerSDK-tvOS.modulemap */, + D9510DD84940922624A9D77C93A18633 /* VerizonVideoPartnerSDK-tvOS.xcconfig */, + B82D2E1F35C6422802B38AE57C957AB7 /* VerizonVideoPartnerSDK-tvOS-dummy.m */, + 1F0F191BD54CAA98B8C30AF42AA54701 /* VerizonVideoPartnerSDK-tvOS-prefix.pch */, + 05C134C8F64221B7772BF1CF91859388 /* VerizonVideoPartnerSDK-tvOS-umbrella.h */, ); - name = PlayerControls; - path = PlayerControls; + name = "Support Files"; + path = "../Target Support Files/VerizonVideoPartnerSDK-iOS"; sourceTree = ""; }; - 994A6DD04E1D206E692678F9D3910683 /* Support Files */ = { + 9F27F797FBA08FAFB24FAD33A3868AAD /* Pods-Tutorial_tvOS */ = { isa = PBXGroup; children = ( - 0D190824D7558355BE2803D5F72C69D8 /* VideoRenderer-iOS.modulemap */, - 826EC2FC2BC52DFDD904498123F0A178 /* VideoRenderer-iOS.xcconfig */, - BE2B607441CD8C92D380169E6DDA6AAD /* VideoRenderer-iOS-dummy.m */, - 095F18C2C4AE4DC0981B53233B8DE5E6 /* VideoRenderer-iOS-prefix.pch */, - 5DCD449B7D6FB8F4D06C8735C5DC05C7 /* VideoRenderer-iOS-umbrella.h */, - 56DFC04F71E00BA0F5E9657CDE23E312 /* VideoRenderer-tvOS.modulemap */, - 9C9F32B6F133AE31003372A25423ABB7 /* VideoRenderer-tvOS.xcconfig */, - 527E35CB6F5B14E41D788869CFCB38F9 /* VideoRenderer-tvOS-dummy.m */, - 576A9B8EC5D87EC128DAB1B1C526FF76 /* VideoRenderer-tvOS-prefix.pch */, - 66821E99C6E07E9A39389B0C932EE183 /* VideoRenderer-tvOS-umbrella.h */, + 74CBB90085492AD5C7AA4839CC8046CA /* Pods-Tutorial_tvOS.modulemap */, + 344DA0286F0F8F9C4AD3682B575D91FC /* Pods-Tutorial_tvOS-acknowledgements.markdown */, + 7780B8EA9AE4AFF085FF9E0D0592F6F8 /* Pods-Tutorial_tvOS-acknowledgements.plist */, + 1F23F96C28DF5C30FEF8ADA9C980CCFA /* Pods-Tutorial_tvOS-dummy.m */, + 3DAA41B3274DF46E1AFE15D42D9B2A5D /* Pods-Tutorial_tvOS-umbrella.h */, + 2A08759625656C820C43E5B36A77E47C /* Pods-Tutorial_tvOS.debug.xcconfig */, + 428E11D195B982CF6C0B6F47698DBA9F /* Pods-Tutorial_tvOS.release.xcconfig */, ); - name = "Support Files"; - path = "../Target Support Files/VideoRenderer-iOS"; + name = "Pods-Tutorial_tvOS"; + path = "Target Support Files/Pods-Tutorial_tvOS"; sourceTree = ""; }; - A502F061A7281A6C6427631ECD545E07 /* VideoRenderer */ = { + BB460E83738D340F644EDBDF72897C78 /* Pods-Tutorial */ = { isa = PBXGroup; children = ( - 2B008AB6E6681D244A054584E886ED1F /* Action.swift */, - D481555CFF1973E60827AB07E878DC7B /* Camera.swift */, - 42D4A577AEB49F55EA13D04331B0F5C9 /* MediaCharacteristicRenderer.swift */, - B5AF3EF885CF9EBCAB773C9CBF143175 /* PictureInPictureControllerObserver.swift */, - 8557DD8B41AF0A9A27E0BDA03453D94B /* RendererRepository.swift */, - B89045B69B19780EB8C0D427DE59B2E0 /* SeekerController.swift */, - 57C586F3179E8D955CCFCBAA8E680BA7 /* SphereVideoStreamViewController.swift */, - 7C0E2B7DF9056411131588C3D31055AB /* SphereView.swift */, - 895EF76FD2DEE6AA667425569B02ADCB /* SystemPlayerModel.swift */, - DBCC060C24A77FEE9187EF4352F472D6 /* SystemPlayerObserver.swift */, - B05BA6B252496D76FA213610874800F3 /* VideoStreamViewController.swift */, - 994A6DD04E1D206E692678F9D3910683 /* Support Files */, + A2BD7A15AD8CAA610F5E035740B09214 /* Pods-Tutorial.modulemap */, + A828D10861EA9A9D0D961C943B378027 /* Pods-Tutorial-acknowledgements.markdown */, + 265CBE33A29B95DD49CAADCF45E194CB /* Pods-Tutorial-acknowledgements.plist */, + 01913AC15AC4F40244C808D2725F9FEA /* Pods-Tutorial-dummy.m */, + A6D01C33BE1B1C3B72DD1820648DF703 /* Pods-Tutorial-resources.sh */, + A3B76CDEF86878DB87E16B0E1014779F /* Pods-Tutorial-umbrella.h */, + 8BB06B45928AE54BC4AB0D60A9441E11 /* Pods-Tutorial.debug.xcconfig */, + DD3703C4CCA1948595C33E144DEBC84A /* Pods-Tutorial.release.xcconfig */, ); - name = VideoRenderer; - path = VideoRenderer; + name = "Pods-Tutorial"; + path = "Target Support Files/Pods-Tutorial"; sourceTree = ""; }; - C75969F740DB8C4AD2B4AD643C4C7A20 /* Frameworks */ = { + C26ACBE12124C78D20C0FFF395114CAA /* Support Files */ = { isa = PBXGroup; children = ( - 3756849259A61682C2A9E2F7B957720C /* iOS */, - 6E82891DFAC82BF148C93ADB5D60A828 /* tvOS */, + 6635C0DFD349C624B963179F82356682 /* OMSDK-Oath2.xcconfig */, ); - name = Frameworks; + name = "Support Files"; + path = "../Target Support Files/OMSDK-Oath2"; sourceTree = ""; }; - DE74B55C44F0E550E4223A689528CF56 /* VerizonVideoPartnerSDK */ = { + C4E9ED74430FA61FACAD3C016C62D49E /* VideoRenderer */ = { isa = PBXGroup; children = ( - 22B3033FDC26C5EA83524CDC956AB10A /* 3secPlaybackDetector.swift */, - 2B7A13252E76434CAE240DF5FDF6A803 /* Action.swift */, - 0BCC2D8831B9D16ED8EC0BF7B9ECD68C /* AdClickDetector.swift */, - 0A2A26ABD658D25D4E442B40F361AA0B /* AdErrorDetector.swift */, - 6EFA39CAAC71F8686A1B5B4B1932240F /* AdManagerPresenter.swift */, - 6B6BBDCF89125EFE1CEAF85D413FA8A2 /* AdMaxShowTimeDetector.swift */, - 1B179427181B3AE68DCC0385BC574F87 /* AdMetrics.swift */, - EF62C2FA51F371B761239A6F4237030A /* AdStartTimeoutController.swift */, - 62D2F928A95A153287553E0F2C52B5EC /* AdURLProvider.swift */, - ED32760CD4C760EDD487654D2FBB7488 /* AdURLProviderProcess.swift */, - 7262EE76D79C6E07F4892C2ABEE2E868 /* AdViewTimeDetector.swift */, - 3617B5CDF8A19A1B95090189836DD71D /* AdVRMEngine.swift */, - BC6A3C2D0EADAEB667FEEFE1FA946048 /* ApplyDecorator.swift */, - F7569F4011689A193E8AC7E9AC31675E /* Autogeneratable.swift */, - 379EE81D1FE68F7A64AFCA5A1F97168B /* BufferingDetector.swift */, - 591465E5AC2A1E0E8A1F7A39A4ACAEA3 /* BufferingStart.swift */, - E2498FFB356547D3393E6AB2919DFC72 /* Configuration.swift */, - CB9B1E88711B17F9922543C2A2F45667 /* ConfigurationParser.swift */, - 305B028A0A4DD7F18F8321CFEE0FDBD3 /* ContentControlsViewController_Binding.swift */, - 460EE4014DF508E80E9909C09A765B56 /* Context.swift */, - 1EF871486FBC7DACBF9496DA298FD380 /* ContextStartedDetector.swift */, - E3EC4B7840232ABAC87ABCC542A8A1B4 /* DecileDetector.swift */, - 5E2C03D6509FB40036F616C507D86022 /* Dictionary+ParseJSON.swift */, - 5C59DDE1D58FDAED51F4502FA0AF1C80 /* Disposable.swift */, - 52B058E513D4B95189C2216295A4F6BB /* ErrorDetector.swift */, - 6410E471D1AA561B297ABE0AC6AEA0D6 /* ExecuteOnce.swift */, - 170C4A929624ABA3F1B5147254FBBBBB /* FetchVRMItemController.swift */, - D357A84012B47B909CC561C5B448C965 /* Future.swift */, - 4321E400DDE66BAAE0A740DD99522742 /* HeartbeatDetector.swift */, - 19F6264CC0766D089541CDF6CEF3D79E /* IntentDetector.swift */, - 7753BF54C19FA91D8D8C1291B6D3D94C /* JavaScriptObserver.swift */, - DB47FFE162435F98B1E42218D37D636C /* JavaScriptTelemetry.swift */, - 9D62111FA2161A911C4D257294125EC6 /* MaxShowTimeController.swift */, - 54A2866430B6EF9B4B6981E56B8FCE0B /* Memoise.swift */, - F9C8E0F248527D418766AEE0447745BE /* Metrics.swift */, - D2F23D4A4092AFBBB20BDF9E97B1A15E /* MetricsSender.swift */, - EB771E978CA41E639189F89D52A9C09A /* MidrollDetector.swift */, - 1651E5B23C9B5C51119273716C0BC1E6 /* MuteDetector.swift */, - 05934FAF0539FAF4013B7453CFA7BBB5 /* Network.swift */, - 660B5B38F90681D95AC2007826F46171 /* NonEmptyString.swift */, - 07B08EC998BDA37104785E3CD5D2C180 /* Observable.swift */, - DDE1011BBF5FC1B0E35740B113722D46 /* Observer.swift */, - 5C8C9ED50FCB47458EBAF2F21528DA7F /* OnMainThread.swift */, - 0EBD64094E86036C2A92C9063BFC3426 /* OpenMeasurementContext.swift */, - C44F0E9AF2959760F4495D3AAB757156 /* OpenMeasurementController.swift */, - 82EF3817A266B768D751F271084995E6 /* OpenMeasurementServiceScript.swift */, - 75F8A6BC04E4D383B72DBFC7BF008044 /* OpenSafariUtil.swift */, - 8D66C71FA910DA59C2DD6FE366493616 /* ParseVRMItemController.swift */, - 1D87489F4BBC6FE65A87411F99402FA8 /* Pipeline.swift */, - ADBB37257086C69BE2D3A45E38621509 /* PlaybackCycleDetector.swift */, - 8D297474849F896A9CCDBFF4D43A7480 /* Player.swift */, - 2D928F9ED58045C85847C06519DAA55F /* Player_VideoEvents.swift */, - EDA3FC630C5849D50050741BECEFA3CE /* PlayerInterface.swift */, - 8590C1D7E3789687685DBD5D7CF90FB6 /* PlayerProperties.swift */, - 74F7848AF57F43793F63A03F543441C9 /* PlayerProperties_Init.swift */, - 7181A94DC797B9E262A7B2ADA8EC979E /* PlayerTracer.swift */, - 12BC3A3102DCD9E277BE83EED4BA3EE6 /* PlayerViewController.swift */, - 3302B6C31D787393624767A0EEA7D44D /* PlayerViewController_Binding.swift */, - 157C59D9EEAF74FB49DF533A4A0EB96A /* PlayerViewController_Clickthrough.swift */, - 461F3DE678AEF0C1034F0623ABB56D4C /* PlaylistStatisticDetector.swift */, - 17E5691970CAF01CE5E29A902E14A0C2 /* ProcessAdItem.swift */, - A64C0FABCA9E69947EF243310565FDFA /* PropsMapping.swift */, - 00E473D2D02ED743BBA2265D87BA7287 /* Provider.swift */, - 99BB873A027712E55EE7035DA0FD8309 /* QuartileDetector.swift */, - 767D9ED69DF4003267430D9F61522F96 /* ReporterTracer.swift */, - 830BD7927F5A5B95F0FC270FA5349567 /* Result.swift */, - AF60D4731856EC5C6CDDD8A899F613A2 /* Rethrow.swift */, - E6907CEA46BBB8EC1FD145706ADFD70D /* SkipRepeatsDecorator.swift */, - 062D2F46B54C74934ED7F20311DB9D55 /* SlotOpportunityDetector.swift */, - 580C36A4C35AD6E45CD8B40C0E0361CF /* StartAdProcessingController.swift */, - 0EA4FAF0B10D00CFABACD0CBB6149805 /* StartVRMGroupProcessingController.swift */, - 325E13FDD260C6ABBA60B2A93B136F58 /* Store.swift */, - 149FDBE670D31BBD5C59691364C96F07 /* Stub.swift */, - C1C0D528D7B2F30BE1DA9B1689C56FD2 /* SystemPlayerReplayDetector.swift */, - 5508024C435694DF096810975436E9FB /* SystemPlayerViewController.swift */, - 8153174B6D0D53E9A16F820816F5080F /* SystemPlayerViewControlller_Binding.swift */, - 64FA5380686BEFF579D227DE32B9EC70 /* Telemetry.swift */, - EFD4E2A1F2C8543C4DD923E3EB9CE476 /* Timer.swift */, - 7E3856B1600EE762699254B86EB0F864 /* TrackingPixelsConnector.swift */, - 2F47F287C07EF34BD266267D64BCEC15 /* TrackingPixelsConnector_Ad.swift */, - C8BFD14F7BCB4F454474DD557EC8FB2F /* TrackingPixelsGenerator.swift */, - 34D2D12D0F6E4DC32ACB7C8A4C5909C0 /* TrackingPixelsReporter.swift */, - 26D6DCCC3E2FB48015E6BDC2891B7DF4 /* UserActionInitiated.swift */, - 4447F37C1E639EE2BD134D0A4687AE98 /* UserActionsDetector.swift */, - 79C4A6EA6FE7CBB68C15ABD5DA32F072 /* VASTModel.swift */, - 0C7E8BBB6BD3ED268CACBA696E83C390 /* VASTParser.swift */, - E638C9D630901ED04E17BD40FA99DF35 /* VASTWrapperProcessor.swift */, - 11907EA3ECC1DB9250FBE5CE3CE0C536 /* VideoActionsDetector.swift */, - 904616F21DAB78E2183750398701150C /* VideoContextPresenter.swift */, - C2FF21C1967303926D3FC8E71602DEA8 /* VideoImpression.swift */, - A1AB631583E8AD76A39F6CC7107F7982 /* VideoLoadingDetector.swift */, - B413C6D53F3C0197CCB7A7813A8C44A0 /* VideoPlayDetector.swift */, - 17EB68FFB215E0C081A98082878FA2AE /* VideoProvider.swift */, - D3BE20027FBB749F3E16F5B1B2A2CB98 /* VideoProviderParsing.swift */, - 35685494010513F5E016E563F55A3A1A /* VideoProviderResponse.swift */, - D30BEFD5ADDA7C97D87EFF200546858D /* VideoSelector.swift */, - 79EA22D311E6C24766AEB0E0C0F7E3B7 /* VideoTimeDetector.swift */, - 7B599A9D718C8A78602A75080BFA991D /* VPAIDEvents.swift */, - BF741AE1D30E4B59132CC68D13FB30E5 /* VPAIDMessageHandler.swift */, - 8AF4B34936F1EB07EFDE7EEBE17B894F /* VPAIDProps.swift */, - 956CA8903BE26CEB879A446119E31306 /* VRMDetector.swift */, - 85B6A00D3FF5A49ECF73B009847F2D36 /* VRMItemController.swift */, - 51A0FDF6422A78BE1D7C8EA259117B83 /* VRMProvider.swift */, - 7F5ACB7DBB7483D437A0956F2D5BCAFE /* VRMRequest.swift */, - 7E809348BADE894A19CE912BEA3D0E70 /* VRMRequestController.swift */, - 7F9F492419060418D4B6B463F6819EC0 /* VVP.swift */, - C9EA918DED9C206E59D1F3D951C28CB6 /* VVPSDK.swift */, - 833DB4C3BF586BEDB0DEFB403B05442B /* VVPSDK_Version.swift */, - 55C7CE7F718DD80837566C8586ADF744 /* VVPSDKPlugins.swift */, - 3F98CCEF67CF63C75E7D83A6A8F0D303 /* WebviewViewController.swift */, - E59632BF977DAE7576AFBB52C77BB28F /* XMLParser.swift */, - 0E170579A85D2A218CF3993663482045 /* Support Files */, + 7FCE2F76F140961737078289D1609531 /* Action.swift */, + 91D95986C627EE7612B3198DE338A18A /* Camera.swift */, + 544EF9941E6FF56B467B8D851A1DAC51 /* MediaCharacteristicRenderer.swift */, + 8B5646CA166C043A646A28B52C313296 /* PictureInPictureControllerObserver.swift */, + 16A3E6249C0614E92710ABE781A2E24D /* RendererRepository.swift */, + 9BBD6341619BC902CC7C4B475B68E1D9 /* SeekerController.swift */, + C63818EE6B6EE8F45CD2F6F1CD38C7F5 /* SphereVideoStreamViewController.swift */, + AA4D79DE44B9B97BE67427A91A2350DD /* SphereView.swift */, + 3D378FEF89722949A528A121CAF5B977 /* SystemPlayerModel.swift */, + C38CF208EE1D98ADB05F98D536478A21 /* SystemPlayerObserver.swift */, + 45B1D6C4FAAAE1B422D83F35071916E1 /* VideoStreamViewController.swift */, + 911F92BAE91AD28C677BF9EB7A71F799 /* Support Files */, ); - name = VerizonVideoPartnerSDK; - path = VerizonVideoPartnerSDK; + name = VideoRenderer; + path = VideoRenderer; sourceTree = ""; }; - FA9F0EDAB0F4B4BBBB250799EDEDA7E6 /* Pods-Tutorial_tvOS */ = { + CF1408CF629C7361332E53B88F7BD30C = { isa = PBXGroup; children = ( - 6BB4ECE0E13789F9094F30C67F378EF0 /* Pods-Tutorial_tvOS.modulemap */, - 6CDE38D196D7DB3FC1159A5FA1CF84D2 /* Pods-Tutorial_tvOS-acknowledgements.markdown */, - 969CE127A493C1E565C6650EB6552E94 /* Pods-Tutorial_tvOS-acknowledgements.plist */, - 6A74691E00AE97156DF472620CEAA522 /* Pods-Tutorial_tvOS-dummy.m */, - 229FFA58160C087860E593482727B8B0 /* Pods-Tutorial_tvOS-frameworks.sh */, - 40A5518617C429C4163D6E87360165C0 /* Pods-Tutorial_tvOS-resources.sh */, - E695600957630B8096B0C777B2210AA1 /* Pods-Tutorial_tvOS-umbrella.h */, - A26518A7C487E4AE339B4662C69D3FCD /* Pods-Tutorial_tvOS.debug.xcconfig */, - 511ACE7A91D3BB74B20359DDEB5FE58A /* Pods-Tutorial_tvOS.release.xcconfig */, + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + D89477F20FB1DE18A04690586D7808C4 /* Frameworks */, + 0ECFD1E51420AA83ADF3225782EAEAEA /* Pods */, + 8C2238C4E4B97A378BC4D5CA8D85C24B /* Products */, + 7E0CEB80EC061A46964F3337CA1DF0A0 /* Targets Support Files */, ); - name = "Pods-Tutorial_tvOS"; - path = "Target Support Files/Pods-Tutorial_tvOS"; sourceTree = ""; }; - FFEAA1C54C74260A025645BFF427D917 /* Targets Support Files */ = { + D89477F20FB1DE18A04690586D7808C4 /* Frameworks */ = { isa = PBXGroup; children = ( - 5A8FA2E18D520A1C870A28BE590AC3E4 /* Pods-Tutorial */, - FA9F0EDAB0F4B4BBBB250799EDEDA7E6 /* Pods-Tutorial_tvOS */, ); - name = "Targets Support Files"; + name = Frameworks; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 15FD041EE369CF0F7F8BAA3806FEE6DB /* Headers */ = { + 25B7739E8BD6D7527352238177FAF898 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 2FA1201B378FCA368197FEAA8104B184 /* VerizonVideoPartnerSDK-iOS-umbrella.h in Headers */, + 14E787A244DA8C89A50C36ADE98D7E4B /* VerizonVideoPartnerSDK-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 2C925F45679313B72D15124A0BBBADF2 /* Headers */ = { + 2C52B33BB173218D2A31F442E53D344C /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 0FD3FF8621F8E213E1D993A48EFC7560 /* VideoRenderer-iOS-umbrella.h in Headers */, + F1B2BE81D04B461C88F5373FDA90AE4D /* VerizonVideoPartnerSDK-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 4F8092D3A165432AF2A415A99D7D9566 /* Headers */ = { + 3D66CD3A2BED0ED5727BE02379CF64FA /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 1E86ACFD2083134368B915B7B7CE34F0 /* VideoRenderer-tvOS-umbrella.h in Headers */, + 49E523F23F8770CA0F5DC40B76381F36 /* PlayerCore-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5AC5A151D4C0A125A6E62BC4393461E8 /* Headers */ = { + 46E1E01F0548EA241B3AB311DF3A540A /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - D55BFF83F9360DC6775F2DF5B1927923 /* PlayerCore-iOS-umbrella.h in Headers */, + 2305DC3A1E81786C48FBBDCA24A4B3C4 /* PlayerCore-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 63F74E2CE99E80B40742A366C662D55E /* Headers */ = { + 55C1631D590340E2D1A0CBF1E98F4C35 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - C330EC2C3E2279565C2845C6F848CBD6 /* Pods-Tutorial_tvOS-umbrella.h in Headers */, + 3A66EBAAE60ACDFB255013CE4BAFBEDE /* Pods-Tutorial_tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9C2D99A8C1BFE868F5AF6568BABC255D /* Headers */ = { + 81AA9BB6624A75F477A2558CFF803EFB /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 8AD59AD4073687CEA9423E6E2D3CB44C /* PlayerControls-umbrella.h in Headers */, + 5BF0E9B0E2D3A77CE296EFF928DC9042 /* PlayerControls-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - B3B0E07CE11ACF6F0B7E7FD3248DC91E /* Headers */ = { + 8968EA408E0EEB3E1A98166A6272F568 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 7BC056B0698C80C217D65870D675756B /* Pods-Tutorial-umbrella.h in Headers */, + B8E1DBF0C55F40CD0A74891B43AE032D /* Pods-Tutorial-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - C9FA927F2F2EA40FFC059C6898AB414C /* Headers */ = { + BBD6DACDEE39F7D1E483759F773E897F /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - FC12CB09A9840A1E90AC441416A6E655 /* VerizonVideoPartnerSDK-tvOS-umbrella.h in Headers */, + 213D510C04E76E7C1E312331BA1B1DE0 /* VideoRenderer-tvOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - D351B455B3779A18EA87B679AC426B49 /* Headers */ = { + CD48F1F1799C3F869A19F2B8FA03D8EB /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 0EEA5FA91A4893DE515EEC22A6623163 /* PlayerCore-tvOS-umbrella.h in Headers */, + 80A8FC45A05C070B4699773F5F5087FC /* VideoRenderer-iOS-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 008E740531CFFBBFDC9557C066CFA569 /* VerizonVideoPartnerSDK-tvOS */ = { + 14D8ADF2D597DE0F56D58F089831C40F /* Pods-Tutorial_tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 924E9A4B686D0D05A28145D96100E355 /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-tvOS" */; + buildConfigurationList = 7E1B257ADABAB78A1C76B9C3B0432DD6 /* Build configuration list for PBXNativeTarget "Pods-Tutorial_tvOS" */; buildPhases = ( - C9FA927F2F2EA40FFC059C6898AB414C /* Headers */, - A469DFDE7B19D3DC8CE8C6C3C455B5AD /* Sources */, - 6D23995A891B2AD835ED6ECD392CFE4C /* Frameworks */, - 8006D8579C55F3D9C15AB6C0DF5253C2 /* Copy generated compatibility header */, + 55C1631D590340E2D1A0CBF1E98F4C35 /* Headers */, + 0049F93E7DE1EFACA6EA7C90B08051D3 /* Sources */, + 6985815C6A8EE5AC2A524099868F0806 /* Frameworks */, ); buildRules = ( ); dependencies = ( - D1B5FC635ADA0D67A78C54B907EC1C29 /* PBXTargetDependency */, - CA9A82F92C34BC9D9088DEAFDA566A69 /* PBXTargetDependency */, + 1939AD0514FBA36D3957650440D6CEFB /* PBXTargetDependency */, + 33A1E7D0EE2DB1AD943A3D9D50FC0366 /* PBXTargetDependency */, + FB478531E2EB960AD72C0FB08366267E /* PBXTargetDependency */, ); - name = "VerizonVideoPartnerSDK-tvOS"; - productName = "VerizonVideoPartnerSDK-tvOS"; - productReference = 45C9079EF3F8CE6F85083DFD3750A2E9 /* libVerizonVideoPartnerSDK-tvOS.a */; + name = "Pods-Tutorial_tvOS"; + productName = "Pods-Tutorial_tvOS"; + productReference = 5C06F11396D553D7D1AA62B99DE5FDA6 /* libPods-Tutorial_tvOS.a */; productType = "com.apple.product-type.library.static"; }; - 0F0BFA4FAA6698905E081CA89D51B7DE /* VideoRenderer-iOS */ = { + 287CB9858CF055FA9ADA55859EFB9F17 /* VideoRenderer-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 49A689110C4C591C1836249D3EB13108 /* Build configuration list for PBXNativeTarget "VideoRenderer-iOS" */; + buildConfigurationList = 1DC55AB1E3034FC973CAFCCBD0F334F7 /* Build configuration list for PBXNativeTarget "VideoRenderer-tvOS" */; buildPhases = ( - 2C925F45679313B72D15124A0BBBADF2 /* Headers */, - 5D1AE321F7DBF3DA443857C2122EA084 /* Sources */, - 5E46FE1A8750AB805AD9DBB64DE8C2D6 /* Frameworks */, - FB2B421E7F5EFA14E563A825E58F4C6C /* Copy generated compatibility header */, + BBD6DACDEE39F7D1E483759F773E897F /* Headers */, + 417D518F584E1B5F0EC84D47010AEDFB /* Sources */, + 51C1FEE66AF9959C295E855EAB85E002 /* Frameworks */, + E9C7D9E9D30037EBCA35D90670EE440A /* Copy generated compatibility header */, ); buildRules = ( ); dependencies = ( ); - name = "VideoRenderer-iOS"; - productName = "VideoRenderer-iOS"; - productReference = 13A765C219566708BFA87587CA8BDB19 /* libVideoRenderer-iOS.a */; + name = "VideoRenderer-tvOS"; + productName = "VideoRenderer-tvOS"; + productReference = 6F2EB17A21177241791F90E41A92A695 /* libVideoRenderer-tvOS.a */; productType = "com.apple.product-type.library.static"; }; - 2F75FEE377AD7BAF8C565B850380995F /* PlayerControls */ = { + 4E9E5A2F313892BD91A557840B32810D /* PlayerCore-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = D4BD81EABB04ADB43794DA92AD9DBC4D /* Build configuration list for PBXNativeTarget "PlayerControls" */; + buildConfigurationList = 3817609F69A3D0D5D0EB34FF147C2D7E /* Build configuration list for PBXNativeTarget "PlayerCore-tvOS" */; buildPhases = ( - 9C2D99A8C1BFE868F5AF6568BABC255D /* Headers */, - 2065354661A760C2F9AC023941E3CDA0 /* Sources */, - 96132B7E90B6B2B9B10DBEBECE94D6C4 /* Frameworks */, - 9C04FE956229201CC19DFADE2FAAC722 /* Copy generated compatibility header */, + 3D66CD3A2BED0ED5727BE02379CF64FA /* Headers */, + 2DCC39611D52333F530CAA5C2E6918E4 /* Sources */, + 0BACC0214ED283CC300985F6E6A20043 /* Frameworks */, + 8F5F99BF1AF2C46254E8C32760A29760 /* Copy generated compatibility header */, ); buildRules = ( ); dependencies = ( ); - name = PlayerControls; - productName = PlayerControls; - productReference = 333B54DA2691BCC6B172C9B06241D4DD /* libPlayerControls.a */; + name = "PlayerCore-tvOS"; + productName = "PlayerCore-tvOS"; + productReference = 3A5E7D2920A3DFA410E85FB2721C11B7 /* libPlayerCore-tvOS.a */; productType = "com.apple.product-type.library.static"; }; - 3D74E7125090C881A85C8E0A6D76E044 /* VerizonVideoPartnerSDK-iOS */ = { + 84796276770B19A14E8D50F9413AFA89 /* PlayerCore-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = EC5386158BED4B20E7E958286F049599 /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-iOS" */; + buildConfigurationList = 00B39BB74E4079A2A1C2E9D4BD596348 /* Build configuration list for PBXNativeTarget "PlayerCore-iOS" */; buildPhases = ( - 15FD041EE369CF0F7F8BAA3806FEE6DB /* Headers */, - 35C02D4DC8520FA884941C9D1AA7015C /* Sources */, - 38F62E34A4828EE2BA0AD65FACDEB3FE /* Frameworks */, - B1FAB99773A48BCC10FE52E34B03E1A5 /* Copy generated compatibility header */, + 46E1E01F0548EA241B3AB311DF3A540A /* Headers */, + 2384027E5F6418381E3F936B51E640A4 /* Sources */, + 48B56308A3F3CDA182C47BFDF578A55F /* Frameworks */, + 7AB5E228564B1262CC81C2D7D5F852F0 /* Copy generated compatibility header */, ); buildRules = ( ); dependencies = ( - C7502599253C3157B01E2395D4F2F957 /* PBXTargetDependency */, - 027BD32313D3464B94C7D176CCABFB97 /* PBXTargetDependency */, - 9C966BCD487F56596AC20B7B7BB2185E /* PBXTargetDependency */, ); - name = "VerizonVideoPartnerSDK-iOS"; - productName = "VerizonVideoPartnerSDK-iOS"; - productReference = 05EF839117BFA04DA2CBF757037FF5E1 /* libVerizonVideoPartnerSDK-iOS.a */; + name = "PlayerCore-iOS"; + productName = "PlayerCore-iOS"; + productReference = 796DF63865035761781E66AD55C79DE6 /* libPlayerCore-iOS.a */; productType = "com.apple.product-type.library.static"; }; - 54E0B6CE24E18E8F72C5D506091438D3 /* PlayerCore-iOS */ = { + B4AD1D701403773BC1EBD43142F45045 /* VideoRenderer-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = FE280C024E74424199E579779CE5C4DE /* Build configuration list for PBXNativeTarget "PlayerCore-iOS" */; + buildConfigurationList = FB87609849C98DCA66FCF9EDE29F8610 /* Build configuration list for PBXNativeTarget "VideoRenderer-iOS" */; buildPhases = ( - 5AC5A151D4C0A125A6E62BC4393461E8 /* Headers */, - 8B6327A0D004F52F79938FC78E5837FD /* Sources */, - 66C6280145508DB8AF4C49354DC370CC /* Frameworks */, - DF605CED3E174B1B6D4B448EC9BDDFDE /* Copy generated compatibility header */, + CD48F1F1799C3F869A19F2B8FA03D8EB /* Headers */, + D9DE844943D5B59483B45B6FB7DF943D /* Sources */, + 16C653B4A3E7AFF36C9F4BF2FE55F89B /* Frameworks */, + C8DEB12D098704F888E1F09A0FEF6732 /* Copy generated compatibility header */, ); buildRules = ( ); dependencies = ( ); - name = "PlayerCore-iOS"; - productName = "PlayerCore-iOS"; - productReference = 3C3C4F8D8A243BAD54156DB670FD1908 /* libPlayerCore-iOS.a */; + name = "VideoRenderer-iOS"; + productName = "VideoRenderer-iOS"; + productReference = 47B60C98F9B679E2EB1FC340E822F834 /* libVideoRenderer-iOS.a */; productType = "com.apple.product-type.library.static"; }; - 9A103A789D7B4C881F5987891104926F /* VideoRenderer-tvOS */ = { + D8D4BC7B06EB457CD6A601A71413F74E /* Pods-Tutorial */ = { isa = PBXNativeTarget; - buildConfigurationList = 82BC7840116F57441DAEC50B69AB610E /* Build configuration list for PBXNativeTarget "VideoRenderer-tvOS" */; + buildConfigurationList = 9E990C5F7CB904CF376A41B2B5EEEE71 /* Build configuration list for PBXNativeTarget "Pods-Tutorial" */; buildPhases = ( - 4F8092D3A165432AF2A415A99D7D9566 /* Headers */, - DD321AEDE929DEB5D0B7F356BA5DBC2E /* Sources */, - 044D7D11E3B37C810EC9D4A27275F350 /* Frameworks */, - 032BC89D4917921D43C8FA1EAB609163 /* Copy generated compatibility header */, + 8968EA408E0EEB3E1A98166A6272F568 /* Headers */, + CDDDD37446CC15F3FFE0C9A5BD401CAC /* Sources */, + 13DF74DC95D234FB2B402FA573B0CC41 /* Frameworks */, ); buildRules = ( ); dependencies = ( + F8C91A62A4E284F2263E3A66AFBA53CA /* PBXTargetDependency */, + D3A53701004191A8A71795DC55E0FB9D /* PBXTargetDependency */, + ADD2D95A8B6BD09497DA20370713A2BC /* PBXTargetDependency */, + 44FC6130D0A01313EBC1C042F4B1E964 /* PBXTargetDependency */, + CFD228C1272153A4DE8FDB145597BE6E /* PBXTargetDependency */, ); - name = "VideoRenderer-tvOS"; - productName = "VideoRenderer-tvOS"; - productReference = E81865AF4FA2E4861D590F297C41AB92 /* libVideoRenderer-tvOS.a */; + name = "Pods-Tutorial"; + productName = "Pods-Tutorial"; + productReference = 7D9B6C9BB8A9A2A01C79E116C9875866 /* libPods-Tutorial.a */; productType = "com.apple.product-type.library.static"; }; - 9B49B1FAD3293E9E89E685A2129B3E18 /* Pods-Tutorial_tvOS */ = { + E35BAFC4B04DB6AA1C9D24A0B60EA7B0 /* VerizonVideoPartnerSDK-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 009BDDEC6E134D384BC5880D531B557E /* Build configuration list for PBXNativeTarget "Pods-Tutorial_tvOS" */; + buildConfigurationList = 266C79F11A395CB0D3EFC86606DCF096 /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-tvOS" */; buildPhases = ( - 63F74E2CE99E80B40742A366C662D55E /* Headers */, - 3E4155D9946FE6DFDB8A1E7C18C7CD62 /* Sources */, - 644A4373D375C2C1B1FCAC9B7059A418 /* Frameworks */, + 2C52B33BB173218D2A31F442E53D344C /* Headers */, + 8726F8A1698A44F9BD78D6F0FDBDDABA /* Sources */, + 76BC55F09939AFA501CA9265735F08A4 /* Frameworks */, + A574B23B92E8B69C4A45C99BA69A8E83 /* Copy generated compatibility header */, ); buildRules = ( ); dependencies = ( - FC5E072BB94DC4F96107DF918601AE50 /* PBXTargetDependency */, - F892952C24025B081243A43BFD76F301 /* PBXTargetDependency */, - D5C9AD4DF8F20A3D09A3E147905240F1 /* PBXTargetDependency */, + 977FF489923FAF810D4AE6EA6A8D3BA2 /* PBXTargetDependency */, + 38640C9F37E060BF1D5F50B7EF2F91DB /* PBXTargetDependency */, ); - name = "Pods-Tutorial_tvOS"; - productName = "Pods-Tutorial_tvOS"; - productReference = EC35229C5BF283161F901D488C47507B /* libPods-Tutorial_tvOS.a */; + name = "VerizonVideoPartnerSDK-tvOS"; + productName = "VerizonVideoPartnerSDK-tvOS"; + productReference = 791C8844A01363CDB2AD23A947C4C0EF /* libVerizonVideoPartnerSDK-tvOS.a */; productType = "com.apple.product-type.library.static"; }; - DF498F1ABDDE84CE24175CA10F563BAA /* PlayerCore-tvOS */ = { + E365AC994C370D4C0071BC2CA13F97DF /* PlayerControls */ = { isa = PBXNativeTarget; - buildConfigurationList = 3AA45A85E0BBBD24A2571E2397AC386B /* Build configuration list for PBXNativeTarget "PlayerCore-tvOS" */; + buildConfigurationList = 09A735B000C3067A96F796079BF9C683 /* Build configuration list for PBXNativeTarget "PlayerControls" */; buildPhases = ( - D351B455B3779A18EA87B679AC426B49 /* Headers */, - D5B9F0AED0F8213353595D2B21378E80 /* Sources */, - 1E7B5536B6EF3F1195BD15970379F353 /* Frameworks */, - 052C9927F4CB87A0A649BB7DF62C4E40 /* Copy generated compatibility header */, + 81AA9BB6624A75F477A2558CFF803EFB /* Headers */, + 6FA418C1D253BD896D3A421152E9E4D8 /* Sources */, + 18B725EA4C680DA1D1B2A97F4E1FC496 /* Frameworks */, + 653BFABF2235AA49EE7CFF8DA4B33222 /* Copy generated compatibility header */, ); buildRules = ( ); dependencies = ( + 5157706CDCF91B54ED9A9A132A39FEE0 /* PBXTargetDependency */, ); - name = "PlayerCore-tvOS"; - productName = "PlayerCore-tvOS"; - productReference = C7D2F94B83F4774F86F1D014D28E49DB /* libPlayerCore-tvOS.a */; + name = PlayerControls; + productName = PlayerControls; + productReference = 8EA34E4B327D15CADDE622453E68098E /* libPlayerControls.a */; productType = "com.apple.product-type.library.static"; }; - FFCF1CE24F24660C841BDF9A5E020EED /* Pods-Tutorial */ = { + E8266011723A7DE67F6E50957EF2597F /* VerizonVideoPartnerSDK-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 8A832A0365DFB5CD16EB9E43CD0E1EF1 /* Build configuration list for PBXNativeTarget "Pods-Tutorial" */; + buildConfigurationList = AED1E40ABF89D0800BF8D867FA5C340E /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-iOS" */; buildPhases = ( - B3B0E07CE11ACF6F0B7E7FD3248DC91E /* Headers */, - 764CD2ED58E27B4C6B490FDA078204DF /* Sources */, - FA0615C1F8CDDEB16081B10206054730 /* Frameworks */, + 25B7739E8BD6D7527352238177FAF898 /* Headers */, + 3159EA04804AE41D70A5BEB38DACE179 /* Sources */, + 0CB1FBB33FF8B2D42BE788CAABFD4CD2 /* Frameworks */, + 4C1E52D7D4E907B100F043C3BB1D2FA6 /* Copy generated compatibility header */, ); buildRules = ( ); dependencies = ( - 1F3F0F9722D118582B945D4945DC5225 /* PBXTargetDependency */, - 47ED1FA04B6AC3675B11C08F77FEA196 /* PBXTargetDependency */, - 3EBCDBE7EB7687CB445F399A58D57543 /* PBXTargetDependency */, - 227B880D818348A2A656BD2DCDE4393D /* PBXTargetDependency */, + 1E4419DE8C76572DFA75C1B93CCA33C8 /* PBXTargetDependency */, + 51229468302DAD919C988848B463FEF3 /* PBXTargetDependency */, + D2A2535C94D400749B6E7CF3B24A81F3 /* PBXTargetDependency */, + 6B1BAD3C89D31C85FD4B145D48D0CDD5 /* PBXTargetDependency */, ); - name = "Pods-Tutorial"; - productName = "Pods-Tutorial"; - productReference = EE36546AB93A0AC24C11EF9E0D8FE072 /* libPods-Tutorial.a */; + name = "VerizonVideoPartnerSDK-iOS"; + productName = "VerizonVideoPartnerSDK-iOS"; + productReference = 2A04D0589F5FBF791E1D7BCD9A5BB966 /* libVerizonVideoPartnerSDK-iOS.a */; productType = "com.apple.product-type.library.static"; }; + EF2C08EB266CD894822311A10EB25C57 /* PlayerControls-PlayerControls */ = { + isa = PBXNativeTarget; + buildConfigurationList = 60B44818EA61ACE73AB3E68869669607 /* Build configuration list for PBXNativeTarget "PlayerControls-PlayerControls" */; + buildPhases = ( + E22B3DFC41A49B338A2B7D2C6022747F /* Sources */, + 00EF18E0A1F8AD954E9F45DEF3317E59 /* Frameworks */, + D156A16385BC2E81DE9740508620DAB9 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "PlayerControls-PlayerControls"; + productName = "PlayerControls-PlayerControls"; + productReference = 7A19F0B455D82DAA236C847B05C55F18 /* PlayerControls.bundle */; + productType = "com.apple.product-type.bundle"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0930; LastUpgradeCheck = 0930; }; - buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, ); - mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = 7BEF0F173CB5C2699FEFD2C07F2BF51A /* Products */; + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = 8C2238C4E4B97A378BC4D5CA8D85C24B /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - 2F75FEE377AD7BAF8C565B850380995F /* PlayerControls */, - 54E0B6CE24E18E8F72C5D506091438D3 /* PlayerCore-iOS */, - DF498F1ABDDE84CE24175CA10F563BAA /* PlayerCore-tvOS */, - FFCF1CE24F24660C841BDF9A5E020EED /* Pods-Tutorial */, - 9B49B1FAD3293E9E89E685A2129B3E18 /* Pods-Tutorial_tvOS */, - 3D74E7125090C881A85C8E0A6D76E044 /* VerizonVideoPartnerSDK-iOS */, - 008E740531CFFBBFDC9557C066CFA569 /* VerizonVideoPartnerSDK-tvOS */, - 0F0BFA4FAA6698905E081CA89D51B7DE /* VideoRenderer-iOS */, - 9A103A789D7B4C881F5987891104926F /* VideoRenderer-tvOS */, + E0895D7EE1F741F56B4F1C3D38264F7F /* OMSDK-Oath2 */, + E365AC994C370D4C0071BC2CA13F97DF /* PlayerControls */, + EF2C08EB266CD894822311A10EB25C57 /* PlayerControls-PlayerControls */, + 84796276770B19A14E8D50F9413AFA89 /* PlayerCore-iOS */, + 4E9E5A2F313892BD91A557840B32810D /* PlayerCore-tvOS */, + D8D4BC7B06EB457CD6A601A71413F74E /* Pods-Tutorial */, + 14D8ADF2D597DE0F56D58F089831C40F /* Pods-Tutorial_tvOS */, + E8266011723A7DE67F6E50957EF2597F /* VerizonVideoPartnerSDK-iOS */, + E35BAFC4B04DB6AA1C9D24A0B60EA7B0 /* VerizonVideoPartnerSDK-tvOS */, + B4AD1D701403773BC1EBD43142F45045 /* VideoRenderer-iOS */, + 287CB9858CF055FA9ADA55859EFB9F17 /* VideoRenderer-tvOS */, ); }; /* End PBXProject section */ +/* Begin PBXResourcesBuildPhase section */ + D156A16385BC2E81DE9740508620DAB9 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8B3018DD9DF1C9338B027CD36AD03F60 /* AdVideoControls.xib in Resources */, + 4C4210BF85C7DABE307148052D927D41 /* AirPlayActiveView.xib in Resources */, + 6B0CE4EB8B36564589881357A4E384AA /* DefaultControlsViewController.xib in Resources */, + A25050FBFBE08C86C4475F23B9FBC0B8 /* PlayerUIControls.xcassets in Resources */, + 6D77C652FBD5FDA3BAF761C022330E03 /* SeekerControlPlayground.xib in Resources */, + 571D917E6B722E206C2E977941A794C9 /* SettingCell.xib in Resources */, + B3C7B5C01571B0EEF70B0A2699D17F27 /* SettingHeaderView.xib in Resources */, + 73CD235EB391FADFA19E8726A1534716 /* SettingsViewController.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + /* Begin PBXShellScriptBuildPhase section */ - 032BC89D4917921D43C8FA1EAB609163 /* Copy generated compatibility header */ = { + 4C1E52D7D4E907B100F043C3BB1D2FA6 /* Copy generated compatibility header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1942,23 +2100,22 @@ ); inputPaths = ( "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", - "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap", - "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h", + "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap", + "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h", ); name = "Copy generated compatibility header"; outputFileListPaths = ( ); outputPaths = ( "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", - "${BUILT_PRODUCTS_DIR}/VideoRenderer-tvOS-umbrella.h", + "${BUILT_PRODUCTS_DIR}/VerizonVideoPartnerSDK-iOS-umbrella.h", "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; - showEnvVarsInLog = 1; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; }; - 052C9927F4CB87A0A649BB7DF62C4E40 /* Copy generated compatibility header */ = { + 653BFABF2235AA49EE7CFF8DA4B33222 /* Copy generated compatibility header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1967,23 +2124,22 @@ ); inputPaths = ( "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", - "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap", - "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h", + "${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls.modulemap", + "${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls-umbrella.h", ); name = "Copy generated compatibility header"; outputFileListPaths = ( ); outputPaths = ( "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", - "${BUILT_PRODUCTS_DIR}/PlayerCore-tvOS-umbrella.h", + "${BUILT_PRODUCTS_DIR}/PlayerControls-umbrella.h", "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; - showEnvVarsInLog = 1; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; }; - 8006D8579C55F3D9C15AB6C0DF5253C2 /* Copy generated compatibility header */ = { + 7AB5E228564B1262CC81C2D7D5F852F0 /* Copy generated compatibility header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -1992,23 +2148,22 @@ ); inputPaths = ( "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", - "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap", - "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h", + "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap", + "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h", ); name = "Copy generated compatibility header"; outputFileListPaths = ( ); outputPaths = ( "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", - "${BUILT_PRODUCTS_DIR}/VerizonVideoPartnerSDK-tvOS-umbrella.h", + "${BUILT_PRODUCTS_DIR}/PlayerCore-iOS-umbrella.h", "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; - showEnvVarsInLog = 1; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; }; - 9C04FE956229201CC19DFADE2FAAC722 /* Copy generated compatibility header */ = { + 8F5F99BF1AF2C46254E8C32760A29760 /* Copy generated compatibility header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -2017,23 +2172,22 @@ ); inputPaths = ( "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", - "${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls.modulemap", - "${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls-umbrella.h", + "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap", + "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h", ); name = "Copy generated compatibility header"; outputFileListPaths = ( ); outputPaths = ( "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", - "${BUILT_PRODUCTS_DIR}/PlayerControls-umbrella.h", + "${BUILT_PRODUCTS_DIR}/PlayerCore-tvOS-umbrella.h", "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerControls/PlayerControls-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; - showEnvVarsInLog = 1; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-tvOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; }; - B1FAB99773A48BCC10FE52E34B03E1A5 /* Copy generated compatibility header */ = { + A574B23B92E8B69C4A45C99BA69A8E83 /* Copy generated compatibility header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -2042,23 +2196,22 @@ ); inputPaths = ( "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", - "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap", - "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h", + "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap", + "${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h", ); name = "Copy generated compatibility header"; outputFileListPaths = ( ); outputPaths = ( "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", - "${BUILT_PRODUCTS_DIR}/VerizonVideoPartnerSDK-iOS-umbrella.h", + "${BUILT_PRODUCTS_DIR}/VerizonVideoPartnerSDK-tvOS-umbrella.h", "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; - showEnvVarsInLog = 1; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; }; - DF605CED3E174B1B6D4B448EC9BDDFDE /* Copy generated compatibility header */ = { + C8DEB12D098704F888E1F09A0FEF6732 /* Copy generated compatibility header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -2067,23 +2220,22 @@ ); inputPaths = ( "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", - "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap", - "${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h", + "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap", + "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h", ); name = "Copy generated compatibility header"; outputFileListPaths = ( ); outputPaths = ( "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", - "${BUILT_PRODUCTS_DIR}/PlayerCore-iOS-umbrella.h", + "${BUILT_PRODUCTS_DIR}/VideoRenderer-iOS-umbrella.h", "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/PlayerCore/PlayerCore-iOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; - showEnvVarsInLog = 1; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; }; - FB2B421E7F5EFA14E563A825E58F4C6C /* Copy generated compatibility header */ = { + E9C7D9E9D30037EBCA35D90670EE440A /* Copy generated compatibility header */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -2092,767 +2244,869 @@ ); inputPaths = ( "${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h", - "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap", - "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h", + "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap", + "${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h", ); name = "Copy generated compatibility header"; outputFileListPaths = ( ); outputPaths = ( "${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap", - "${BUILT_PRODUCTS_DIR}/VideoRenderer-iOS-umbrella.h", + "${BUILT_PRODUCTS_DIR}/VideoRenderer-tvOS-umbrella.h", "${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-iOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; - showEnvVarsInLog = 1; + shellScript = "COMPATIBILITY_HEADER_PATH=\"${BUILT_PRODUCTS_DIR}/Swift Compatibility Header/${PRODUCT_MODULE_NAME}-Swift.h\"\nMODULE_MAP_PATH=\"${BUILT_PRODUCTS_DIR}/${PRODUCT_MODULE_NAME}.modulemap\"\n\nditto \"${DERIVED_SOURCES_DIR}/${PRODUCT_MODULE_NAME}-Swift.h\" \"${COMPATIBILITY_HEADER_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap\" \"${MODULE_MAP_PATH}\"\nditto \"${PODS_ROOT}/Headers/Public/VideoRenderer/VideoRenderer-tvOS-umbrella.h\" \"${BUILT_PRODUCTS_DIR}\"\nprintf \"\\n\\nmodule ${PRODUCT_MODULE_NAME}.Swift {\\n header \\\"${COMPATIBILITY_HEADER_PATH}\\\"\\n requires objc\\n}\\n\" >> \"${MODULE_MAP_PATH}\"\n"; }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 2065354661A760C2F9AC023941E3CDA0 /* Sources */ = { + 0049F93E7DE1EFACA6EA7C90B08051D3 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DF6AB9F82A6DB6C54DEA6057CEFE6E1F /* Pods-Tutorial_tvOS-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 2384027E5F6418381E3F936B51E640A4 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9B4CCF9E86A2ED827FB49480E210C292 /* AdVideoControls.swift in Sources */, - 47727B82A6FD0459D8C815ACCEA135A8 /* AirPlayActiveView.swift in Sources */, - CED361B2AEFA34284169A92EA917A7B9 /* AirPlayView.swift in Sources */, - 9561B0854B4F330F9E57D9ECCF1E5A30 /* AnimationDelegate.swift in Sources */, - 576E95540935FD51215F2D966D651551 /* Autogeneratable.swift in Sources */, - 340450081AD4D6BB81D00B76FF61A0C6 /* Codable_PlayerControls.generated.swift in Sources */, - 51FAE4F6EF5DF467BB6CAE4999796A03 /* Color.swift in Sources */, - 63F7C1E650736E6FDDB81D0F9C442BC1 /* Command.swift in Sources */, - A44463BAA7F4D29A8F0C5C1BB80B3056 /* ContentControlsUIProps.swift in Sources */, - 7077B3A548337929F36F8C115FE13B69 /* ContentControlsViewController.swift in Sources */, - BDC128185F1FF90850214F4B3CA39991 /* ControlsVisibilityController.swift in Sources */, - A6E5CD546F9A1551C12AA522E86C6D56 /* Defaultable.swift in Sources */, - 810081D05B44116462E133EB1AF8AFAE /* DefaultControlsViewController.swift in Sources */, - C11653EF04EF3E073E0649148F6BF33A /* EnumPrism_PlayerControls.generated.swift in Sources */, - 926421624FD3DBDBB98DAB11B8B96677 /* LoadingImageView.swift in Sources */, - 355E5A63D79602AD1EB7654B8B6EC81C /* PlayerControls-dummy.m in Sources */, - AAF829A2CDEEC51DFE0F892B12AD8CF0 /* Props+Autogeneratable.swift in Sources */, - B8ED6FDDAC3EE4D3E9A4827509E7C318 /* SeekerControlView.swift in Sources */, - 05B5C0C15E26BFEF825A2FE4067A420C /* SeekGestureRecognizer.swift in Sources */, - 5B990190FA229A3E5505A268EAEF0EED /* SettingCell.swift in Sources */, - 099CCAA590C3D71A460E0BFDFDEF234B /* SettingHeaderView.swift in Sources */, - E8DAF764FFF48A0416D531AC2EB7DBCB /* SettingsViewController.swift in Sources */, - DA3DE223786A80A5EE6166C2D39E497A /* SideBarView.swift in Sources */, - ADAC20AA039B1C3FAF1AF88482724201 /* TimeFormatter.swift in Sources */, - 2C41D2D766BDD489CF17147D3E98823B /* Timer.swift in Sources */, - C55BF3FEEA235947B0C63143DB269535 /* Utils.swift in Sources */, + 818549916F19BBD72590C66E35F5082F /* ActionProtocol.swift in Sources */, + 5ED0682CE56E5FEAC32DE0682AD72174 /* Ad.swift in Sources */, + A97988D331FA96B6820ED3598555C393 /* AdClickthrough.swift in Sources */, + 8DC941D9325091D3783E188153A5DE99 /* AdClickThroughAction.swift in Sources */, + 1810032673241502BAF0B5FC24166C1E /* AdClickthroughActionCreator.swift in Sources */, + C886362C07C8D984291A8610F71643C9 /* AdCreative.swift in Sources */, + 2F510381C00A2B24C5EE083DA80AC92C /* AdFinishTracker.swift in Sources */, + 4CB1835E8E04BC71E3BA5427F7C81DD5 /* AdInfoHolder.swift in Sources */, + 925E38D489E63F6100017B8F60C983E7 /* AdKill.swift in Sources */, + CDCE8B76763C9DA4284799F620BBE7E0 /* AdKillAction.swift in Sources */, + E5AF96B8C63759DE56EA020A2B01EDF3 /* AdPixels.swift in Sources */, + 1D3EBE50C4712CAEB011AC91978CB1F3 /* AdProcess.swift in Sources */, + CF1C054C6C0C7B7A3D8C86D4CB52B785 /* AdRequestAction.swift in Sources */, + 95132576AE9F0CF368DD4C43347F1F66 /* AdStartTimeoutActionCreator.swift in Sources */, + 80919629544C93A0B3E57848D8CF2676 /* AdVASTModel.swift in Sources */, + 38F9113ED3A10BF5113713F2A86544EC /* AdVRMManager.swift in Sources */, + F8C1F63EA028732A9F7205F65A304B9F /* AdVRMManager_Hashable.swift in Sources */, + AAC97341EFA459FB6128742DF5697191 /* AirPlay.swift in Sources */, + 9291C7E52C574700199EB2AF06CF40DA /* AverageBitrate.swift in Sources */, + B8BBC06B1263B0014B50BE938E0FDF1C /* CompletePlaybackSession.swift in Sources */, + 8A98E9AD3C3DB9DC4891B32A366C648D /* CompletePlaybackSessionAction.swift in Sources */, + E3666449EB47522272653B0190180A00 /* CompletePlayerSession.swift in Sources */, + AD8F4664953906FA5EDDA9E09C6C499D /* CompletePlayerSessionAction.swift in Sources */, + 8AF47A21BF23C385C42A10313E205BB7 /* ContentFullScreen.swift in Sources */, + 221D5CBAF94CE2A5E6027BD067838888 /* ContentFullScreenToggle.swift in Sources */, + 03A6F48DCE5A9220F5D21610455245D0 /* CurrentTime.swift in Sources */, + 599CE760ABBCF95B4D9A6277B78BC456 /* Dispatcher.swift in Sources */, + 5C51915BC3B2818F4C71C6EF07075A56 /* DropAd.swift in Sources */, + 0FCABBF2D98B442EAD9A5E590EA58B15 /* DropAdAction.swift in Sources */, + 48A978107F49D57240A1A63D31FF0834 /* Duration.swift in Sources */, + 785734C8DB903DAB9DE8677FCD079ADB /* EndPlayback.swift in Sources */, + 0D9206D74E1F2DA47DE60710EE23CD4A /* FullScreenToggleAction.swift in Sources */, + 67AFC3648BBE20B013A09B0C8FA6D7D7 /* InteractiveSeeking.swift in Sources */, + 2DD0A3AEFBB30789D335CBE67166AF28 /* LoadedTimeRanges.swift in Sources */, + 8E8EE2AB33C1AABC94A52675A9709E28 /* MaxShowTimeActionCreator.swift in Sources */, + 13C509AA9596CDE4A8B9BDEB847B442D /* MediaOptions.swift in Sources */, + 72812D5BE684BA37573F8C38061D1D64 /* Mute.swift in Sources */, + CD6D6A1A58EE2BBE119C0039057924DF /* MuteAction.swift in Sources */, + 9A587298F98239B53C89F2AA5073CCAC /* MutePlayer.swift in Sources */, + 2F7B27A956D4D17DB478B04E6219982D /* Next.swift in Sources */, + B7C2C566F679D88485E901B6F788AAB8 /* Nop.swift in Sources */, + 3375D05867D19C2707CBCF71A943456F /* NopAction.swift in Sources */, + 09EDE5D1DF9F13DF5604BEE67F411E4B /* OMScriptServiceAction.swift in Sources */, + BC5BEBEFF97CB9C89900E8EAADCD4148 /* OMServiceScriptActionCreator.swift in Sources */, + C0F6818EB8B18553E3003E51E873BF2C /* OpenMeasurement.swift in Sources */, + BB47336B9894BAC07ED089C7E688D966 /* OpenMeasurement_Tracking.swift in Sources */, + 2D9C9F46590F0327A38B77B5752F9C3B /* OpenMeasurementAction.swift in Sources */, + ABC98F9B6E1B12C4E49DDACB20531D0C /* OpenMeasurementActionCreator.swift in Sources */, + 61CB9DEA5C88958985830BFADBDEFA66 /* OpenMeasurementServiceScript.swift in Sources */, + 57E6D22F8F8DD9159F1BE149A3EF08EF /* Pause.swift in Sources */, + 7D3ADFA13BECFC7B5740F44A904BC985 /* PauseAction.swift in Sources */, + 27277F096A2E3883A29CFD094784A1F9 /* PictiureInPicture.swift in Sources */, + 5F8947A21D40F39ADE7B99E236BE7493 /* PictureInPictureStatusUpdate.swift in Sources */, + E615C4A8FD7E6439B68CCC941CC8C022 /* PictureInPictureToggle.swift in Sources */, + 92FBC7B84A7F5DAD548F9FC437C66F49 /* PictureInPictureToggleAction.swift in Sources */, + 0C5D5641153BF191FD6363560C4F474C /* PictureInPictureUpdateAction.swift in Sources */, + 0BCDBD7514C8516C0E52C9B879B178ED /* Play.swift in Sources */, + 6D7FEF9D91B738CE34B515DB59D5D2C2 /* PlayAction.swift in Sources */, + 512C046EE298B426C8973C0EB300434F /* PlayAd.swift in Sources */, + C6BA6FF03B83831BB8BCE565A8D14AD6 /* PlaybackBuffering.swift in Sources */, + 926830C37C1DDC9EC9959836EE226D1D /* PlaybackBufferingAction.swift in Sources */, + A32EC07FDC20508A751EB27B73C0A02C /* PlaybackDuration.swift in Sources */, + 6F392927E4107979B55F98B913FCDE0D /* PlaybackFailed.swift in Sources */, + 4AA067C75F8FAB31FF11C06EE89A3165 /* PlaybackModel.swift in Sources */, + B272EB729A6D46EA771AA73C42A7D5AB /* PlaybackReady.swift in Sources */, + 4AFA7A772A659EF5BD77A74E3697AAA0 /* PlaybackSession.swift in Sources */, + 228D0385E9D732BB698A1B9B4283A724 /* PlaybackStatus.swift in Sources */, + B103F945F26017BA6D1BB009CDBBFEF8 /* PlayerCore-iOS-dummy.m in Sources */, + 601984D90577BE1E3EB0A38E214866FB /* PlayerSession.swift in Sources */, + 3FACB11A8AC4AF1A1314314B9269DDA2 /* Playlist.swift in Sources */, + B5437303D332BB138AB76D484546317B /* Prev.swift in Sources */, + B42054E9F3715D678024DDA5B42B742B /* ProcessGroupsAction.swift in Sources */, + F616D424E822BD3E04BA102B21989341 /* Progress.swift in Sources */, + A1CA14925213FF279C2C84B05B51837C /* Rate.swift in Sources */, + BCCB9927C69D0057AB15D51FC8DD7CD5 /* RendererDescriptor.swift in Sources */, + 7AAFAA2884ECE2A920D6F1CCC7A62A99 /* Replay.swift in Sources */, + 43D7F7F8D78F5825D895E6A2A04A6735 /* ScheduledVRMItems.swift in Sources */, + 62134A21D21D690C982BAFF5EADEE871 /* Seek.swift in Sources */, + E22FE104837CEB1CD9D89B58EF2DEBCA /* SeekToTimeAction.swift in Sources */, + 2883D2C589280524D46DCA56779611DF /* SelectVideoAtIndex.swift in Sources */, + 4D50DB0A2C4530B8FC2E5BB1AA496F30 /* SelectVideoAtIndexAction.swift in Sources */, + AB06115AFD376B1A0958BD3705A347AE /* ShowAdAction.swift in Sources */, + 1FD9927E2BC63E81659F18EDA9F3B399 /* ShowContentAction.swift in Sources */, + D4C78D443CD82853768E8D74AF43BE8F /* SkipAd.swift in Sources */, + 43AB7CE9DEB545E2834793ED24828BEB /* SkipAdAction.swift in Sources */, + E649D7C172A9942CB59C931593FD8ECC /* StallingRecords.swift in Sources */, + 7BA341851CF496D055F5651129EB02C5 /* State.swift in Sources */, + 4F8607302BBD6A09932B6C53A1FB7657 /* Thumbnail+VideoProviderResponse.swift in Sources */, + A065E7D8C62E0CDF813F56D44AB2502F /* Thumbnails.swift in Sources */, + 739A50C79596705E6A1CC3AA0952ECDB /* TimeoutAction.swift in Sources */, + 47FE80F1C47546FB1D6E5E8AF9B28C3F /* TimerAction.swift in Sources */, + 9CD1FC4C86EAD29084A93D0029B801F2 /* TimerActionCreator.swift in Sources */, + 36FBBE93749C5D7D5CD8EB39AA13A60D /* TimerSession.swift in Sources */, + 0681DC72A78F085C6AB16EF78EF03D2C /* UpdateAverageBitrate.swift in Sources */, + 681A717A4EEEBB472865B155A6692486 /* UpdateAverageBitrateAction.swift in Sources */, + 577A974E87DDAE4C7847520623E54EC0 /* UpdateCameraAngles.swift in Sources */, + F55DA3778DCF3ADDAA05C8104B7B7EE7 /* UpdateCameraAnglesAction.swift in Sources */, + 5397FD348E2E18D77C238A13D17E6CFE /* UpdateCurrentTime.swift in Sources */, + A2DBF7B55422AD6D93FE17AE9476834C /* UpdateCurrentTimeAction.swift in Sources */, + 0B7AEC4DD0C83752254667EF67827116 /* UpdateDimensions.swift in Sources */, + 35F40CC53F33E3F6001917177A85E058 /* UpdateDuration.swift in Sources */, + EF32618698493B74F803969DA06CA8DF /* UpdateDurationAction.swift in Sources */, + 12C8DF2A40FDC8FA5CA618D5852E8511 /* UpdateExternalPlayback.swift in Sources */, + 7F84A64070CDC5A6BCEA180D5E92307B /* UpdateExternalPlaybackAction.swift in Sources */, + 813D4758298B748E30353FAC1787D976 /* UpdateExternalPlaybackStatus.swift in Sources */, + EDF7F6F52D41759417C600F6C8276D2E /* UpdateExternalPlaybackStatusAction.swift in Sources */, + A385AFA3A9999C3F08BD4629F6A7D024 /* UpdateLoadedTimeRanges.swift in Sources */, + 85C0CF1060FEA7DD2D11CFDEF9EDC48F /* UpdateLoadedTimeRangesAction.swift in Sources */, + A0B0CF957638DD762D59F14173B29B20 /* UpdateMediaOptions.swift in Sources */, + F351A3F41A089D6F78950763E780E2D4 /* UpdateMediaOptionsAction.swift in Sources */, + 6AE5C91BE996740F64ED56DCDD23DDF9 /* UpdatePlaybackBuffering.swift in Sources */, + 4351B561A9E052F0D76AF92B3CBF39A9 /* UpdatePlaybackStatus.swift in Sources */, + 966A4EA6CAED728CF145DA18B08BED4D /* UpdateRate.swift in Sources */, + 76D6D5719EE9CB01D906008C31DA4688 /* UpdateRateAction.swift in Sources */, + 1C19C6242F6D7E079C3ED22451990E9D /* UpdateViewportDimensions.swift in Sources */, + AFD3C71AA0BFDA854179E7FC5096C54F /* UpdateVPAIDAction.swift in Sources */, + 2125143D3B718870C3B02BD0E5319AA9 /* UserActions.swift in Sources */, + 247792509B1C6D217E3167DFA804FD60 /* Viewport.swift in Sources */, + 77BF2D64102745B3006B643227700E0A /* VMRCoreProcessingResult.swift in Sources */, + AEE9FACF1F505499F7B8DDF9AB7D9D8E /* VPAIDActionCreators.swift in Sources */, + A5AA646811D6ACB8B1020FB149660FA3 /* VPAIDErrors.swift in Sources */, + AAF6064AE6F5B6971EE8D9796D3869D5 /* VPAIDState.swift in Sources */, + 4A51BA16628D3074A0733D2FF2227A5F /* VRMCoreAdProcess.swift in Sources */, + E8BD0334B651CEA75FBD0AE89758A180 /* VRMCoreAdRequestAction.swift in Sources */, + 112F9DEA26833B85ECCD464560C42616 /* VRMCoreAdResponseAction.swift in Sources */, + FAE185DF036A495E22A475BA91134F6D /* VRMCoreAdResponseActionCreator.swift in Sources */, + 9118A22F9CE655E199BCFD02D9F3A0D2 /* VRMCoreGroupActionCreator.swift in Sources */, + B53C55DC00DDB2127CFAB998BFE20778 /* VRMCoreGroupProcessing.swift in Sources */, + 66BADCCCA09FA4ACF3321693A84E5DE6 /* VRMCoreItemScheduling.swift in Sources */, + 4260E64D8B6C847E8B2FA6DC46D72AE8 /* VRMCoreItemSchedulingActionCreator.swift in Sources */, + 026DFA7440901F23614867E368258C36 /* VRMCoreNamespace.swift in Sources */, + 678F7D25CE5DACB86A5167DFC1280A4F /* VRMCoreResultSelection.swift in Sources */, + 69E11486CAE4F7F82001C6304048BD74 /* VRMCoreResultSelectionActionCreator.swift in Sources */, + 75EC2E47C5AEAC2222B01608FD9C4EA4 /* VRMCoreVASTModel.swift in Sources */, + 088071BEA69BADDEBBCEE581FDDADA05 /* VRMCurrentGroup.swift in Sources */, + 6075BB3A9829820D46195E9B83255724 /* VRMFetchingError.swift in Sources */, + BE3E8E4A380108407407941A59533F1E /* VRMFetchItemQueue.swift in Sources */, + E341E4EC93F8BFC452DCC7DEEFB4F9B2 /* VRMFinalResult.swift in Sources */, + 9896C8FE6DCA9E96AC1CD1D66B916043 /* VRMGroupsQueue.swift in Sources */, + E5D6ACB22C67917EBA2AB4BEAEED01C7 /* VRMItemActions.swift in Sources */, + C7AE1DCA9EB918852D49FCFC212BEE73 /* VRMItemResponseTime.swift in Sources */, + E60410804C26A48216236DAB9E39B507 /* VRMMaxAdSearchTimeout.swift in Sources */, + D6A35FF5082B54C05F1E6FED92011CDD /* VRMOtherError.swift in Sources */, + E98D5E1C8CFF1C94382A49D3FB139B47 /* VRMParseItemQueue.swift in Sources */, + 4668D76D908CDA5F6F3200CADF2553F4 /* VRMParsingError.swift in Sources */, + 4B0812086711D2EDE0CD7489ECA5AF60 /* VRMParsingResult.swift in Sources */, + D51F6F0BD37EDED45E189C109774A9F7 /* VRMProcessingResult.swift in Sources */, + 9A705B67E4457B19614AA20066178CE4 /* VRMProcessingTimeout.swift in Sources */, + 06BE489BDB2DA9957D04AEFD77E804D2 /* VRMRedirectError.swift in Sources */, + 56BBC5FD484F5A2FB86E47645431C1E7 /* VRMRequestStatus.swift in Sources */, + AAF32F1256F48A63FE952A9FD3A63BB4 /* VRMResponse.swift in Sources */, + 66851CC128E278EA1245920C5951BD2A /* VRMResponseModel.swift in Sources */, + 490650271AB73C3230DC1325026EA4CD /* VRMTimeoutActions.swift in Sources */, + E90BCC0463FBB9DFCE0A8CDCB379EE63 /* VRMTimeoutActionsCreator.swift in Sources */, + 8DB859546E3A518D2E2D926262917A82 /* VRMTimeoutError.swift in Sources */, + 7895FF3B4201F38A8D3975FCBAACFC69 /* VRMTopPriorityItem.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 35C02D4DC8520FA884941C9D1AA7015C /* Sources */ = { + 2DCC39611D52333F530CAA5C2E6918E4 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0273CCA7AE36A4266A015656C7FD2002 /* 3secPlaybackDetector.swift in Sources */, - 61490D750D041E6EF5240F07288A31F4 /* Action.swift in Sources */, - 88E2AAF59DC620B7C30CCE4C1748006E /* AdClickDetector.swift in Sources */, - 22006A69313C02EB942FDDA04730D23D /* AdErrorDetector.swift in Sources */, - 9963215E78EAE510BD0A42EFF0A34810 /* AdManagerPresenter.swift in Sources */, - 96B86BC6BD1A55889EB6DF46889D5D02 /* AdMaxShowTimeDetector.swift in Sources */, - B415A9002414F3D92058F5A3AD93C925 /* AdMetrics.swift in Sources */, - 9337459BDF3F7E7F3A06213E97760A62 /* AdStartTimeoutController.swift in Sources */, - 0F9ACA529A5A1F41DF5135E74119D9CE /* AdURLProvider.swift in Sources */, - 144ADBAED70E3D34F95A8CB084C24C92 /* AdURLProviderProcess.swift in Sources */, - DB96275AB909816E6486FA2B4BA34414 /* AdViewTimeDetector.swift in Sources */, - 926608B12B9841184FE70B9C7C09156A /* AdVRMEngine.swift in Sources */, - C599758B9BA5F7A421534AD715F00DAA /* ApplyDecorator.swift in Sources */, - 824E538D1AE7F3B329AAEDD259A09CF3 /* Autogeneratable.swift in Sources */, - 2C29E6861FEE8BC6F064156F0BAD0F9A /* BufferingDetector.swift in Sources */, - 0C10637A24DCFB5EA2B147EE9D7727EF /* BufferingStart.swift in Sources */, - 8B2ED2121B0782E0C3DBABA9BAD92A79 /* Configuration.swift in Sources */, - 398903F06F75367522D3BD94BAEB3277 /* ConfigurationParser.swift in Sources */, - 6CFFD4429076517B1AB237BFD1370516 /* ContentControlsViewController_Binding.swift in Sources */, - 355C4BE9C661FF0C43330BA24BB0F0B0 /* Context.swift in Sources */, - 3FE08325746FBDC5B374D9740C3D90F3 /* ContextStartedDetector.swift in Sources */, - 103B06CBFB941BEF6B2C86D5592CABFE /* DecileDetector.swift in Sources */, - F572560B547D817AAA073747285F1FAD /* Dictionary+ParseJSON.swift in Sources */, - 4AC9F43656C56E18B395FB0863182F86 /* Disposable.swift in Sources */, - 2CFC0E86390C6F22014A55141AA3634D /* ErrorDetector.swift in Sources */, - C3CA370E5BE5A92B315988DE0D9F4C95 /* ExecuteOnce.swift in Sources */, - 18E5B8A049039415B99C4310644FA8DD /* FetchVRMItemController.swift in Sources */, - 98D6AEC3F9C0EC5314C9F19E3A7C3BF0 /* Future.swift in Sources */, - 19B19758C9180DBB7D30AFCDD9FDE072 /* HeartbeatDetector.swift in Sources */, - B8586FA419C449F217F2F7A15CCA2045 /* IntentDetector.swift in Sources */, - 7F989E94BD9CE12CAFDEFE57C4F9DB76 /* JavaScriptObserver.swift in Sources */, - 4D30845C042CC22DE73DBCBED9B75854 /* JavaScriptTelemetry.swift in Sources */, - 7FBADD910320489CBBCB3A24B76A85EF /* MaxShowTimeController.swift in Sources */, - 264EA5B5CBF2E596E72E725177E876CE /* Memoise.swift in Sources */, - 79F2FEB7145DE4CB6715F14F34B07A15 /* Metrics.swift in Sources */, - 45323D9EA72492097B35665E381F263D /* MetricsSender.swift in Sources */, - D112995408DEA3BF2932CB2CD9F822EF /* MidrollDetector.swift in Sources */, - 875C00E43322AC8C659F828C8A127237 /* MuteDetector.swift in Sources */, - CC195A3CE73AFD5104349215B7655D7D /* Network.swift in Sources */, - E6DF392B232A2B54BC81BB803A8B61C5 /* NonEmptyString.swift in Sources */, - A85080D27D9368452EF8253C6D69196A /* Observable.swift in Sources */, - 7A16E9FA222757A6C41208D2710A0D3F /* Observer.swift in Sources */, - B867465E1A3CCD3143BC37ABF3B2C373 /* OnMainThread.swift in Sources */, - 3A525E5230E782A839F2EF0DC50269B8 /* OpenMeasurementContext.swift in Sources */, - FA69957269785CAEFFF92D27520A76F9 /* OpenMeasurementController.swift in Sources */, - 257EB64B769EA92D0B20E97BE20B45FF /* OpenMeasurementServiceScript.swift in Sources */, - 73826544382F998EF07A8F1973156C22 /* OpenSafariUtil.swift in Sources */, - FEA7FFDCC3E89548E42F97B0C0CBA6EC /* ParseVRMItemController.swift in Sources */, - B80C4C5EF6C905FF6328C234D0053BB9 /* Pipeline.swift in Sources */, - FAC78BDBA3857E8CD05B40EF8AACD4CA /* PlaybackCycleDetector.swift in Sources */, - 498C3871820812167D52915C2A44A3E8 /* Player.swift in Sources */, - F36B361D85B6E1614F7F20287F423948 /* Player_VideoEvents.swift in Sources */, - CBC1EE7707A417CA9E6368679D6B93FF /* PlayerInterface.swift in Sources */, - 2E2EB74BE2CA8DCBD84B7DC5D76A850A /* PlayerProperties.swift in Sources */, - E87C2623FE68CF8A4D080CA503605750 /* PlayerProperties_Init.swift in Sources */, - B9C6CBFB51E6AFE4DF8AC66232B4871A /* PlayerTracer.swift in Sources */, - 576956825AF4CEF6E01F502AA83986CE /* PlayerViewController.swift in Sources */, - 069F8A5CF50BEE3ADB03BCB88F87A2BE /* PlayerViewController_Binding.swift in Sources */, - 58C34687B7379E6D8B1E2AFF12817BC2 /* PlayerViewController_Clickthrough.swift in Sources */, - 3D8F8E8EE99CD9DD01F0840F5D9A87A7 /* PlaylistStatisticDetector.swift in Sources */, - 0A40B356475EE123FFBAD023E05295F7 /* ProcessAdItem.swift in Sources */, - 7DD57F21EA183894310C0045D513AB02 /* PropsMapping.swift in Sources */, - DCAE778FF9736054630FA02695B5C78E /* Provider.swift in Sources */, - FF3747DD95A03247C33D4A549F41F4D9 /* QuartileDetector.swift in Sources */, - BFDEA87B5F94B4CDCF918C56E67C4A91 /* ReporterTracer.swift in Sources */, - 75B55EF35F9BD66A1520D0FC82A60135 /* Result.swift in Sources */, - F67C710BFD95A6FAEF33B92D6A771203 /* Rethrow.swift in Sources */, - 6A974AE403708DECE60766C55DCF36BA /* SkipRepeatsDecorator.swift in Sources */, - A0F3B7B602F5C9D14A4FC5821265291F /* SlotOpportunityDetector.swift in Sources */, - 6D2B7D86BF0BD1A4C644C979DE07C717 /* StartAdProcessingController.swift in Sources */, - 45276EFA7B9C9D83807DD2003F1F0550 /* StartVRMGroupProcessingController.swift in Sources */, - F44C1F2260A5D3C25670595AF5D2B85F /* Store.swift in Sources */, - BC8C21F8575139A12EE284E17FFD60F5 /* Stub.swift in Sources */, - DA57D33D93CB886A7E3A593ACD5368AE /* Telemetry.swift in Sources */, - D90350C62F70137D1613F37E82436F6D /* Timer.swift in Sources */, - 5990519060F9B1D4E258D000BC84FAD7 /* TrackingPixelsConnector.swift in Sources */, - 459B3E75A8B0D0914F19F3826016718C /* TrackingPixelsConnector_Ad.swift in Sources */, - 1AC1646958CCBBFFDA5C08A046C96400 /* TrackingPixelsGenerator.swift in Sources */, - 5025A3FEC182C7269B30B17E15B56814 /* TrackingPixelsReporter.swift in Sources */, - E8F79D80A5C11B48273AD62738E1269B /* UserActionInitiated.swift in Sources */, - 9FDD5FE31D13925992BD59313EB3B226 /* UserActionsDetector.swift in Sources */, - 15ABED82FB200653086097F3FFD7DA55 /* VASTModel.swift in Sources */, - 14A335CCFFF5F9B2E10D52A70F35BDF7 /* VASTParser.swift in Sources */, - 1517EB068649C233ED76DEC43DA854B4 /* VASTWrapperProcessor.swift in Sources */, - 5C50FCCFAD1150C9213DD5A940356C79 /* VerizonVideoPartnerSDK-iOS-dummy.m in Sources */, - 4421AAC74E600314B162370E7548EFFD /* VideoActionsDetector.swift in Sources */, - E51D8F8C542D5B75617FCB14A3161092 /* VideoContextPresenter.swift in Sources */, - D703AF1B8547C35FA355583A71B92E52 /* VideoImpression.swift in Sources */, - 026F3C1D9AEABFBCC2CE592558A7D4DC /* VideoLoadingDetector.swift in Sources */, - 38EC323E693B3B5EC685777C27A3A33A /* VideoPlayDetector.swift in Sources */, - DB17FF5D9256E73C2CE0DE8C24972D94 /* VideoProvider.swift in Sources */, - 47A04231119A4E5AD0425FBC2F7AFAA4 /* VideoProviderParsing.swift in Sources */, - 475A68CCB8371160DAE290AEF8D13F32 /* VideoProviderResponse.swift in Sources */, - C96893DA1F85C83AB908492A0ACFAB54 /* VideoSelector.swift in Sources */, - 07E55225916BC03A136C5B4A219C8BE8 /* VideoTimeDetector.swift in Sources */, - C18192B550F3EFF10EFE17B9323F03D0 /* VPAIDEvents.swift in Sources */, - 1275BB522138A3614092EF63DF8EA9CB /* VPAIDMessageHandler.swift in Sources */, - 5BEDC30DF92BB79530B8F996D2CF3D06 /* VPAIDProps.swift in Sources */, - EC1BF78D63273055F195186552F51639 /* VRMDetector.swift in Sources */, - 5DE09D4F3B0CF3B6D7DB1DE059B14A90 /* VRMItemController.swift in Sources */, - C454C41949A0BEF13FD0B987B18EE3E8 /* VRMProvider.swift in Sources */, - CA1D7CD2C7D48E8D97DAA812BC76024D /* VRMRequest.swift in Sources */, - BED29E42289F542EFBAF8D6137EA69C7 /* VRMRequestController.swift in Sources */, - 93F189713C509B6C52B22919C2B3A3BA /* VVP.swift in Sources */, - 51B0CFD52277AED8644A674C427E4462 /* VVPSDK.swift in Sources */, - BB594EC8ECA9B448ECF3C04466D5CCA6 /* VVPSDK_Version.swift in Sources */, - 0C8C033DCEDDD313D71FF4EF43504C6A /* VVPSDKPlugins.swift in Sources */, - 9789805FF7F67F34B4E12FDADCFB862E /* WebviewViewController.swift in Sources */, - EFD70A4E2C9E7EE424F9510252FDB171 /* XMLParser.swift in Sources */, + 2DC8F378472512344A2DEBE08321A286 /* ActionProtocol.swift in Sources */, + 7CC01665B39C9F6869D1D2435B4FD45D /* Ad.swift in Sources */, + 0C73FE436BC4277D717CF60EA9C6F81B /* AdClickthrough.swift in Sources */, + DC2B4724E5A5350B40F5A854682CCB3B /* AdClickThroughAction.swift in Sources */, + 2E34A9A2299B23B68165BBE33145AE2F /* AdClickthroughActionCreator.swift in Sources */, + 88A8E9812D5C9582325C4B8F2959EA16 /* AdCreative.swift in Sources */, + E76606CDE2DE6DD23D00CE20E7042CFC /* AdFinishTracker.swift in Sources */, + FEBA9D514D01EE3AEAD5869C5DA99134 /* AdInfoHolder.swift in Sources */, + 6A638E6F589A6DDD7AB507630AC71833 /* AdKill.swift in Sources */, + B0BDF7A0AE0F7A9E1181A7577A3CEAAE /* AdKillAction.swift in Sources */, + 7E1962614C2F865C4E9B4D097EBB288E /* AdPixels.swift in Sources */, + B87565FC47D60FA93E0545F21C0956EC /* AdProcess.swift in Sources */, + F47AF683D3EE03F3D1CABBB5A348D732 /* AdRequestAction.swift in Sources */, + F159BBF9C7360BC79485CEDF366B1B15 /* AdStartTimeoutActionCreator.swift in Sources */, + 680AF3AF0D8F3F7B0A1B526EEB6AF571 /* AdVASTModel.swift in Sources */, + 123F8CAEBEE172ED97CA256674D26C9A /* AdVRMManager.swift in Sources */, + FDBB9725661102566133C054D5D4E529 /* AdVRMManager_Hashable.swift in Sources */, + 8D7566F641CD4630144DA7DE85935554 /* AirPlay.swift in Sources */, + 71F83ADC8DFFF455D9D981974BF2A966 /* AverageBitrate.swift in Sources */, + 7036E3557F33C3FE3EE6C20D36BE36C0 /* CompletePlaybackSession.swift in Sources */, + 7384D588841EBF151A990CC0C540ECFF /* CompletePlaybackSessionAction.swift in Sources */, + DB422E1EC11713CB2F4561EFE09D9D74 /* CompletePlayerSession.swift in Sources */, + 71F8BCF77B7DAFF6A9D9B62EBDEA5AD7 /* CompletePlayerSessionAction.swift in Sources */, + A9AA370FEBA73658F87E18C4AA665B03 /* ContentFullScreen.swift in Sources */, + 1B5530B4D60CDF6798618810B76506F8 /* ContentFullScreenToggle.swift in Sources */, + C7E367B970D04D7943A4AFFA32A05903 /* CurrentTime.swift in Sources */, + FF503B20A7AEB79C34CA2029E4B2F154 /* Dispatcher.swift in Sources */, + 32BF467239491CF0272C44E3872BA4BD /* DropAd.swift in Sources */, + 7703B3C9FAA121E73B1FB5A7BB693F44 /* DropAdAction.swift in Sources */, + 43D778AB844642FD15D03781942BB62D /* Duration.swift in Sources */, + A31B8A59912974FAE8DEC0F078AA695C /* EndPlayback.swift in Sources */, + B89D8E8CE48450E744AC027FF68C260C /* FullScreenToggleAction.swift in Sources */, + D04EFADF98FBA07C9CEE3BB0E89F12B3 /* InteractiveSeeking.swift in Sources */, + 97EF7C60E22D603008B75E396AE23876 /* LoadedTimeRanges.swift in Sources */, + EB561B82CDE7DA77548A7096FA16742F /* MaxShowTimeActionCreator.swift in Sources */, + A7E367D301EE07B40545E122771EA329 /* MediaOptions.swift in Sources */, + A69B0BECF64F873857315A0CE0C25915 /* Mute.swift in Sources */, + 4DF442FD0F75BF3AAB4D1A8E0E78F172 /* MuteAction.swift in Sources */, + AC9C8ACF9FE47A78FBEE2B34F82C8C9A /* MutePlayer.swift in Sources */, + B8B55B31C5F5AC9D5DAE9AB1B246E97B /* Next.swift in Sources */, + 638ADFBBC4955C869A38F2DC2D745D4D /* Nop.swift in Sources */, + 787D58D7F2C0FC4F3BA2796E05DA066C /* NopAction.swift in Sources */, + 27B4D4CF53D5BC6D75BD5F4BB491FA48 /* OMScriptServiceAction.swift in Sources */, + E130319714EB9D2B5BF5D51F9DE033A4 /* OMServiceScriptActionCreator.swift in Sources */, + 2B334D679EC847ACC48CE14397F55C99 /* OpenMeasurement.swift in Sources */, + 14E52775C062E6A143D9F2BED037F132 /* OpenMeasurement_Tracking.swift in Sources */, + FA9A9A3BB073A62A3BA6A66DEEDD044E /* OpenMeasurementAction.swift in Sources */, + 25CD9464A3EB4642E2B6CE7BD663D0FD /* OpenMeasurementActionCreator.swift in Sources */, + DAE17EA38B469A49A2022E2F95D24E42 /* OpenMeasurementServiceScript.swift in Sources */, + 3A7573A2CF5DE2034E6FF6B1F68E35E3 /* Pause.swift in Sources */, + 1F6F590455AF60F812C89C70FC7A5DDF /* PauseAction.swift in Sources */, + BC18A1A5132C2B80CCD400D0F04900F9 /* PictiureInPicture.swift in Sources */, + BE9C318114DF1FD41C9FEB24A6D60EBB /* PictureInPictureStatusUpdate.swift in Sources */, + A94DB4B08B6172074242D3CF3FB104C8 /* PictureInPictureToggle.swift in Sources */, + 9E8F880488DD1A9B10655F74224A81DC /* PictureInPictureToggleAction.swift in Sources */, + 85727085FCE345449BDFBE348A386D17 /* PictureInPictureUpdateAction.swift in Sources */, + 19412ABAC5DF146022BD8FA17209C37D /* Play.swift in Sources */, + 7A75C8E9C4AECBFE30ED7185A5C07897 /* PlayAction.swift in Sources */, + C41F15E3CCE90423E6F38E2DEE0BFA3B /* PlayAd.swift in Sources */, + AD69F0BCE8B6D232780AA8B2016C3BFD /* PlaybackBuffering.swift in Sources */, + ED188F40FAAFA18C7392C2970610BABB /* PlaybackBufferingAction.swift in Sources */, + B8E4A031D6A2B1B257D9307E8AE66A46 /* PlaybackDuration.swift in Sources */, + E26535EB6D8D597BDAD8ED98CB8C95B9 /* PlaybackFailed.swift in Sources */, + 3D5B102FE36CFB476673B35F9F40BA5D /* PlaybackModel.swift in Sources */, + 839F555BFC0891B25A75B14F01855740 /* PlaybackReady.swift in Sources */, + DC1C3057F839B04770CC1C87DCDA804A /* PlaybackSession.swift in Sources */, + 8EB6D58F7FEB0806CB3F51A358181461 /* PlaybackStatus.swift in Sources */, + 63A6FE0129ED5EC126043C43399A13D0 /* PlayerCore-tvOS-dummy.m in Sources */, + 24196547C583A531C0DE98CDD489B5A3 /* PlayerSession.swift in Sources */, + C8DA7937C27E923F82987A0097E76B6A /* Playlist.swift in Sources */, + 6B66E05C48CC22E218C1AA2125D74BE2 /* Prev.swift in Sources */, + CE067F3EACBF77B420077ECD2B902D02 /* ProcessGroupsAction.swift in Sources */, + 47F41540601D3776697A2FD1479D5B21 /* Progress.swift in Sources */, + 31E1E72CC2031F002F2EC3F3DD8B36FD /* Rate.swift in Sources */, + 89E05C6F8072ADEE40F9CCC29EAB0C4B /* RendererDescriptor.swift in Sources */, + EB0246A8C28C1F8B124A33B68C1D3752 /* Replay.swift in Sources */, + EA2AEBE41A9097AB039EDB27892DEAE6 /* ScheduledVRMItems.swift in Sources */, + 531420EE8508B906B06944B684E78D67 /* Seek.swift in Sources */, + 9984ACCC2FC8D85AF35E1CED772CEF24 /* SeekToTimeAction.swift in Sources */, + 9889F8D93EEAD1A8C3C9E2301003AE28 /* SelectVideoAtIndex.swift in Sources */, + 0163C8661E5AE5BFCA06AFB2F492B3A0 /* SelectVideoAtIndexAction.swift in Sources */, + 0FAD747ED5DC26D3DE8A052CDB6C78A6 /* ShowAdAction.swift in Sources */, + 177DFAED07623C98DCAA9FD2A208AA7A /* ShowContentAction.swift in Sources */, + E82522EBDCE0F5357E86C1D20063F08F /* SkipAd.swift in Sources */, + 8C8C9478C8779A449922D2918526201C /* SkipAdAction.swift in Sources */, + 16F64BD7DC67712786A478FC221BCCBC /* StallingRecords.swift in Sources */, + 98DE8D8D279A665E8E7FC487591FA73B /* State.swift in Sources */, + A313918991794FCF13705841BC9649BC /* Thumbnail+VideoProviderResponse.swift in Sources */, + 5120A5AF9FBA3C2F4A140437BD15E2E0 /* Thumbnails.swift in Sources */, + B7E8B7735F27D6B63426D54D4DF5EB25 /* TimeoutAction.swift in Sources */, + 49B4B2163C1284D08E180356DEEF7F42 /* TimerAction.swift in Sources */, + BBD13983AC5BCEF3F83D7E1469013745 /* TimerActionCreator.swift in Sources */, + A63EA9BFAAD79ECC6F1A9F8D002D1788 /* TimerSession.swift in Sources */, + 38D9E70DA96DF7AB51B5D28B30B5B140 /* UpdateAverageBitrate.swift in Sources */, + A249372BAA5ACF23E711E59F5185A94A /* UpdateAverageBitrateAction.swift in Sources */, + D6C6DE15FF4AFE89461B850DFC1D6203 /* UpdateCameraAngles.swift in Sources */, + 61D7DFA6B071637D69C9A8CB4163F04E /* UpdateCameraAnglesAction.swift in Sources */, + A2C8B991E2EAD29ADF46DC2B1F201BA9 /* UpdateCurrentTime.swift in Sources */, + 565388E6642C7971B93C9B47B7E12CF1 /* UpdateCurrentTimeAction.swift in Sources */, + 93EC220423DBC0B062205F56DC7D35A2 /* UpdateDimensions.swift in Sources */, + A402BE5963E062B34F83F5385A68C77B /* UpdateDuration.swift in Sources */, + 391789C56BE49F6C25C63B2C01E70277 /* UpdateDurationAction.swift in Sources */, + 071F0ECA15382126A440698A52E5BFC0 /* UpdateExternalPlayback.swift in Sources */, + 3ADAEB8F455B087C0CBB17B20E526FA2 /* UpdateExternalPlaybackAction.swift in Sources */, + 04837C38009BE40A0145FE197F04B4CD /* UpdateExternalPlaybackStatus.swift in Sources */, + 51B34D47D34426234A7A9E49888A5F53 /* UpdateExternalPlaybackStatusAction.swift in Sources */, + 21AC8DC8E42FBA8F345517DE7171F581 /* UpdateLoadedTimeRanges.swift in Sources */, + 7CED46AC6F0D2721B71DC34349A74C1F /* UpdateLoadedTimeRangesAction.swift in Sources */, + 650D7162E9648849C1B763EB0BB69DC0 /* UpdateMediaOptions.swift in Sources */, + 10C7CFDDE0CBF89D6AC32459FCD375D4 /* UpdateMediaOptionsAction.swift in Sources */, + F61660C08206844C098521BF16DCB25B /* UpdatePlaybackBuffering.swift in Sources */, + 5BF6F9E8CE7BBCFE55E2BC437B69723C /* UpdatePlaybackStatus.swift in Sources */, + 0768DBDBA45FDAD4DF1FCAD3775652C5 /* UpdateRate.swift in Sources */, + AA1A5EB98293610C3734427F63CA38CE /* UpdateRateAction.swift in Sources */, + B0BE91F0197A514F631D142F631DA130 /* UpdateViewportDimensions.swift in Sources */, + D639426EB34040DB9D493628C79BAA54 /* UpdateVPAIDAction.swift in Sources */, + 5DADC4BC110E31AE9713BB35802612B9 /* UserActions.swift in Sources */, + 49D0555033B9B3E9A993899927ECF508 /* Viewport.swift in Sources */, + 1EDA54BC67D7C762FFED6FA318A24535 /* VMRCoreProcessingResult.swift in Sources */, + ACB25A761BF03E8576AB7ED592E9CAD7 /* VPAIDActionCreators.swift in Sources */, + 06DA12D99FB206AD038AEB8DC95C2F9D /* VPAIDErrors.swift in Sources */, + C4F34B6F86AD91DAF8265C1D0C690756 /* VPAIDState.swift in Sources */, + BC57E7A658B60A660610B0C8ADB6F658 /* VRMCoreAdProcess.swift in Sources */, + 157B8D1B369AC19C43171859C5616B6B /* VRMCoreAdRequestAction.swift in Sources */, + 690237E764485AC57E2B274CEE440C59 /* VRMCoreAdResponseAction.swift in Sources */, + 3F069C85086690972A7DF946EDAB00C4 /* VRMCoreAdResponseActionCreator.swift in Sources */, + D058E039BD66930657A0ECD7503AAD7F /* VRMCoreGroupActionCreator.swift in Sources */, + 19E40A0175B53156B55D59AC3DB78BB3 /* VRMCoreGroupProcessing.swift in Sources */, + 973C7230E9D31FB4AF6A9AF3633D15A4 /* VRMCoreItemScheduling.swift in Sources */, + 9188A0C0D75377C9E12172EAD9706F25 /* VRMCoreItemSchedulingActionCreator.swift in Sources */, + 826792DC2E7AE6CBB1868D65F10845E9 /* VRMCoreNamespace.swift in Sources */, + DB1EB8A681C3D822C761432124C76860 /* VRMCoreResultSelection.swift in Sources */, + BB2C565DA89562A98DF60468E7029430 /* VRMCoreResultSelectionActionCreator.swift in Sources */, + 318CC61ED38806B74B97C98A820AA3F6 /* VRMCoreVASTModel.swift in Sources */, + 5949321035D0171D0B4C55584346EC2F /* VRMCurrentGroup.swift in Sources */, + 3D0A3E838D4B842DEAA6B21AE107F731 /* VRMFetchingError.swift in Sources */, + 8DE2F8B76F2042D098DC756BBAF04189 /* VRMFetchItemQueue.swift in Sources */, + 7BFABE801868B89152F02F84E7D95896 /* VRMFinalResult.swift in Sources */, + F2905F6CB9B3D1AE9318E57E1E056CDF /* VRMGroupsQueue.swift in Sources */, + 8605CCB674B8549D4912DF13CC3DA289 /* VRMItemActions.swift in Sources */, + C2C82C2BD3186FE13C26E9D6FC1D0CC2 /* VRMItemResponseTime.swift in Sources */, + A071FDE1F555914223C65EC4B2282EA8 /* VRMMaxAdSearchTimeout.swift in Sources */, + 1C299DA1EC4557BB75F7C62DA3F09E76 /* VRMOtherError.swift in Sources */, + 7EDDD5C7FE62BD8E5BD8B1D8DF88BE30 /* VRMParseItemQueue.swift in Sources */, + 96A01A7A3A1A8E82AB030E6A7E9B1D9A /* VRMParsingError.swift in Sources */, + 89C0EA30EA8F74DD5CD9E33935D4018C /* VRMParsingResult.swift in Sources */, + FB1E54733883EE37AFE2A37D25274037 /* VRMProcessingResult.swift in Sources */, + B68E1B12D7923704E4669DD196E2FB7E /* VRMProcessingTimeout.swift in Sources */, + 21A3A254E108B2C19F8577A26DC23289 /* VRMRedirectError.swift in Sources */, + 91425F983EA8B06AAA0F48F8631F18C3 /* VRMRequestStatus.swift in Sources */, + 9C1395C96335C9A89234BAB07A250C07 /* VRMResponse.swift in Sources */, + 3BA9E955379BCB3C8C9EF8A579563EAA /* VRMResponseModel.swift in Sources */, + AC55139BC5F68C2A24C9435DBE8FF190 /* VRMTimeoutActions.swift in Sources */, + 86B6011BD8A8E691628A7A6E51405310 /* VRMTimeoutActionsCreator.swift in Sources */, + B849B9BAA39A9BE413A6ED62F51F12F1 /* VRMTimeoutError.swift in Sources */, + 9559DAAF1EDE43D1F9CA3CF5127101E5 /* VRMTopPriorityItem.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3E4155D9946FE6DFDB8A1E7C18C7CD62 /* Sources */ = { + 3159EA04804AE41D70A5BEB38DACE179 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - B3FEE25AB11A9634FC07784832DBE74E /* Pods-Tutorial_tvOS-dummy.m in Sources */, + 16623359C4C3B5BE53D18F912DE0CB71 /* 3secPlaybackDetector.swift in Sources */, + A22CD02A935A657E2F0EED302F68FBC2 /* Action.swift in Sources */, + 56838C413A956C2833D02456A94B39DE /* AdClickDetector.swift in Sources */, + C98431965B7E64ADB0B9D2E0E660FA79 /* AdEngineRequestDetector.swift in Sources */, + 1FDB9AD622B594B53BBF6407ECF3AB8E /* AdEngineResponseDetector.swift in Sources */, + 49503F5A3E0C4B9A0A6C720FCA3CC026 /* AdErrorDetector.swift in Sources */, + DB23C76DC151BC9D71D740A33CEAB77E /* AdManagerPresenter.swift in Sources */, + 0492CBCDA9951031F0659AADA022340C /* AdMaxShowTimeDetector.swift in Sources */, + 3ECBD1BEA8630A969AD9352AB8F79024 /* AdMetrics.swift in Sources */, + 245DCC6FC73A007EA1C01BA6FA3BE8B0 /* AdPlaybackCycleDetector.swift in Sources */, + 6125643C3FEC28DF52628A147274100E /* AdSkipDetector.swift in Sources */, + CFE3D1936340E0710D572970BAA8E44D /* AdStartTimeoutController.swift in Sources */, + A34BCF7F834784A4022742FB6F5DCBB9 /* AdURLProvider.swift in Sources */, + 8522D7D5FF7D11909FC31BB7C33BAA0F /* AdURLProviderProcess.swift in Sources */, + FB3EC46B4CCDCED76A7CE6371A33FA74 /* AdViewTimeDetector.swift in Sources */, + B2AB0B78AC021EC19C073EA265CE1F0D /* AdVRMEngine.swift in Sources */, + E400CD246DE98FEFF19C2A56AF3B7217 /* ApplyDecorator.swift in Sources */, + 910E7F9E9708FB4F8B8367A4F48F91F0 /* Autogeneratable.swift in Sources */, + 9C1E8BD5322ECFE375BC44DB1B656AB8 /* BufferingDetector.swift in Sources */, + 01BED686E3EE28DD8C6FEFFF856910C5 /* BufferingStart.swift in Sources */, + D7004B6517F99F3310A862ED3726A82C /* Configuration.swift in Sources */, + E60D11218347F8C90536E72A9FBB4AD4 /* ConfigurationParser.swift in Sources */, + 8B966AE0DE3A99626E9B843924C64A3E /* ContentControlsViewController_Binding.swift in Sources */, + 4FC937502AB32134B7DC08CDB9EE733F /* ContentPlaybackCycleDetector.swift in Sources */, + 9656F9C1C34AA1504947E791DAEEA307 /* Context.swift in Sources */, + 155894947BC5DD0A9B571712BC9C4B61 /* ContextStartedDetector.swift in Sources */, + CD7CD2ABD1B6B585A2E6657FE743B7B1 /* DecileDetector.swift in Sources */, + 8837E87BD7301329DD5659C0A4647108 /* Dictionary+ParseJSON.swift in Sources */, + C667C79F51098A052B96DE1F9091C34A /* Disposable.swift in Sources */, + 7A9FCD76109A0B9AE129405517CA5624 /* ErrorDetector.swift in Sources */, + 2395A3B40BC7B1BEDE9A56616126946F /* ExecuteOnce.swift in Sources */, + B017A061EA35AEB5DE9BAA0E3315B6A1 /* FetchVRMItemController.swift in Sources */, + EF40D294FAFB644453CD856FB6AC2ABF /* FinishVRMGroupProcessingController.swift in Sources */, + A4B0E2AE9C5E7F0BD91F0F260CCD782F /* Future.swift in Sources */, + 1FE82CC14D9E0F214C58002086B5C5B1 /* HeartbeatDetector.swift in Sources */, + 5A2410651C7734E78DDF8A538A58D786 /* IntentDetector.swift in Sources */, + 7B5EC6A60BEDFD242BA760CFDDCC0478 /* JavaScriptObserver.swift in Sources */, + 21E598CD393521FACC081501D04E79C3 /* JavaScriptTelemetry.swift in Sources */, + 3BDFED15585ED707E43D55B9AF0ADF46 /* MaxAdSearchTimeController.swift in Sources */, + 90E5C9D8E9849F446E688074D1204437 /* MaxShowTimeController.swift in Sources */, + DC48E93F7C59F570D435A1766BD4756D /* Memoise.swift in Sources */, + F12AFD54A8BBEDA37267C359D6A034D3 /* Metrics.swift in Sources */, + CC2DCDDDF1942FCCEB9E1C9338BB2B7B /* MetricsSender.swift in Sources */, + 5CF83DF75EEFC52C5AD4E0936C6D8792 /* MidrollDetector.swift in Sources */, + F4A0CDCCDC5D7C23AEFDE0F5D4C9A5F1 /* MP4AdCreativeController.swift in Sources */, + 562C6CA94EB0D263883A15BA11751EDA /* MuteDetector.swift in Sources */, + BFDC25D3FE6385DEF37645F56B71E9D9 /* Network.swift in Sources */, + F662A331DB434C4A34B4B191FD1F88EF /* NonEmptyString.swift in Sources */, + B813AB8D024E76C559F165E12F7B322D /* Observable.swift in Sources */, + 094EC2E10209464653AF224D1216FD63 /* Observer.swift in Sources */, + 56223136EB5533A4D05F42512295DFC8 /* OnMainThread.swift in Sources */, + 925D04C69DA51004FDA8460891BE76E2 /* OpenMeasurementContext.swift in Sources */, + 4442A81CC218F0B5CF7D97692B558D53 /* OpenMeasurementController.swift in Sources */, + C3A83589C0BE35746BEAF6BCB09F9B45 /* OpenMeasurementServiceScript.swift in Sources */, + 5CCEE92EAB9FB56CC9FE67B8646ECBED /* OpenSafariUtil.swift in Sources */, + 93E4B66ACCE93E8F6B8758720F64A106 /* ParseVRMItemController.swift in Sources */, + 7DB6B08F33C3395EBA4302A1E56C184D /* Pipeline.swift in Sources */, + D2E23857419BAD1579CE0E5430F7AC40 /* Player.swift in Sources */, + 8EA4E7A2B21259ECE97CD43C498AD62D /* Player_VideoEvents.swift in Sources */, + EEAC1BDA8BCA0B0484F061D6B38DCF13 /* PlayerInterface.swift in Sources */, + C8024F08195530243922FE6120D06E62 /* PlayerProperties.swift in Sources */, + 7143D4B29D2AA012D1E51AD88F9236E0 /* PlayerProperties_Init.swift in Sources */, + 6F145E653F5C0236784A7ABA7EFAEE06 /* PlayerTracer.swift in Sources */, + BBDA692CB2F822A2150B3C93F7B8C44F /* PlayerViewController.swift in Sources */, + 67BB870BFE9ED236315B460F2906C389 /* PlayerViewController_Binding.swift in Sources */, + D370318336FF15D6D762A38513C7E5DB /* PlayerViewController_Clickthrough.swift in Sources */, + 5B17D4926B08FF9014A438E64DB0C3B8 /* PlaylistStatisticDetector.swift in Sources */, + AA49DF263C468C3B04EF13270DBEB106 /* ProcessAdItem.swift in Sources */, + F329BBEA927612824FA209BDB1A91AC3 /* PropsMapping.swift in Sources */, + A752BAD75E4AFD000D2E15069A4795AA /* Provider.swift in Sources */, + 2251D40059749A3C4769CBC80CD7562D /* QuartileDetector.swift in Sources */, + 6F6086BADB62DC67AC03753C38D25615 /* ReporterTracer.swift in Sources */, + 120E275883B4234C8F6ED18380E58189 /* Result.swift in Sources */, + 3C20035F6D2EF04964ED8D240163FC91 /* Rethrow.swift in Sources */, + C6468263C924304BAE8C4BEF7EC89252 /* SkipRepeatsDecorator.swift in Sources */, + 6F50E926549FA64BAAAD4EE98217E88D /* SlotOpportunityDetector.swift in Sources */, + 5CE7A48F3AD0949A65C0FBAD10F20075 /* StartVRMGroupProcessingController.swift in Sources */, + BFB50B106D89DE497F18BE0E8563F895 /* Store.swift in Sources */, + 080EB3ED5C59FFB43B51141EE02A4A11 /* Stub.swift in Sources */, + DB81B2BCCA7A1E732C481EF0E150E5EC /* Telemetry.swift in Sources */, + B400901244946C1BDEA3166580768676 /* Timer.swift in Sources */, + EA9C9557C1592ED0C39D6B5DCDB9C629 /* TrackingPixelsConnector.swift in Sources */, + D6065DE55A84EFBE4C5D65A8511D0D65 /* TrackingPixelsConnector_Ad.swift in Sources */, + B728E78CA96A37B926757D2D6826827B /* TrackingPixelsGenerator.swift in Sources */, + FE86777B2B8A8688FE73C4F19BCF1D77 /* TrackingPixelsReporter.swift in Sources */, + F1A7C3C663556D72E53312DA3A0000E9 /* UserActionInitiated.swift in Sources */, + 74210598ABD853CA09ABAE087B50EE2A /* UserActionsDetector.swift in Sources */, + D609D4AEC94606E897A4D9448E7BC3E7 /* VASTModel.swift in Sources */, + 035143BE5FAE20F1FE84B119E40E66C7 /* VASTParser.swift in Sources */, + 4BEE191AFA0CA0CABD2E0968B99A0A8C /* VASTParser_Offset.swift in Sources */, + 16F63269229B2379673DB87EE824FD13 /* VASTWrapperProcessor.swift in Sources */, + 0887765DE5EF8FC85ADB59F7CC1A6FCA /* VerizonVideoPartnerSDK-iOS-dummy.m in Sources */, + 7A27775A1E07A7B9AE28FD9D217B565B /* VideoActionsDetector.swift in Sources */, + 8B1C7C9B759A377D6D0CC36CEFD29D7E /* VideoContextPresenter.swift in Sources */, + 6F7F43FE95D6CC96EE7C4D73F831A3FF /* VideoImpression.swift in Sources */, + 22C5951F8E6E19092BCDDD8B155AF9D2 /* VideoLoadingDetector.swift in Sources */, + 5F8225895576D2FC29C55D6924C03009 /* VideoPlayDetector.swift in Sources */, + 8B7D518BAC07F50201B6C21EC491072D /* VideoProvider.swift in Sources */, + 77B0604B3C91C316E8C821DE68063EA5 /* VideoProviderParsing.swift in Sources */, + 53EC6C4BAE3EF6797A12124FA2627B4C /* VideoProviderResponse.swift in Sources */, + 5157483E9263C80E19D5D799077CDECC /* VideoSelector.swift in Sources */, + 5E698480B1B1B731BCE44AC083AAC961 /* VideoTimeDetector.swift in Sources */, + A8BFCB23A4FB16D95EA1284E028BEEFA /* VPAIDAdCreativeController.swift in Sources */, + 85235E5C9C54E135CA2F9585F71DB552 /* VPAIDEvents.swift in Sources */, + 54A8C6D43BA7A81266DE88FF85085FDB /* VPAIDMessageHandler.swift in Sources */, + DD9A3F8895E2A6C6CBEAF6F5EAE037E5 /* VPAIDProps.swift in Sources */, + 4ACCE9144F189E43E1A54DFD74FB8595 /* VRMDetector.swift in Sources */, + D0F5A776F2021715E14216403094498C /* VRMItemController.swift in Sources */, + 28492A755D4E5B22B5265DB47C7BF1ED /* VRMMidrollProcessorController.swift in Sources */, + 9843EFF5B4068313B4A6BDB3ABAF0DAD /* VRMPrerollProcessorController.swift in Sources */, + C410402C6AB699ECF983058484A3A503 /* VRMProcessingController.swift in Sources */, + 88386F554F455FFAFB5F0A9B46D7ACC6 /* VRMProvider.swift in Sources */, + 0F80A927995D5EDDA2C84869A771F1EB /* VRMRequest.swift in Sources */, + C8841E16ACE37DDAC4731CA46D48F5AE /* VRMRequestController.swift in Sources */, + C4C67C9655965EBF8B7E743E42AF260A /* VRMRequestDetector.swift in Sources */, + 8AA93BDF23FC4D28C88D2D38FDF45F51 /* VRMSelectFinalResultController.swift in Sources */, + 72E28A5236356BFAACBF1F14B0324A76 /* VRMTimeoutController.swift in Sources */, + EBB28761CB9758302D31A9895358D96A /* VVP.swift in Sources */, + A37F92517E9528A4ED56FEDD5F67FCAF /* VVPSDK.swift in Sources */, + 34A12C2ECD1EB6BB865F219EE3460B02 /* VVPSDK_Version.swift in Sources */, + BA37E4071259E281826FF75C409AAF61 /* VVPSDKPlugins.swift in Sources */, + C11316E7A2585E388AA627EEEDF3800E /* WebviewViewController.swift in Sources */, + 1789481C46B8E1FBCF2893B129624130 /* XMLParser.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5D1AE321F7DBF3DA443857C2122EA084 /* Sources */ = { + 417D518F584E1B5F0EC84D47010AEDFB /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 13006ADFA5309354C0C2F01C6C63A5DB /* Action.swift in Sources */, - 636D9CE2EC712841C51987DE6F305041 /* Camera.swift in Sources */, - A2DAE554008815290998A0DCD9E98E82 /* MediaCharacteristicRenderer.swift in Sources */, - 7C439187B946B1011C0189C76CE69498 /* PictureInPictureControllerObserver.swift in Sources */, - 54DB5EB735AF497E82EBDAD7C1930E9E /* RendererRepository.swift in Sources */, - 1A12F1D6FA4E516008150AD79031AFC5 /* SeekerController.swift in Sources */, - B21C9658870D95A139D7DC69F8B01682 /* SphereVideoStreamViewController.swift in Sources */, - 285634EEEA1B79CEAC1EF51EAE1FA197 /* SphereView.swift in Sources */, - FAD5A84265839FBA291950B62979F8F7 /* SystemPlayerModel.swift in Sources */, - C467568DEDDAEC92731CB0C6D55B71B7 /* SystemPlayerObserver.swift in Sources */, - F1AF3F7932E77F4E99A3DCE75AA05459 /* VideoRenderer-iOS-dummy.m in Sources */, - AC9A77B644956251A0CBD53693643A2D /* VideoStreamViewController.swift in Sources */, + 5AF71F20EEA02BE95E58A1209BF01B9C /* Action.swift in Sources */, + 84CC7060D8E607B5E7BB161DA7318A9B /* Camera.swift in Sources */, + 13773180A7B21A22C7A8D0802D796D8A /* MediaCharacteristicRenderer.swift in Sources */, + A63C69902CCD4A64434A3363FE1E43E8 /* PictureInPictureControllerObserver.swift in Sources */, + EE12738298398082C394B0A6B4FD2452 /* RendererRepository.swift in Sources */, + E75F2742D6872D65FACBED1AB5FE4623 /* SeekerController.swift in Sources */, + AA276B5F3042CF595D6189CB84E7796C /* SphereVideoStreamViewController.swift in Sources */, + D66D0CC31843206BFD367AF94DEBBB27 /* SphereView.swift in Sources */, + E31F2DFD166C0607288F3A9394CEE5FD /* SystemPlayerModel.swift in Sources */, + 31769E691AF5741F2BE70D29C5DFC924 /* SystemPlayerObserver.swift in Sources */, + 26511E5751DB11E6C2D0F804A9995C6B /* VideoRenderer-tvOS-dummy.m in Sources */, + 383282FAA83C3F4417E00A3397D65BDD /* VideoStreamViewController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 764CD2ED58E27B4C6B490FDA078204DF /* Sources */ = { + 6FA418C1D253BD896D3A421152E9E4D8 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 751D41DF848557350F1E1B6044285A65 /* Pods-Tutorial-dummy.m in Sources */, + 4E4641278988D10DB8195141E54E318F /* AdVideoControls.swift in Sources */, + 4CADFD5B045C69689844B6C083D33099 /* AirPlayActiveView.swift in Sources */, + F61821E69EBC0713D929166FDA3650F2 /* AirPlayView.swift in Sources */, + 0C31F044523BB7F2316E037D310B8369 /* AnimationDelegate.swift in Sources */, + D567D701D832FA1ABDF0C31F430A2599 /* Autogeneratable.swift in Sources */, + 70ABF9E1A19B68FEE202C2C2E58DC399 /* BundleHelper.swift in Sources */, + 3F87B5F9F6580238D85BBAA2C100BD99 /* Codable_PlayerControls.generated.swift in Sources */, + 95D98FD135BD4F592D8563185244D4A2 /* Color.swift in Sources */, + 1D88F56A6E593D2D54F9637C50B8A8BE /* Command.swift in Sources */, + 9234CC3F8894567AEB17F0E36AF6390D /* ContentControlsUIProps.swift in Sources */, + 8485815AA80455FD7ADE1D3B06828D31 /* ContentControlsViewController.swift in Sources */, + 55AB47EEC904CEE155ACAAF28F9348E4 /* ControlsVisibilityController.swift in Sources */, + A47053F34DAAC6A6EB78EAE6969058A9 /* Defaultable.swift in Sources */, + A5EC3BBDC6DCD4B8EC26683C0AA39FAB /* DefaultControlsViewController.swift in Sources */, + 942CB62F57BBC284F920FE3FED24CF59 /* EnumPrism_PlayerControls.generated.swift in Sources */, + 999E0037167617157E03A87AF6EECC41 /* LoadingImageView.swift in Sources */, + 21D8775E2B1FA300BA4C0C15B76FBFA8 /* PlayerControls-dummy.m in Sources */, + 8512FDE575A96A7D63DE9CF577F567F4 /* Props+Autogeneratable.swift in Sources */, + 9F75378B9C01234564B7834850A28CD9 /* SeekerControlView.swift in Sources */, + 1C3100DC2D7BA3577CCC28CFA4119DFB /* SeekGestureRecognizer.swift in Sources */, + FCC8BB009211F957D0A2A60CB3DDF7FC /* SettingCell.swift in Sources */, + 7854647CF848C4D629A0380CA062D6C3 /* SettingHeaderView.swift in Sources */, + 8C8185C5087520C9BB4EA841AB4D3B7D /* SettingsViewController.swift in Sources */, + B59240D07AF5C5A2CCE6FBDC91081BB2 /* SideBarView.swift in Sources */, + A3F7952CC3BA805D3C8CF33DFF3CDB7E /* TimeFormatter.swift in Sources */, + 14FECBD5293A98FB9ADE340069406A43 /* Timer.swift in Sources */, + F84825B40EA31B02C6FC6E3433595D53 /* Utils.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8B6327A0D004F52F79938FC78E5837FD /* Sources */ = { + 8726F8A1698A44F9BD78D6F0FDBDDABA /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - CC57597E4951B8FD37A72617D7C3BDB8 /* ActionProtocol.swift in Sources */, - F41A18634854CB102E1793BDDA61A8B8 /* Ad.swift in Sources */, - 65262E659574751239A2A696B8DAD31A /* AdClickthrough.swift in Sources */, - 5B26D637FD0CE39DF6F00DFE938380FB /* AdClickThroughAction.swift in Sources */, - 477A485CB74262412D0C384FC78F316C /* AdClickthroughActionCreator.swift in Sources */, - D20E04FAFC7F4FC96D312C0D6B1BC598 /* AdCreative.swift in Sources */, - 5BD2E625164C8581CF6FA5493A984FD1 /* AdFinishTracker.swift in Sources */, - 52C0287FF678EFAD3A6CBEE402892CBC /* AdInfoHolder.swift in Sources */, - 206B1F089A48D27FE631E8C425958355 /* AdKill.swift in Sources */, - 3A3722D020E59F6AFC2988357FDE5A0E /* AdKillAction.swift in Sources */, - 985F06CB507272ED65332F6A35C32CB4 /* AdPixels.swift in Sources */, - 28818B1BC14B573058980FEC03C84539 /* AdProcess.swift in Sources */, - 78077347950326BD223B2C23BDC24938 /* AdRequestAction.swift in Sources */, - CCFD9BC48B025EA1D61995002B4FCAE7 /* AdStartTimeoutActionCreator.swift in Sources */, - B76ED00DD8B8C88F330ED381F84D7BDD /* AdVASTModel.swift in Sources */, - 340E9E3DFC7EFCF9305DF0F25656B333 /* AdVRMManager.swift in Sources */, - 4C095654AE7EC89A8CC68D3B6340AFC6 /* AdVRMManager_Hashable.swift in Sources */, - 611AD8152DCBBC5C64E0BB3D89EF052B /* AirPlay.swift in Sources */, - A914CBAB9CBB474EA6C8C3922947FD73 /* AverageBitrate.swift in Sources */, - 65DFD49B5AAE529767D587FDC399F822 /* CompletePlaybackSession.swift in Sources */, - B2E55381820EB4698EF4A5ED6A2BF380 /* CompletePlaybackSessionAction.swift in Sources */, - 20637D74F62B21E0F2A688DF1ECE3AC6 /* CompletePlayerSession.swift in Sources */, - EE2A7C42A5F2E813AE9F0B0D41229297 /* CompletePlayerSessionAction.swift in Sources */, - 6AB895299CEE864298A1D5F28FDC042E /* ContentFullScreen.swift in Sources */, - D2CDE4C1FF11EA31C36C56E89CB07140 /* ContentFullScreenToggle.swift in Sources */, - 0FBF49D400C5EB84E0834B4FCE47A312 /* CurrentTime.swift in Sources */, - 0AEDF5777C14132A718069AC73EB5487 /* Dispatcher.swift in Sources */, - 2FE46B8A7E5432F69722FB73BB4026D1 /* Duration.swift in Sources */, - B6872D2A74D8BCD39E9D4BE871CF6359 /* EndPlayback.swift in Sources */, - 703543F7CEFC7FC0DA16E0840BFA85DA /* FullScreenToggleAction.swift in Sources */, - 09C267AD29698E879AECCAEC9FF4F2CA /* InteractiveSeeking.swift in Sources */, - 7E37352CF666435C5436D3D115B3014A /* LoadedTimeRanges.swift in Sources */, - C1D1E0340BF4ECE3B3B47775D008772B /* MaxShowTimeActionCreator.swift in Sources */, - 426DB12AE681BA5853A02AE79B0DF326 /* MediaOptions.swift in Sources */, - 70E97439D8E85D67AC6CCCF630C62055 /* Mute.swift in Sources */, - E87D6E19AB33E33C2139383334BD0A3D /* MuteAction.swift in Sources */, - 6F1B34BF617DF30EE9F7884925220072 /* MutePlayer.swift in Sources */, - F2D04E35659945ABB4D0C2B8EC4F233C /* Next.swift in Sources */, - B568BFD14227E6AEEEF784024D273823 /* Nop.swift in Sources */, - E4DE9136AF28DD0E072BEF91DBC55DAD /* NopAction.swift in Sources */, - 6FAD6FA64362F231445A118A7872DACC /* OMScriptServiceAction.swift in Sources */, - 06FBE7CC4F62B700FFEC7C69CEDA6FC7 /* OMServiceScriptActionCreator.swift in Sources */, - 7D4A496039AD6B4243D582426A3C5AEC /* OpenMeasurement.swift in Sources */, - 1859D492849A9DE3303D534D20A12BBB /* OpenMeasurement_Tracking.swift in Sources */, - EDEDB7039D6879D8A6FBE3FBB1F81429 /* OpenMeasurementAction.swift in Sources */, - 6C85AA01D6E10E8A75147A1495C2D6D8 /* OpenMeasurementActionCreator.swift in Sources */, - 05E6AA91567657128CC25EBF86DD402E /* OpenMeasurementServiceScript.swift in Sources */, - 2AE0E881A697D06F38C24F28AC659271 /* Pause.swift in Sources */, - 99AE48EE5A32E8088A6A1826F35DD0E0 /* PauseAction.swift in Sources */, - EC6D277024F1DE148BB0D6A1A706A9DE /* PictiureInPicture.swift in Sources */, - E3F1333C4C261699A2405E0EB1D540B9 /* PictureInPictureStatusUpdate.swift in Sources */, - 7A13E0342436C7FC245014BCDD321438 /* PictureInPictureToggle.swift in Sources */, - 6D41DCBB8027D4F6A3CDB8165E5DD893 /* PictureInPictureToggleAction.swift in Sources */, - 9D19D5D5D20CD1B7E17DD300FBF1AEE1 /* PictureInPictureUpdateAction.swift in Sources */, - 059E98E7F5B3AB8D2DFA8F490578529B /* Play.swift in Sources */, - DEBD181F1D35EA5DF384DAAF1218309A /* PlayAction.swift in Sources */, - E236080F5559A7285D5727B91C5FB225 /* PlayAd.swift in Sources */, - 15313CB92AAF314511884138F213BE1E /* PlaybackBuffering.swift in Sources */, - 87DE1ADAFAB07CDE7784435A02F69EF9 /* PlaybackBufferingAction.swift in Sources */, - 815EE36974566D45C0DEA5D9BE0D556C /* PlaybackDuration.swift in Sources */, - 2FACB7C19CF50CCD91BC7C0C6C2A013F /* PlaybackFailed.swift in Sources */, - 7F910A5084F7E4F772D592C73CC428C0 /* PlaybackModel.swift in Sources */, - 7702C64E51A941868F1E1B2DA57AD2AE /* PlaybackReady.swift in Sources */, - 4D023C41FC336093448BE44E1C36FD4B /* PlaybackSession.swift in Sources */, - 0DD068D958D79FDD43F0810FEDDD9CD7 /* PlaybackStatus.swift in Sources */, - 782547212AFF650FFCDA345D2DDEAEA8 /* PlayerCore-iOS-dummy.m in Sources */, - 7266A0E4FAC198E2872B00F47D6D55D8 /* PlayerSession.swift in Sources */, - 44EA35EFC96D517DF2F1B455AE81856D /* Playlist.swift in Sources */, - FA59B30E224BA951EE84142F021D3B8D /* Prev.swift in Sources */, - 052E68715401EC95312C3ABBA46D2FCC /* ProcessGroupsAction.swift in Sources */, - 2E9350EFFF3B0E36940A5024EEF3F113 /* Progress.swift in Sources */, - 3F012DC36188529774CA5842A208969C /* Rate.swift in Sources */, - 2D13C9FC4E1E4338E9B2A04E3D7E5469 /* RendererDescriptor.swift in Sources */, - C2AB636DE2DF993A8D54B7269D9E66D7 /* Replay.swift in Sources */, - 3E41ED840737EE09028F8F73D12CA60A /* ScheduledVRMItems.swift in Sources */, - A5A5E6C8654CBE54FEC16839A84B49CD /* Seek.swift in Sources */, - 52C971BF8048E68EA2C0682ADBDDC2D1 /* SeekToTimeAction.swift in Sources */, - F647D3F6E2D6E02D5A2C40567267D2DC /* SelectVideoAtIndex.swift in Sources */, - FD54778E279A45491774B0411942E142 /* SelectVideoAtIndexAction.swift in Sources */, - A5B2277F5FB11FE122623E91F9B27F59 /* ShowAdAction.swift in Sources */, - 33374D7685D6CFAFF39BECB73ED7A197 /* ShowContentAction.swift in Sources */, - 8BF6509B4A62A8E1E077A9C2F24B38D1 /* SkipAd.swift in Sources */, - 9C06F4D2BE6ACCAEB0654AB1784AA4C1 /* SkipAdAction.swift in Sources */, - 2F49EE0B3FF10934B480CFFBD6EA0B2B /* StallingRecords.swift in Sources */, - D799E2E2430637FB3C81249B5EFE5518 /* State.swift in Sources */, - A348566FC91AD92CCB6344C69732D4B3 /* Thumbnail+VideoProviderResponse.swift in Sources */, - 3A37E3B544D1201B9AF6190C6A9E7F14 /* Thumbnails.swift in Sources */, - 75A10B162057CAD11E34DDC29AB4B357 /* TimeoutAction.swift in Sources */, - E61F5C6655435E0F5676AD1A52FE13F4 /* TimerAction.swift in Sources */, - 754D767359459A5F55DC3E25033260D4 /* TimerActionCreator.swift in Sources */, - 4EE17B955EDBB51609F7D87982F6EAF9 /* TimerSession.swift in Sources */, - 3FC81A105AB7BE1AB7B5811F740F701C /* UpdateAverageBitrate.swift in Sources */, - D410F9264EBE83E3B2D276D211548798 /* UpdateAverageBitrateAction.swift in Sources */, - 0282BF9560F16BAF23B98DEE49998F46 /* UpdateCameraAngles.swift in Sources */, - BE2C8A2CD5E28CC39B0FB83A4A6399DB /* UpdateCameraAnglesAction.swift in Sources */, - 01B2633761BCBFE0C157E44055B94289 /* UpdateCurrentTime.swift in Sources */, - ACA47D8C980D32286B5305F3244D1606 /* UpdateCurrentTimeAction.swift in Sources */, - F1719AEB6744B837D4052CAD60659F1A /* UpdateDimensions.swift in Sources */, - 433DE8C2D8364A82C9D462B8CB709463 /* UpdateDuration.swift in Sources */, - 0ED9D1E547343295750EB79C4ECB643E /* UpdateDurationAction.swift in Sources */, - 95202ACC82E32C9889347D584DA11B49 /* UpdateExternalPlayback.swift in Sources */, - 819E06165C711EFB8222B45ED1BEC0EE /* UpdateExternalPlaybackAction.swift in Sources */, - D685537952DC8E999C86D88BAEB83FA4 /* UpdateExternalPlaybackStatus.swift in Sources */, - BC4D9776A0AA59344DCBC3324A896333 /* UpdateExternalPlaybackStatusAction.swift in Sources */, - 08CABFD620A258D05607E715E0F3A02B /* UpdateLoadedTimeRanges.swift in Sources */, - 8B44DEFDC9B37BCF082981267C60AAA3 /* UpdateLoadedTimeRangesAction.swift in Sources */, - B570B1E7873ACF4A2AD4F273DF27B4B9 /* UpdateMediaOptions.swift in Sources */, - FEC636A7821A913BC3F621370640A4C5 /* UpdateMediaOptionsAction.swift in Sources */, - EE308BD38A2DD0A46A1234B5BE149991 /* UpdatePlaybackBuffering.swift in Sources */, - 83EF9828B87D566554FFC3591A69A676 /* UpdatePlaybackStatus.swift in Sources */, - F7A3E66530470CA61979EE5096F2805E /* UpdateRate.swift in Sources */, - C5F3A687E9D36889A18A8D30633DDDDA /* UpdateRateAction.swift in Sources */, - AB8F0312F28EC10F9C263695A1DB0B16 /* UpdateViewportDimensions.swift in Sources */, - EBC53C0E6513887523FBDD3E98267B9F /* UpdateVPAIDAction.swift in Sources */, - B39DB5C87E8A7D1C7B9905FFBEEAE5C9 /* UserActions.swift in Sources */, - EEFE5908D50DAD08E3DD93F6581610A1 /* Viewport.swift in Sources */, - FFEE0BAC1F8938EEF0CAE0A65FB53003 /* VPAIDActionCreators.swift in Sources */, - 40C75F6D9E0708DA8AA47D9ABB8DF9CF /* VPAIDErrors.swift in Sources */, - 18EB8E703481AD7F745D452091B490E4 /* VPAIDState.swift in Sources */, - 9ABC1A9CD47F0AC7998A881E16D2352E /* VRMCoreAdProcess.swift in Sources */, - B6A148796160E8C42B8C0EE954C56361 /* VRMCoreAdRequestAction.swift in Sources */, - 36FADDA766A89EFEAF164869FCDAEA27 /* VRMCoreAdResponseAction.swift in Sources */, - BA86E55950D7702EC253A44CEF3DA22F /* VRMCoreAdResponseActionCreator.swift in Sources */, - 0B3EA77D7EB51B6775A6F2446F0F01FB /* VRMCoreItemScheduling.swift in Sources */, - 9BF1AAF936E71EE703C89C52A19A0D99 /* VRMCoreItemSchedulingActionCreator.swift in Sources */, - 8C6691058BFDF0C85FDBEB94ED629CCC /* VRMCoreNamespace.swift in Sources */, - A535D1D28C6B3BD5D7D7B41CF4643112 /* VRMCoreStartGroupActionCreator.swift in Sources */, - 09F3CAD79C8506A66195436E593DE85A /* VRMCoreStartGroupProcessing.swift in Sources */, - E785BC59A93055BF909176830403CF9B /* VRMCoreVASTModel.swift in Sources */, - 4D2963EC4ABB93BFC1DC1C7456F47710 /* VRMCurrentGroup.swift in Sources */, - DF85FD79B0BD44532174C032F25C6B5A /* VRMFetchItemQueue.swift in Sources */, - 3DA8707BFAC22176BDC48D71ED6FD4D2 /* VRMGroupsQueue.swift in Sources */, - 4CADBB953144A79B6A2DB23352D03C3F /* VRMItemActions.swift in Sources */, - C8F598BBC6B73A799F0D29590DFBAEC2 /* VRMParseItemQueue.swift in Sources */, - 5BEC8C6FC14D8A08F7458CB9CFA7E296 /* VRMParsingResult.swift in Sources */, - 80402A2805A0C06099914A3395E55723 /* VRMRequestStatus.swift in Sources */, - FCDF081820D098E09A4776E4C58E0015 /* VRMResponse.swift in Sources */, - F58E4E29C1C80A092EDE0800D814E9FA /* VRMResponseModel.swift in Sources */, - BD8C1471802CF8DFE22B318C253007B5 /* VRMTopPriorityItem.swift in Sources */, + 78802BFE13D202091DFC54C4CE813362 /* 3secPlaybackDetector.swift in Sources */, + 250C76F1006F832DEF7AE657DB510B84 /* Action.swift in Sources */, + D9AE94DDB1AB9ED69017669691156808 /* AdClickDetector.swift in Sources */, + D7FA41DFDDFA45D255112A0F9673DAEF /* AdEngineRequestDetector.swift in Sources */, + F2472958824F5A21F0F52CCA20CD7A71 /* AdEngineResponseDetector.swift in Sources */, + E5989B3B54EC7CF31F6CA72B2A602478 /* AdErrorDetector.swift in Sources */, + 8B3FEDDBAD104488167BE14E6C7A5D4D /* AdManagerPresenter.swift in Sources */, + 357299D16C5CADA8E10CE9CCAAFA23E3 /* AdMaxShowTimeDetector.swift in Sources */, + 28020D6E961CD67D52D044D3230995C4 /* AdMetrics.swift in Sources */, + 387B7915DE6951EA85B34B4940903188 /* AdPlaybackCycleDetector.swift in Sources */, + B9FA47DD6FB8814A16E48F8E9D22DC66 /* AdSkipDetector.swift in Sources */, + 4B76984C2F0E67AA0DE51A5D7BAAB494 /* AdStartTimeoutController.swift in Sources */, + 928B8480805FEA985ECA616F1E8D1526 /* AdURLProvider.swift in Sources */, + 93E45D265D085FB2AEE4DB29CD2D4D55 /* AdURLProviderProcess.swift in Sources */, + 7654C72FA44FA1FE3D541A158E802599 /* AdViewTimeDetector.swift in Sources */, + 6FD77C2298196EE4A2F539F3AB934D5C /* AdVRMEngine.swift in Sources */, + 7CE583AAC2A6D8FB54AAAF8EE217F79A /* ApplyDecorator.swift in Sources */, + 5DC85A4337C2D91EC2CAF359EF1C202C /* Autogeneratable.swift in Sources */, + B97C7295F8F86B109729E64D04658511 /* BufferingDetector.swift in Sources */, + 9C58DB3DAF465A530AAA82CA7745AD2D /* BufferingStart.swift in Sources */, + 4E8E8257C47A5BC5F316F70D3C4980C2 /* Configuration.swift in Sources */, + ADFF40DCA442E301FA6B052AF32DFACD /* ConfigurationParser.swift in Sources */, + B52839891610610A69AD1645F457B222 /* ContentPlaybackCycleDetector.swift in Sources */, + A5C0499B83907BC52AC9F7340F1C4BC0 /* Context.swift in Sources */, + A37B92236E206188F01530D8DEDEB41F /* ContextStartedDetector.swift in Sources */, + 8C85272E3DE6C40C40742102B3DF82C5 /* DecileDetector.swift in Sources */, + 73B79C02ABAA6BA6B677951586F205CC /* Dictionary+ParseJSON.swift in Sources */, + E413FAF96B475B3B880EA74C85832584 /* Disposable.swift in Sources */, + 3DFC82D0D6DE6B71C6E32247064B472D /* ErrorDetector.swift in Sources */, + AF0E71A8227265AD9D11A14D6E38B516 /* ExecuteOnce.swift in Sources */, + 80BEC6A491E0135855BE9359F75D1E7E /* FetchVRMItemController.swift in Sources */, + 01DCB278E67253BF575D4FBC0E6B57F4 /* FinishVRMGroupProcessingController.swift in Sources */, + CD66432FC7B7BCAFC3388B561B728B70 /* Future.swift in Sources */, + 25AF63215C2F0B4D67F19EDB8B18D409 /* HeartbeatDetector.swift in Sources */, + E91C353C5B73B09EEBA4E85F19EB5C99 /* IntentDetector.swift in Sources */, + 4A6DDB16807F707ABD053A6BD0DDD8E3 /* JavaScriptObserver.swift in Sources */, + 30930FC1F14BB7C7933E2D51C42BFAF5 /* JavaScriptTelemetry.swift in Sources */, + 256D48C570888837B6876709BD4DDD03 /* MaxAdSearchTimeController.swift in Sources */, + 815AE02FCBA13928355127ADEEFBBD3A /* MaxShowTimeController.swift in Sources */, + 5C2D3C3A09F1644FAA9FA0B41EAC9A89 /* Memoise.swift in Sources */, + 29A295BC62BADA5BC29CFB2EDE18CFD2 /* Metrics.swift in Sources */, + 79D0F5EC1B991ACA7F2E97F4758FC588 /* MetricsSender.swift in Sources */, + A798D9BB68A7BF593C1411547D88BB0E /* MidrollDetector.swift in Sources */, + 5DD4CFA4D152C25C48112937E6C6C241 /* MP4AdCreativeController.swift in Sources */, + D8E0869EB14440DB05B1B526B74F3806 /* MuteDetector.swift in Sources */, + 2383CD9E70253104260D74188DDC062C /* Network.swift in Sources */, + 00389930A784790863FE2748450B6495 /* NonEmptyString.swift in Sources */, + BD5D0A3426968A13BD37DE13776A0D49 /* Observable.swift in Sources */, + 7A22547E98DCDF3E0CFF8BBF68C2D384 /* Observer.swift in Sources */, + 0B4A43EBABD23F079DC3A91EFB4C3E5E /* OnMainThread.swift in Sources */, + AE5C1C2AD623867546B8C73BC01788E0 /* ParseVRMItemController.swift in Sources */, + CB06B4037E324E09C61177FEAD57184E /* Pipeline.swift in Sources */, + 0C7064F65881EF57683F9F55AB5D212F /* Player.swift in Sources */, + 8F940657BD6F53FFA52A74B781A79201 /* Player_VideoEvents.swift in Sources */, + 248B07F95F4E4D0F9397F42AD797113A /* PlayerInterface.swift in Sources */, + 1720C3DDF28ABE056C869FF5D943D930 /* PlayerProperties.swift in Sources */, + 3DB2913B1E276294DB29AA40902D5191 /* PlayerProperties_Init.swift in Sources */, + 240A99240A7C42E66C795E82918CA3EA /* PlayerTracer.swift in Sources */, + 7EEE2C3E7B8BCBCFF7C8FA8E5537DEA6 /* PlaylistStatisticDetector.swift in Sources */, + 4D2243F39D4F1CAA780FA841F7B6A3DE /* ProcessAdItem.swift in Sources */, + C01CF49DF8E8E6FD0C5B9F679E58F126 /* PropsMapping.swift in Sources */, + 25AE23DB7BC7BAE2CB62B22E7A08A11A /* Provider.swift in Sources */, + C8244831250DFE2CCCFC7CDED7809E66 /* QuartileDetector.swift in Sources */, + 86D5374B00F7B62B788040714B79AFF6 /* ReporterTracer.swift in Sources */, + 196EA37C7055DD1EC4F5088BA76DAD4A /* Result.swift in Sources */, + 4D0A7ECE19232BB85D1DF1B6208132AC /* Rethrow.swift in Sources */, + B7435D057944F53C23E0A994A039C911 /* SkipRepeatsDecorator.swift in Sources */, + D1E146B4CC37745BC3C42412090AB60A /* SlotOpportunityDetector.swift in Sources */, + 41110D8CE0B064E761E02C9BF307B801 /* StartVRMGroupProcessingController.swift in Sources */, + 7F67A69E75E80D4A54D28110C3012EBE /* Store.swift in Sources */, + A1C77616E4FAD75884D416B27CA91725 /* Stub.swift in Sources */, + C74F2DE63F05FF6D4A0239491ABE3D58 /* SystemPlayerReplayDetector.swift in Sources */, + 85D6D132D7069DE4CEBD5B221E019D25 /* SystemPlayerViewController.swift in Sources */, + 7E818A18F0205863E224E9FF682B6FBA /* SystemPlayerViewControlller_Binding.swift in Sources */, + C01C1FF188E8D3B6814258D6FCD6BB5E /* Telemetry.swift in Sources */, + AADF594E593215AF9BA3A0D67C462DF8 /* Timer.swift in Sources */, + 717FEAB57C5962AF86A473B271148FF9 /* TrackingPixelsConnector.swift in Sources */, + B46D4964BF7A4B5AFC016BD004781E89 /* TrackingPixelsConnector_Ad.swift in Sources */, + A5BF5CD9E813FE952D763E820E4BC83C /* TrackingPixelsGenerator.swift in Sources */, + ACA59491239CE2307C330E6202457432 /* TrackingPixelsReporter.swift in Sources */, + 95E7D0F809A68B095411BBF4C76A9B71 /* UserActionInitiated.swift in Sources */, + 78FB3881A7E08366517C72A3D1626EC0 /* UserActionsDetector.swift in Sources */, + 8E6DE8925932EA3877E22E0C7A0F6B93 /* VASTModel.swift in Sources */, + 2BFE0C2E2819A841639D59D0211D70CF /* VASTParser.swift in Sources */, + FB4D44E83872B59F3A75B630E02E67EA /* VASTParser_Offset.swift in Sources */, + 791D10D9E89101AD2322AC827983FD0E /* VASTWrapperProcessor.swift in Sources */, + 8648D1960259BB285D2BBB040EAF180C /* VerizonVideoPartnerSDK-tvOS-dummy.m in Sources */, + F7DB40B96E30B4E95A2197E258B8A934 /* VideoActionsDetector.swift in Sources */, + 681351E510457D338E5EF988E9B2F3CE /* VideoContextPresenter.swift in Sources */, + 6FD9E7971EEA6121708645B6071D8948 /* VideoImpression.swift in Sources */, + 50E0B93BED9D7DEDD089FA14B91C9D11 /* VideoLoadingDetector.swift in Sources */, + 3A1068E1045913393A7224B01C401510 /* VideoPlayDetector.swift in Sources */, + D705B24232B3DDDE598859DB424D0863 /* VideoProvider.swift in Sources */, + 7C9EB02BAE34DF25CD2E3FA1F8C5BA98 /* VideoProviderParsing.swift in Sources */, + 1240CB2DF06D8D71398280192968045B /* VideoProviderResponse.swift in Sources */, + AA84F0BDA771A6B5CEC7F78E17FB7F53 /* VideoSelector.swift in Sources */, + 4814DBF632B8BCB2ECC2C41E2F3AFD01 /* VideoTimeDetector.swift in Sources */, + BEAAC7E3DEAF967C4E75FA2FE7125154 /* VPAIDAdCreativeController.swift in Sources */, + D6A8954A6D206707B71892AF10486366 /* VPAIDEvents.swift in Sources */, + ED8368AC3A00EE98C0D3E0FBED9A6876 /* VRMDetector.swift in Sources */, + 370A36C36F50A6F783E00C8CF13EB0BB /* VRMItemController.swift in Sources */, + EDB02C34037FA45F4E85AFDCB287C46E /* VRMMidrollProcessorController.swift in Sources */, + 4E54E4CB18537748B1D77CB945628D50 /* VRMPrerollProcessorController.swift in Sources */, + 7A2B139E8610412046E157524387A6F4 /* VRMProcessingController.swift in Sources */, + 9CF6363499F098E2B2636A219AC77872 /* VRMProvider.swift in Sources */, + F6DB4AFC43BA9DFB11741C3F43FF7150 /* VRMRequest.swift in Sources */, + 30EDAC76FA83D41CDF73FDC425E891DA /* VRMRequestController.swift in Sources */, + 44BB8B6203425142FBEFAEC3767CBBBA /* VRMRequestDetector.swift in Sources */, + C0CDA1DEA14B5D6667E978EBE4C689C6 /* VRMSelectFinalResultController.swift in Sources */, + 64C73A18DF6FB71C060272B516BEF8DF /* VRMTimeoutController.swift in Sources */, + A609B262D2612A159BB2F0CD76F29088 /* VVP.swift in Sources */, + 8FB0A443328D9DAB149AA7DE11443F86 /* VVPSDK.swift in Sources */, + 83E3A5CB44B98C013DF90492418ADBCB /* VVPSDK_Version.swift in Sources */, + BBE5F24099EE00D479E88AD3826E1418 /* VVPSDKPlugins.swift in Sources */, + ECBD658BCBDB2612B2B64E61F17CBEAD /* XMLParser.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - A469DFDE7B19D3DC8CE8C6C3C455B5AD /* Sources */ = { + CDDDD37446CC15F3FFE0C9A5BD401CAC /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 13698B149E62F26AC4CF3BFF9843747B /* 3secPlaybackDetector.swift in Sources */, - 7224F9484198B6FC39C75ACE7D937674 /* Action.swift in Sources */, - 52E1479A0BBD80DD18611DC0EEE65BA1 /* AdClickDetector.swift in Sources */, - F2F4C0FD40886AF38A3C3CCAAC753133 /* AdErrorDetector.swift in Sources */, - 72D7B0E7276B3D9D9ACC050E4703A1EC /* AdManagerPresenter.swift in Sources */, - A64B91185C7E51D5E334DE93690FABBD /* AdMaxShowTimeDetector.swift in Sources */, - 7E9D9EC26608A704BA98CFB5E04E735A /* AdMetrics.swift in Sources */, - E764A26140EF92E54FE5E445A98C4D49 /* AdStartTimeoutController.swift in Sources */, - 6089AEFA9C35B41C4D2451E617AC3125 /* AdURLProvider.swift in Sources */, - A2D2D0FFAA2BF21B7F46C92C097BA718 /* AdURLProviderProcess.swift in Sources */, - F7B044C842F6C8E29182FAF08C14DFAA /* AdViewTimeDetector.swift in Sources */, - 60EB3B489A689576898A0B67023F4535 /* AdVRMEngine.swift in Sources */, - D845DD6D84F412371186932C28E9EC3B /* ApplyDecorator.swift in Sources */, - B900EDEDDD0D4FB8B4D76806E21F0243 /* Autogeneratable.swift in Sources */, - BE6A6E56F799EC3444BC48C7BC7F8686 /* BufferingDetector.swift in Sources */, - 6E86DA7FDFDB5AF8338A6F4924EB9BF1 /* BufferingStart.swift in Sources */, - 86CA692BA619065478A474EA8A9F7F3F /* Configuration.swift in Sources */, - 6A2C2D3CEEF0869188F368D1CDB22BA2 /* ConfigurationParser.swift in Sources */, - 586A722AF0603424AA1E67BF88125B1D /* Context.swift in Sources */, - D6849869AC51B0F3856853AFFF74087C /* ContextStartedDetector.swift in Sources */, - AFB6176632219E743E914977941F63B7 /* DecileDetector.swift in Sources */, - D9E1B4356864E838A2B6F4888FF8C3BB /* Dictionary+ParseJSON.swift in Sources */, - 1D6407E0F5EC206ACAA6CF5BD1C9DE79 /* Disposable.swift in Sources */, - BB339F27F05E8FA7F194804CE699C67D /* ErrorDetector.swift in Sources */, - 3770D80E1F5774144C8F9CC207DF1519 /* ExecuteOnce.swift in Sources */, - D654CEA889E0E55267BD98777B8C05EF /* FetchVRMItemController.swift in Sources */, - 8945A671CE39BD412370A806324477DA /* Future.swift in Sources */, - 3418FE0A9071FB53C46EFAD650B21263 /* HeartbeatDetector.swift in Sources */, - 33984EEE5670A8DDDE25A2B135459F58 /* IntentDetector.swift in Sources */, - 2FFD22BE224242E54FB8F43FA1094C4A /* JavaScriptObserver.swift in Sources */, - B71F595A0FCF708FC34DBFBEA9F70E32 /* JavaScriptTelemetry.swift in Sources */, - C9503864830FEDF362F56B5C46BDC3F0 /* MaxShowTimeController.swift in Sources */, - B4D0E9BD5459B9AE441999F3A775BD28 /* Memoise.swift in Sources */, - 873ABFD9953F4648FE832E47C9C304EE /* Metrics.swift in Sources */, - 8D2E0FB65606E8AC4630E4319E554921 /* MetricsSender.swift in Sources */, - 31B9C590E2F26C95A64545388F9243B2 /* MidrollDetector.swift in Sources */, - 06E530AB600B6A22BD1EEE9B3D3BD4B4 /* MuteDetector.swift in Sources */, - 804069279CF77BAAEBE0BC3CAD0AA832 /* Network.swift in Sources */, - C7AAE2DE6D77DB14AEE7CD75961005C8 /* NonEmptyString.swift in Sources */, - F6F8725C565AE29562FFAC87366E7E54 /* Observable.swift in Sources */, - 788B1243F01162B655176CF8208D8CED /* Observer.swift in Sources */, - 4EE1185581FCB42BD830782C1AABB4E3 /* OnMainThread.swift in Sources */, - 1F0A3724A866C1598C004638B6338145 /* ParseVRMItemController.swift in Sources */, - 0029E9A3860E744067B38D539565E8DC /* Pipeline.swift in Sources */, - 4C1829423E3D787789A0AA919B1B3FB0 /* PlaybackCycleDetector.swift in Sources */, - 1A80E46DA2BF33EEAC9F6B4DF811E15B /* Player.swift in Sources */, - BA8F937C416094D10BB8DD8B43DBC014 /* Player_VideoEvents.swift in Sources */, - B93BC716FCE612BEEDC7A5B3D4E9C341 /* PlayerInterface.swift in Sources */, - 225932FA70F5DF8E2A3455B40702EB9A /* PlayerProperties.swift in Sources */, - D3804E7B7A18CD530E6A251763CE2257 /* PlayerProperties_Init.swift in Sources */, - 98D0EF0352531CFCA392FDEE8CA15E5F /* PlayerTracer.swift in Sources */, - 4B808F7298BB670C9829CE77F9A8944B /* PlaylistStatisticDetector.swift in Sources */, - 1AFD04F78A2D22312578ACF462F5550D /* ProcessAdItem.swift in Sources */, - 518F607F48890517C34C09625041D3B0 /* PropsMapping.swift in Sources */, - 59B008526B7505B38B030E437149BF15 /* Provider.swift in Sources */, - CDB7FE3091FCEA6D6DC6A69FD5A11A26 /* QuartileDetector.swift in Sources */, - A35659820B2A4DA48DF7F1F3A0F1E397 /* ReporterTracer.swift in Sources */, - 6FDFC88F51CD3DB4FE75A44B0547A82F /* Result.swift in Sources */, - 316585A389443250EB4F843CECC89CFA /* Rethrow.swift in Sources */, - C882F50588C06FE73F44AC908520067E /* SkipRepeatsDecorator.swift in Sources */, - 51FBEF460FB085B707A9B079084CEF15 /* SlotOpportunityDetector.swift in Sources */, - 5ACB962E2EA8F3EDE53D0B9032018F30 /* StartAdProcessingController.swift in Sources */, - 7DCAC45E9B5C960BADE8E239DA3C11D1 /* StartVRMGroupProcessingController.swift in Sources */, - A85347B3EEBADE9AF232B1BDDA7EB037 /* Store.swift in Sources */, - 4B13DA732A30EBE313EC9358A9090546 /* Stub.swift in Sources */, - 3940B4121BFCAB9666FACBD3B10D7C50 /* SystemPlayerReplayDetector.swift in Sources */, - 5D1E59898F8DF38F5DC58E6469481BEE /* SystemPlayerViewController.swift in Sources */, - C36B27350E987567C9A42225854B99FF /* SystemPlayerViewControlller_Binding.swift in Sources */, - 474AD31D8EC8AFED01DA1E0F0D8322D9 /* Telemetry.swift in Sources */, - C2138D104B9F21CF1A495F13E4FC9386 /* Timer.swift in Sources */, - 64B840540E5C15264A728702F7A5F330 /* TrackingPixelsConnector.swift in Sources */, - 7229D97DD87226A65B29A96BE7A68F45 /* TrackingPixelsConnector_Ad.swift in Sources */, - 123BADB39C303A87AFF0CD544432A8D4 /* TrackingPixelsGenerator.swift in Sources */, - 60F2B2622271AB3BDE4CC8BA336BE96C /* TrackingPixelsReporter.swift in Sources */, - 09309E401218116AD48E054B8696B791 /* UserActionInitiated.swift in Sources */, - 3B8DD2B4BA44B38EFAB1B05C29CBA5F3 /* UserActionsDetector.swift in Sources */, - 39B8750D2661C3F0775D3563C638198A /* VASTModel.swift in Sources */, - A70C034A3ECC8997EF999057A38B7953 /* VASTParser.swift in Sources */, - E98738036A6774ED7CA6CBEC478D1749 /* VASTWrapperProcessor.swift in Sources */, - 6B62323C822BF90308A079B0DEAFDF45 /* VerizonVideoPartnerSDK-tvOS-dummy.m in Sources */, - A352427BFE13A5AE8D3B362C020BDB34 /* VideoActionsDetector.swift in Sources */, - CF604B61417DB95D5F96C996D365C21B /* VideoContextPresenter.swift in Sources */, - 92AC02C6A7ECB0A17F21D8BF220A6265 /* VideoImpression.swift in Sources */, - 753487C3854869F624D5228D99484B8E /* VideoLoadingDetector.swift in Sources */, - 4837BC001544542D1D43F4228794DF0F /* VideoPlayDetector.swift in Sources */, - 965F196CD516105917AAA982F403A04A /* VideoProvider.swift in Sources */, - 8E2B5B08FE89CB93CA9750FB08CC1767 /* VideoProviderParsing.swift in Sources */, - B974D90A6F0438B41941A05337EDA13F /* VideoProviderResponse.swift in Sources */, - 3E9B1FB9273EBF17014E6D68BB085043 /* VideoSelector.swift in Sources */, - C4D2186B6628373FB51BA59B0DB6CC6D /* VideoTimeDetector.swift in Sources */, - 1EC47A3A752148683372A72A47E60A5F /* VPAIDEvents.swift in Sources */, - 28F222A7971F5FC2F63518D26F2E04E4 /* VRMDetector.swift in Sources */, - 2C440192196FFCBF56852EA69297D53F /* VRMItemController.swift in Sources */, - CB6ED46A31D64FA81C6A9665FA922513 /* VRMProvider.swift in Sources */, - C602E0EF49A2B015CD5B1371229CD1A6 /* VRMRequest.swift in Sources */, - E98D872C694155D0F4A73258814A5497 /* VRMRequestController.swift in Sources */, - 9B30E725CA533D9C0C4C018F5B0FE88C /* VVP.swift in Sources */, - 97485554534AB26DC4E2656FA77B4392 /* VVPSDK.swift in Sources */, - 7280F59A940C498ED72C1C25B28108E0 /* VVPSDK_Version.swift in Sources */, - 04D3CB77F28F3F1C45A3CD3DE2C2CAF9 /* VVPSDKPlugins.swift in Sources */, - 3D99B163128F5910E93F4A614F7BC4EB /* XMLParser.swift in Sources */, + 87D48C2FE2C96B7CAEB5AA673CDEA7A0 /* Pods-Tutorial-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - D5B9F0AED0F8213353595D2B21378E80 /* Sources */ = { + D9DE844943D5B59483B45B6FB7DF943D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - FF0CFCD0A4E5CC34A28CBAA2F8B82458 /* ActionProtocol.swift in Sources */, - 7363E5AACD196C0E2EB3179DCA5EAF2F /* Ad.swift in Sources */, - 01CFB68EEEB4BC46D9A7CAF9D1C55EE8 /* AdClickthrough.swift in Sources */, - 0B46C6798437A80F452C515E93FC15E7 /* AdClickThroughAction.swift in Sources */, - AA8050356EFE2BECB311137E76150828 /* AdClickthroughActionCreator.swift in Sources */, - B45A9762837368D3C53FDE78DAC35C2A /* AdCreative.swift in Sources */, - C52CD746B9EA8961518FA9D538E1EA91 /* AdFinishTracker.swift in Sources */, - 83C9B0B498FF78F8876F73CF62781FD5 /* AdInfoHolder.swift in Sources */, - C86EF0B9D0D045AC789B3C7FE546D6B6 /* AdKill.swift in Sources */, - 9F4C55AB93D8CDB71F0A175F106161A3 /* AdKillAction.swift in Sources */, - 54EC61F9628238F1B6D37D4FF59512CA /* AdPixels.swift in Sources */, - 5CF6A28FD6ACF0777146A70DC0327DDB /* AdProcess.swift in Sources */, - 4BDBC9EB9194C2FCF3EDDF2CC534C0C1 /* AdRequestAction.swift in Sources */, - 5E3CA6B62A4D82A45A89EFCC14E617B5 /* AdStartTimeoutActionCreator.swift in Sources */, - D609A14ACF7043D24C255437EDD5C8EE /* AdVASTModel.swift in Sources */, - 4BB170EE3F0D05DA2C9F7425D072118C /* AdVRMManager.swift in Sources */, - 36D4F6C1C21162DDA9B4BE2D08B30C53 /* AdVRMManager_Hashable.swift in Sources */, - 38403EAF626210238C677D8F87FFC81E /* AirPlay.swift in Sources */, - 0FF42266C5D90D7DC6786D9FD92662AE /* AverageBitrate.swift in Sources */, - AFB6DB7BB06F3898678D840AE3905975 /* CompletePlaybackSession.swift in Sources */, - 561241DE74927D282AA59611134AB744 /* CompletePlaybackSessionAction.swift in Sources */, - 3F89218E201E24C079E97B698490ACD7 /* CompletePlayerSession.swift in Sources */, - 2EA25F928A92EB9D6CDBEEFE4286E3AC /* CompletePlayerSessionAction.swift in Sources */, - C51BA6B2352B0F5BBFC803A357739685 /* ContentFullScreen.swift in Sources */, - C333DB6CE9DBDB5061FDF8DBF3343D34 /* ContentFullScreenToggle.swift in Sources */, - 3F5F7A62D90D7A0A532F08A6DF0E41E7 /* CurrentTime.swift in Sources */, - 2DF0D50C94E6B3942FF955761D57B98A /* Dispatcher.swift in Sources */, - 4B471E5E9B4573166E251520B872D77F /* Duration.swift in Sources */, - 2EFA3C9A5DC02EE14DE348267B04612E /* EndPlayback.swift in Sources */, - B9AB5A517EB0A96F549CE986D8EEDB9B /* FullScreenToggleAction.swift in Sources */, - DAFE9947962958E1B9A50B8C1F678064 /* InteractiveSeeking.swift in Sources */, - 2B9D05F06019D49192B828FEF7451798 /* LoadedTimeRanges.swift in Sources */, - 74AAE34C2BA2641643AA259DC07CB5C6 /* MaxShowTimeActionCreator.swift in Sources */, - 4562BBF8832A713351A851C632BF8D36 /* MediaOptions.swift in Sources */, - E0BAF7445A4CFB72EFDE4B1F63E8BBAD /* Mute.swift in Sources */, - 8A2DCD7BBF0D9F5F09D1854BDAB0E0E6 /* MuteAction.swift in Sources */, - 0A23E6EDCE4110AD2C7A58EFF98A649A /* MutePlayer.swift in Sources */, - 249669F8C36F08F5D4A42C623B145790 /* Next.swift in Sources */, - 24387EB1A5F30FA7616A0A5B507F0278 /* Nop.swift in Sources */, - 6E151B30D7A6599C456C489EEE671CC4 /* NopAction.swift in Sources */, - C2C5A553771736C20D0B2F2C95F1C261 /* OMScriptServiceAction.swift in Sources */, - 20D429F00480C6B7CB595A716CD28102 /* OMServiceScriptActionCreator.swift in Sources */, - 9D58E1973DDBEB3AD69EA4B10CA642A1 /* OpenMeasurement.swift in Sources */, - D685AEEBF9DBB5AACA199900127C4FDA /* OpenMeasurement_Tracking.swift in Sources */, - 08A81EF234DDC662A6C3059D77C6E273 /* OpenMeasurementAction.swift in Sources */, - 83D9B87F8FB8C5C4DC0A0EF4413EFB8B /* OpenMeasurementActionCreator.swift in Sources */, - DE7E76AD06EA03D8A39F2894C5288A06 /* OpenMeasurementServiceScript.swift in Sources */, - 0D06439CACB981A85CE52114ABD1C3DD /* Pause.swift in Sources */, - 880FBB444FBEC616ACC295F9A20FA7CC /* PauseAction.swift in Sources */, - 43EECF9D3CBD21A96F0E133AA01E44B8 /* PictiureInPicture.swift in Sources */, - 4993845173128706A10483A179E98FCE /* PictureInPictureStatusUpdate.swift in Sources */, - ED8F5384B789910AA98756A12ACFE479 /* PictureInPictureToggle.swift in Sources */, - 34D988E8F1A35547A2F05395153B9CAD /* PictureInPictureToggleAction.swift in Sources */, - 2220032FC28D4A207E75F5A89C892E66 /* PictureInPictureUpdateAction.swift in Sources */, - 6A0679DB8BA1C9E2503E07904187F954 /* Play.swift in Sources */, - 47337944F6E16F03A914F5E58A4881ED /* PlayAction.swift in Sources */, - 725C89C7E23765C6BE1FDEEB96B3D101 /* PlayAd.swift in Sources */, - FFB4AE8C481AFA64268188912817E979 /* PlaybackBuffering.swift in Sources */, - 574B1C95E826D4C38BDBC0D288AC4F1D /* PlaybackBufferingAction.swift in Sources */, - A4F1BFFD2849EDF67930793169C63DBB /* PlaybackDuration.swift in Sources */, - 6A67333F205F7AF37406E25F51382907 /* PlaybackFailed.swift in Sources */, - 515A6AFE9AF12FA54E67B8FF14F24D0F /* PlaybackModel.swift in Sources */, - D06A8F985BC4A1C7FF9BFBE570427981 /* PlaybackReady.swift in Sources */, - 0F33AE4402B5F68E5C3FE2806B57111A /* PlaybackSession.swift in Sources */, - FFD70E7429DE9F4014DE190A944D8AFE /* PlaybackStatus.swift in Sources */, - 767EFF8A4BFFE1290C4C0692074473AB /* PlayerCore-tvOS-dummy.m in Sources */, - 6B664EFFBE30CE0D79AB9A0BCB78CB33 /* PlayerSession.swift in Sources */, - DE091B9CFEB939C0D1644DF65904A44F /* Playlist.swift in Sources */, - 6C60EEDDA28C0D271F50B502A6902657 /* Prev.swift in Sources */, - FAEDB224268BF41066118390BB95D6B6 /* ProcessGroupsAction.swift in Sources */, - D228A3ECD044FD3B853958F22AAAAE1A /* Progress.swift in Sources */, - 2528ECDA23087D20F6C9CE5D65D2AD94 /* Rate.swift in Sources */, - B6401C13FC39DA8A8B07741C0054B801 /* RendererDescriptor.swift in Sources */, - DA04C65A2AF1B267E0B6592DC48EF96E /* Replay.swift in Sources */, - 5626E652175DE09A41C912700CEFF573 /* ScheduledVRMItems.swift in Sources */, - 2AE47F9323BE31EE39CFE25C84E11971 /* Seek.swift in Sources */, - 3DB9FF98ED05CEEF9CD5D19104D3615A /* SeekToTimeAction.swift in Sources */, - 997CB905AA4186D219288BF65E219343 /* SelectVideoAtIndex.swift in Sources */, - D0DB75B6736CD06F93A6E59E87887090 /* SelectVideoAtIndexAction.swift in Sources */, - CB1E023786954B0B9243654AE1202A46 /* ShowAdAction.swift in Sources */, - 024F660D7F628A0F64C1405CE6B8B5E5 /* ShowContentAction.swift in Sources */, - 91F71E2EDBDF3A2F974A7F814EC65EE3 /* SkipAd.swift in Sources */, - D148F5F1CD2BE312BE7300CF9B4A9E0C /* SkipAdAction.swift in Sources */, - F83E60248A81C9C3505CF1B7A7B8FBBB /* StallingRecords.swift in Sources */, - 06693EE9F1D06C5D29FB68F3F7FD1B05 /* State.swift in Sources */, - A6191FCB11F1DBF1CC3C1A369C44DEE4 /* Thumbnail+VideoProviderResponse.swift in Sources */, - B89B36F004F94D65988A30716408E613 /* Thumbnails.swift in Sources */, - 57AC145007295E0B470A989A82320B91 /* TimeoutAction.swift in Sources */, - F2ADBC422677F8B28C72118DF1F5818C /* TimerAction.swift in Sources */, - 883A51AE4D662175C2B824D90AF8793E /* TimerActionCreator.swift in Sources */, - E29D42E778CD6317794F91A8C61B6ED9 /* TimerSession.swift in Sources */, - 67229CDF8CABD40713F1ABEAE88EBE46 /* UpdateAverageBitrate.swift in Sources */, - AD564921C2FCBE54F6C724C333906987 /* UpdateAverageBitrateAction.swift in Sources */, - D14AB719A4D9E48F49DA642F05340DAC /* UpdateCameraAngles.swift in Sources */, - CAB6D555CF66C7EF4EB1FBCCC95ADB82 /* UpdateCameraAnglesAction.swift in Sources */, - F7C116254BF5457D7A327C5B0B8AAC46 /* UpdateCurrentTime.swift in Sources */, - 36280C61F04E8F333584B4A027FDC2B9 /* UpdateCurrentTimeAction.swift in Sources */, - 59234FC85E78467491E62792EEC3A463 /* UpdateDimensions.swift in Sources */, - 983220632F3AC3CAD8B3772FC6D2A71C /* UpdateDuration.swift in Sources */, - A9A33D347F2B56C365875A1C8E4E5A80 /* UpdateDurationAction.swift in Sources */, - 2338F50DAF716965323EFEE3A000424C /* UpdateExternalPlayback.swift in Sources */, - 464107F860D3544CA62C6E27D1764731 /* UpdateExternalPlaybackAction.swift in Sources */, - 125CE1728955134543382476BFD7959E /* UpdateExternalPlaybackStatus.swift in Sources */, - A88EFA686056AB080B3624D1D2567E10 /* UpdateExternalPlaybackStatusAction.swift in Sources */, - 883AC0196905098E8A7EB9F5708B6025 /* UpdateLoadedTimeRanges.swift in Sources */, - CC16C9000E68C39E7B5D0B4898539E1B /* UpdateLoadedTimeRangesAction.swift in Sources */, - FDE1E30BE04A642A10485D491A82691E /* UpdateMediaOptions.swift in Sources */, - BF2206C9C9113F1D082FAC1119E6C5CE /* UpdateMediaOptionsAction.swift in Sources */, - BE1F306ACD4C8080FA8E0042111E616F /* UpdatePlaybackBuffering.swift in Sources */, - BE28FBC8D1D76F927498DF0ABF15DB1E /* UpdatePlaybackStatus.swift in Sources */, - E39E70FD3923AD14B878EE215D34876B /* UpdateRate.swift in Sources */, - E4141454040FA34B7E7EBD594A497804 /* UpdateRateAction.swift in Sources */, - B29902498601F8AC445B9DA5C564210A /* UpdateViewportDimensions.swift in Sources */, - E01A6D54217AA776244E37CED6833A91 /* UpdateVPAIDAction.swift in Sources */, - BB539E60616326A86B45399748929FC9 /* UserActions.swift in Sources */, - 2DBD8950D91B885F6B88610407A5749F /* Viewport.swift in Sources */, - DF37EB5B10ABA5BF193B1C31D5588199 /* VPAIDActionCreators.swift in Sources */, - 31FA11C01F17C1812F93778B7E14ACC3 /* VPAIDErrors.swift in Sources */, - D923D268EBA52E100A7C5877E67BFBA5 /* VPAIDState.swift in Sources */, - B90E8EA754EC3A21D7B189F6496B0E32 /* VRMCoreAdProcess.swift in Sources */, - 548DDC794CD52B169F16768D31298DA1 /* VRMCoreAdRequestAction.swift in Sources */, - 10EE08C676BB37EF28AE67D27302DBBA /* VRMCoreAdResponseAction.swift in Sources */, - CB07AFF93CA860968C77FFE34B6E3DBC /* VRMCoreAdResponseActionCreator.swift in Sources */, - 54A7BCA1BF0DC0717AFE4AD346DDC97E /* VRMCoreItemScheduling.swift in Sources */, - CA61620697526B2DA28737996EC4D213 /* VRMCoreItemSchedulingActionCreator.swift in Sources */, - 917001803DAD8A1C7C631A1602B0EA08 /* VRMCoreNamespace.swift in Sources */, - 0AA0E744FB2454297A26C55B97DA2C8E /* VRMCoreStartGroupActionCreator.swift in Sources */, - 2F7909E31B650D7095FBADEEA94CDB65 /* VRMCoreStartGroupProcessing.swift in Sources */, - 342E34C61B88F997F8C1AF6EFE01DD93 /* VRMCoreVASTModel.swift in Sources */, - 0F9213ED3C9EF9D0213E37A270212DF0 /* VRMCurrentGroup.swift in Sources */, - E6C2795F68E4C6F07D9ADBE1ABA3C601 /* VRMFetchItemQueue.swift in Sources */, - 12B23B255798C38A4D7904A25E443C1F /* VRMGroupsQueue.swift in Sources */, - 474ED64A0237765C94C3A927C9987C15 /* VRMItemActions.swift in Sources */, - 8D2335C78CB98EBBD0EB0F4A3286029D /* VRMParseItemQueue.swift in Sources */, - 02FDAEF51E439E7CD385DE72B1A71D4F /* VRMParsingResult.swift in Sources */, - 73C55CF57A7416321616A1FE1B8FA70C /* VRMRequestStatus.swift in Sources */, - 3A0E54BBD3C6526678D7314A2AF973F6 /* VRMResponse.swift in Sources */, - 92634CCCC66432B43B966A7AE188C028 /* VRMResponseModel.swift in Sources */, - 1D4CD24BEE3F11B143DB0E79C91AA226 /* VRMTopPriorityItem.swift in Sources */, + 0F84056BB18BDD5EE709DC426418EE8A /* Action.swift in Sources */, + 91F305EBCF75C7D9159A8780307EC8F1 /* Camera.swift in Sources */, + 9D636C63224501BBE9FC50A84839CCD7 /* MediaCharacteristicRenderer.swift in Sources */, + D69B2D3A64473BC852E26184A4031674 /* PictureInPictureControllerObserver.swift in Sources */, + 26E19F87F12CC98A4069A988F6F448F3 /* RendererRepository.swift in Sources */, + 9209C1EB59606EF13BF2F8CAF0DF0D96 /* SeekerController.swift in Sources */, + 7C9A281601EF759550FEABA98288B5D2 /* SphereVideoStreamViewController.swift in Sources */, + 488F176BA75398CA9EDF8DEBB1A68170 /* SphereView.swift in Sources */, + 0DFCFD21051960170F0AD8F806B21EC4 /* SystemPlayerModel.swift in Sources */, + 3C51A97FBA89DE723502BB3890549276 /* SystemPlayerObserver.swift in Sources */, + 6EE1419FCEDF82DD263C1389B46C0E0E /* VideoRenderer-iOS-dummy.m in Sources */, + B5B763C8700E38C5F1005B380F3A667A /* VideoStreamViewController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - DD321AEDE929DEB5D0B7F356BA5DBC2E /* Sources */ = { + E22B3DFC41A49B338A2B7D2C6022747F /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9E36C9AED67E4E1C2882AE0CA23D1435 /* Action.swift in Sources */, - A8BEB516D16ADC0C098686FFD04A6780 /* Camera.swift in Sources */, - ED62FF017DA3474C5337E09FE6BA7940 /* MediaCharacteristicRenderer.swift in Sources */, - 204B5302D6298AA241C330BC116F6AD8 /* PictureInPictureControllerObserver.swift in Sources */, - E6F15D510872E88D0BB4B9B299FFDEFF /* RendererRepository.swift in Sources */, - 52CC0EB56405859F948BFD2D33B53490 /* SeekerController.swift in Sources */, - 28EA3B5191278C89C681468B3F3619BA /* SphereVideoStreamViewController.swift in Sources */, - F34C3B83277E2D4CC67A87305279006D /* SphereView.swift in Sources */, - 4AD08A0112DF3C515BF2A7426880FAA8 /* SystemPlayerModel.swift in Sources */, - 7735D8F7DFEFFA9386B0CD4E56EAB184 /* SystemPlayerObserver.swift in Sources */, - 75E3E994CE931256768CBAFE8BF0B212 /* VideoRenderer-tvOS-dummy.m in Sources */, - 1C680608FF759E456222265F745213DE /* VideoStreamViewController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 027BD32313D3464B94C7D176CCABFB97 /* PBXTargetDependency */ = { + 1939AD0514FBA36D3957650440D6CEFB /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "PlayerCore-iOS"; - target = 54E0B6CE24E18E8F72C5D506091438D3 /* PlayerCore-iOS */; - targetProxy = 0E2E3EDBF5E8173D6A6BC602F4D63805 /* PBXContainerItemProxy */; + name = "PlayerCore-tvOS"; + target = 4E9E5A2F313892BD91A557840B32810D /* PlayerCore-tvOS */; + targetProxy = DF76FF87323396C5442FFA4E9688693A /* PBXContainerItemProxy */; }; - 1F3F0F9722D118582B945D4945DC5225 /* PBXTargetDependency */ = { + 1E4419DE8C76572DFA75C1B93CCA33C8 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = PlayerControls; - target = 2F75FEE377AD7BAF8C565B850380995F /* PlayerControls */; - targetProxy = B506A3D6575E3A1B6AD719B6B49D6C91 /* PBXContainerItemProxy */; + name = "OMSDK-Oath2"; + target = E0895D7EE1F741F56B4F1C3D38264F7F /* OMSDK-Oath2 */; + targetProxy = 4838951D369784B15B2A3874DC0B19E0 /* PBXContainerItemProxy */; }; - 227B880D818348A2A656BD2DCDE4393D /* PBXTargetDependency */ = { + 33A1E7D0EE2DB1AD943A3D9D50FC0366 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "VideoRenderer-iOS"; - target = 0F0BFA4FAA6698905E081CA89D51B7DE /* VideoRenderer-iOS */; - targetProxy = F36C987FE43239880B3BF1190F72D802 /* PBXContainerItemProxy */; + name = "VerizonVideoPartnerSDK-tvOS"; + target = E35BAFC4B04DB6AA1C9D24A0B60EA7B0 /* VerizonVideoPartnerSDK-tvOS */; + targetProxy = 3FE4300DB5EAF68B2FA8E6F6F6066FE3 /* PBXContainerItemProxy */; + }; + 38640C9F37E060BF1D5F50B7EF2F91DB /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "VideoRenderer-tvOS"; + target = 287CB9858CF055FA9ADA55859EFB9F17 /* VideoRenderer-tvOS */; + targetProxy = D20861B5227170EACD832D1C34E4A93D /* PBXContainerItemProxy */; }; - 3EBCDBE7EB7687CB445F399A58D57543 /* PBXTargetDependency */ = { + 44FC6130D0A01313EBC1C042F4B1E964 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "VerizonVideoPartnerSDK-iOS"; - target = 3D74E7125090C881A85C8E0A6D76E044 /* VerizonVideoPartnerSDK-iOS */; - targetProxy = 45DEFC6E34E8CF595AA5FA0B8AAB8F22 /* PBXContainerItemProxy */; + target = E8266011723A7DE67F6E50957EF2597F /* VerizonVideoPartnerSDK-iOS */; + targetProxy = 0E79FDFDE9FC2457E49CFD96947AAE45 /* PBXContainerItemProxy */; }; - 47ED1FA04B6AC3675B11C08F77FEA196 /* PBXTargetDependency */ = { + 51229468302DAD919C988848B463FEF3 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "PlayerCore-iOS"; - target = 54E0B6CE24E18E8F72C5D506091438D3 /* PlayerCore-iOS */; - targetProxy = 8D1DFB2E52E535DFD2CFD3335F2826E9 /* PBXContainerItemProxy */; + name = PlayerControls; + target = E365AC994C370D4C0071BC2CA13F97DF /* PlayerControls */; + targetProxy = 94D1AF954B453592F98AE06FF61AF0EE /* PBXContainerItemProxy */; + }; + 5157706CDCF91B54ED9A9A132A39FEE0 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "PlayerControls-PlayerControls"; + target = EF2C08EB266CD894822311A10EB25C57 /* PlayerControls-PlayerControls */; + targetProxy = A9B190D7E547917A4B02E13B5AC61CC5 /* PBXContainerItemProxy */; }; - 9C966BCD487F56596AC20B7B7BB2185E /* PBXTargetDependency */ = { + 6B1BAD3C89D31C85FD4B145D48D0CDD5 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "VideoRenderer-iOS"; - target = 0F0BFA4FAA6698905E081CA89D51B7DE /* VideoRenderer-iOS */; - targetProxy = 5FA444CBCB8B41506FB49D55F3E95DB3 /* PBXContainerItemProxy */; + target = B4AD1D701403773BC1EBD43142F45045 /* VideoRenderer-iOS */; + targetProxy = 0C3F4952B9C6B9ACEE138B408022A111 /* PBXContainerItemProxy */; }; - C7502599253C3157B01E2395D4F2F957 /* PBXTargetDependency */ = { + 977FF489923FAF810D4AE6EA6A8D3BA2 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = PlayerControls; - target = 2F75FEE377AD7BAF8C565B850380995F /* PlayerControls */; - targetProxy = 740095BA5C8134C7CF799FACC1B54BA8 /* PBXContainerItemProxy */; + name = "PlayerCore-tvOS"; + target = 4E9E5A2F313892BD91A557840B32810D /* PlayerCore-tvOS */; + targetProxy = D61616DEB295D43F44C7A71E8E67CF47 /* PBXContainerItemProxy */; }; - CA9A82F92C34BC9D9088DEAFDA566A69 /* PBXTargetDependency */ = { + ADD2D95A8B6BD09497DA20370713A2BC /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "VideoRenderer-tvOS"; - target = 9A103A789D7B4C881F5987891104926F /* VideoRenderer-tvOS */; - targetProxy = 490652B3179D48826978461449F80330 /* PBXContainerItemProxy */; + name = "PlayerCore-iOS"; + target = 84796276770B19A14E8D50F9413AFA89 /* PlayerCore-iOS */; + targetProxy = 4758FAA2D1FEE25EB9F18D0DDA7B60F2 /* PBXContainerItemProxy */; }; - D1B5FC635ADA0D67A78C54B907EC1C29 /* PBXTargetDependency */ = { + CFD228C1272153A4DE8FDB145597BE6E /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "PlayerCore-tvOS"; - target = DF498F1ABDDE84CE24175CA10F563BAA /* PlayerCore-tvOS */; - targetProxy = 99C6AD2741EC690EB08B735F53523FD5 /* PBXContainerItemProxy */; + name = "VideoRenderer-iOS"; + target = B4AD1D701403773BC1EBD43142F45045 /* VideoRenderer-iOS */; + targetProxy = 8F8BCC0A9180F27F3398AF3B42148AC0 /* PBXContainerItemProxy */; }; - D5C9AD4DF8F20A3D09A3E147905240F1 /* PBXTargetDependency */ = { + D2A2535C94D400749B6E7CF3B24A81F3 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "VideoRenderer-tvOS"; - target = 9A103A789D7B4C881F5987891104926F /* VideoRenderer-tvOS */; - targetProxy = 6D8ADC1CC362E95AC873D9DDED0D1B21 /* PBXContainerItemProxy */; + name = "PlayerCore-iOS"; + target = 84796276770B19A14E8D50F9413AFA89 /* PlayerCore-iOS */; + targetProxy = 64A5BF6BDA47C9C44974B4AB2935C94A /* PBXContainerItemProxy */; }; - F892952C24025B081243A43BFD76F301 /* PBXTargetDependency */ = { + D3A53701004191A8A71795DC55E0FB9D /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "VerizonVideoPartnerSDK-tvOS"; - target = 008E740531CFFBBFDC9557C066CFA569 /* VerizonVideoPartnerSDK-tvOS */; - targetProxy = 12C7FE4EC8A597291BAD4FE9977F8DD5 /* PBXContainerItemProxy */; + name = PlayerControls; + target = E365AC994C370D4C0071BC2CA13F97DF /* PlayerControls */; + targetProxy = 38C43C64E2FDFC28F9D2039D32814226 /* PBXContainerItemProxy */; }; - FC5E072BB94DC4F96107DF918601AE50 /* PBXTargetDependency */ = { + F8C91A62A4E284F2263E3A66AFBA53CA /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "PlayerCore-tvOS"; - target = DF498F1ABDDE84CE24175CA10F563BAA /* PlayerCore-tvOS */; - targetProxy = 218250D818B52AF8BCD87C1F941F8F14 /* PBXContainerItemProxy */; + name = "OMSDK-Oath2"; + target = E0895D7EE1F741F56B4F1C3D38264F7F /* OMSDK-Oath2 */; + targetProxy = F8A81E440F0B16129F39C338FB4E7A25 /* PBXContainerItemProxy */; + }; + FB478531E2EB960AD72C0FB08366267E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "VideoRenderer-tvOS"; + target = 287CB9858CF055FA9ADA55859EFB9F17 /* VideoRenderer-tvOS */; + targetProxy = EFEEC4CAA53172AA550320B09EA7A870 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 0B936F99EBDB78A54C6265284DE3086C /* Release */ = { + 05A5E61ECD414457672E9F2144E8729A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 511ACE7A91D3BB74B20359DDEB5FE58A /* Pods-Tutorial_tvOS.release.xcconfig */; + baseConfigurationReference = 280D7A9CFA13A8DA8ED56F7F568D2C18 /* PlayerControls.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = appletvos; + CODE_SIGN_IDENTITY = "iPhone Developer"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/PlayerControls"; + INFOPLIST_FILE = "Target Support Files/PlayerControls/ResourceBundle-PlayerControls-PlayerControls-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + PRODUCT_NAME = PlayerControls; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; - VALIDATE_PRODUCT = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; }; - name = Release; + name = Debug; }; - 0EB57B05E9F32C149BCDD04802D07149 /* Debug */ = { + 290394E2ECBD2A871EB8C8636D34CD4A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D2A2FB54B9EE32B692A636C176BFF3CB /* PlayerControls.xcconfig */; + baseConfigurationReference = E155AA96480BC79AE0AC099C465DE9B3 /* PlayerCore-tvOS.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/PlayerControls/PlayerControls-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MODULEMAP_FILE = Headers/Public/PlayerControls/PlayerControls.modulemap; + GCC_PREFIX_HEADER = "Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = PlayerControls; - PRODUCT_NAME = PlayerControls; + PRODUCT_MODULE_NAME = PlayerCore; + PRODUCT_NAME = "PlayerCore-tvOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + }; + name = Debug; + }; + 3ACE34A6B573C8B53685E3F3B7A7F2A6 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 8BB06B45928AE54BC4AB0D60A9441E11 /* Pods-Tutorial.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Tutorial/Pods-Tutorial.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; }; - 13E62F784AEA7694EEA701474DD35E8C /* Release */ = { + 4242A13CC2870E850657342C8484FE1C /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 11B4B76EABDBD17D9DDDD9C4992AC267 /* VerizonVideoPartnerSDK-tvOS.xcconfig */; + baseConfigurationReference = EDBEB28C19A80F24BC1F548F528DB7A7 /* VideoRenderer-tvOS.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-prefix.pch"; - MODULEMAP_FILE = "Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap"; + GCC_PREFIX_HEADER = "Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = VerizonVideoPartnerSDK; - PRODUCT_NAME = "VerizonVideoPartnerSDK-tvOS"; + PRODUCT_MODULE_NAME = VideoRenderer; + PRODUCT_NAME = "VideoRenderer-tvOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = appletvos; SKIP_INSTALL = YES; @@ -2860,38 +3114,38 @@ SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = 3; TVOS_DEPLOYMENT_TARGET = 9.0; - VALIDATE_PRODUCT = YES; }; - name = Release; + name = Debug; }; - 158B322F8FBEF30F416E2F4B6FAAE0A8 /* Debug */ = { + 45763DD8400F55F802951103F942D4DC /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 182EC1D691EA0D66F27E2AB5471A4FF0 /* VerizonVideoPartnerSDK-iOS.xcconfig */; + baseConfigurationReference = 0F4D2737B8CE26396BCBF76BF9D81A1D /* PlayerCore-iOS.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-prefix.pch"; + GCC_PREFIX_HEADER = "Target Support Files/PlayerCore-iOS/PlayerCore-iOS-prefix.pch"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MODULEMAP_FILE = "Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap"; + MODULEMAP_FILE = "Headers/Public/PlayerCore/PlayerCore-iOS.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = VerizonVideoPartnerSDK; - PRODUCT_NAME = "VerizonVideoPartnerSDK-iOS"; + PRODUCT_MODULE_NAME = PlayerCore; + PRODUCT_NAME = "PlayerCore-iOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; }; - name = Debug; + name = Release; }; - 194D600B8D98B748AD24CB380EB370C1 /* Release */ = { + 4E9D5A82635CEF71E264D0E3BE0305E3 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9C9F32B6F133AE31003372A25423ABB7 /* VideoRenderer-tvOS.xcconfig */; + baseConfigurationReference = EDBEB28C19A80F24BC1F548F528DB7A7 /* VideoRenderer-tvOS.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -2914,29 +3168,7 @@ }; name = Release; }; - 265B7730F054995284D60066F2DD3B33 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 64CAE4DFE1B068052CAD28CD3479FFE9 /* Pods-Tutorial.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "iPhone Developer"; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Tutorial/Pods-Tutorial.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 809ABCA383E436A3391A16CC53AC975B /* Debug */ = { + 65D37034480210C11934F9BE9A5DC9B7 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -2968,19 +3200,14 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_DEBUG=1", - "DEBUG=1", + "POD_CONFIGURATION_RELEASE=1", "$(inherited)", ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -2990,67 +3217,19 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 4.2; SYMROOT = "${SRCROOT}/../build"; TVOS_DEPLOYMENT_TARGET = 9.0; }; - name = Debug; - }; - 814B5B4D77DCFE4F429C63CB0B0620E5 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BC8F4B2EDCA1349EEADFB7F7ECBF2263 /* Pods-Tutorial.release.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "iPhone Developer"; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Tutorial/Pods-Tutorial.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; name = Release; }; - 88E0F9F3B274633FB7EE670164A6A649 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9C9F32B6F133AE31003372A25423ABB7 /* VideoRenderer-tvOS.xcconfig */; - buildSettings = { - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS-prefix.pch"; - MODULEMAP_FILE = "Headers/Public/VideoRenderer/VideoRenderer-tvOS.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = VideoRenderer; - PRODUCT_NAME = "VideoRenderer-tvOS"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = appletvos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; - }; - name = Debug; - }; - 9968F0FBC67CCB1540E9868B9134D03D /* Release */ = { + 6B04F5812126E357F7CBF430C14D0A57 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -3082,16 +3261,17 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_RELEASE=1", + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", "$(inherited)", ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -3101,21 +3281,22 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 4.2; SYMROOT = "${SRCROOT}/../build"; TVOS_DEPLOYMENT_TARGET = 9.0; }; - name = Release; + name = Debug; }; - A1AE02EB5BA6A14B6B160FD6A984BD9F /* Debug */ = { + 7687400B957B736806EFE90F15065829 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A26518A7C487E4AE339B4662C69D3FCD /* Pods-Tutorial_tvOS.debug.xcconfig */; + baseConfigurationReference = 2A08759625656C820C43E5B36A77E47C /* Pods-Tutorial_tvOS.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -3134,111 +3315,121 @@ }; name = Debug; }; - A305645404304CEA577A00F2CACE088A /* Release */ = { + 964CB226FE9F8DD98886289219FB7BB6 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7D7FAF430C4EA0BE6DC14450B5EA5E37 /* PlayerCore-tvOS.xcconfig */; + baseConfigurationReference = 21028DEC97602C707A154D6AA36F7A46 /* VerizonVideoPartnerSDK-iOS.xcconfig */; buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-prefix.pch"; - MODULEMAP_FILE = "Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap"; + GCC_PREFIX_HEADER = "Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MODULEMAP_FILE = "Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = PlayerCore; - PRODUCT_NAME = "PlayerCore-tvOS"; + PRODUCT_MODULE_NAME = VerizonVideoPartnerSDK; + PRODUCT_NAME = "VerizonVideoPartnerSDK-iOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = appletvos; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; }; name = Release; }; - A76911FD9B3B83CD11E6A5ED499AC362 /* Debug */ = { + A32C32AFAE4692B143157B3E6E5984D0 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D8F051A30702E7B41665B5809C07C3E2 /* PlayerCore-iOS.xcconfig */; + baseConfigurationReference = D9510DD84940922624A9D77C93A18633 /* VerizonVideoPartnerSDK-tvOS.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/PlayerCore-iOS/PlayerCore-iOS-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MODULEMAP_FILE = "Headers/Public/PlayerCore/PlayerCore-iOS.modulemap"; + GCC_PREFIX_HEADER = "Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-tvOS.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = PlayerCore; - PRODUCT_NAME = "PlayerCore-iOS"; + PRODUCT_MODULE_NAME = VerizonVideoPartnerSDK; + PRODUCT_NAME = "VerizonVideoPartnerSDK-tvOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + VALIDATE_PRODUCT = YES; }; - name = Debug; + name = Release; }; - BC5EB2623C9B5560206B55F6EF766ACB /* Release */ = { + B59A2841B02D5C8F4E979AB23D043C66 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 826EC2FC2BC52DFDD904498123F0A178 /* VideoRenderer-iOS.xcconfig */; + baseConfigurationReference = 428E11D195B982CF6C0B6F47698DBA9F /* Pods-Tutorial_tvOS.release.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MODULEMAP_FILE = "Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = VideoRenderer; - PRODUCT_NAME = "VideoRenderer-iOS"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = appletvos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; VALIDATE_PRODUCT = YES; }; name = Release; }; - C395FE7C5D9166B639DB60ACAF2554B4 /* Release */ = { + B9FD829F43E9EAB5B4389FBB54E0F16C /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 182EC1D691EA0D66F27E2AB5471A4FF0 /* VerizonVideoPartnerSDK-iOS.xcconfig */; + baseConfigurationReference = E155AA96480BC79AE0AC099C465DE9B3 /* PlayerCore-tvOS.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MODULEMAP_FILE = "Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap"; + GCC_PREFIX_HEADER = "Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-prefix.pch"; + MODULEMAP_FILE = "Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = VerizonVideoPartnerSDK; - PRODUCT_NAME = "VerizonVideoPartnerSDK-iOS"; + PRODUCT_MODULE_NAME = PlayerCore; + PRODUCT_NAME = "PlayerCore-tvOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + BAD21F4105CEB8188A5863500E24247F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6635C0DFD349C624B963179F82356682 /* OMSDK-Oath2.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "iPhone Developer"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; }; name = Release; }; - D5BB86BD7564523B67BCAFC96A1E79B3 /* Debug */ = { + BC8338F18DD2B7C1D26E36D1C706EA1B /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 11B4B76EABDBD17D9DDDD9C4992AC267 /* VerizonVideoPartnerSDK-tvOS.xcconfig */; + baseConfigurationReference = D9510DD84940922624A9D77C93A18633 /* VerizonVideoPartnerSDK-tvOS.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -3260,33 +3451,35 @@ }; name = Debug; }; - D5E2A548C83A4D5243FFB5852635522B /* Debug */ = { + CC2399CE7CF0A87CC71899EB82B3A086 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7D7FAF430C4EA0BE6DC14450B5EA5E37 /* PlayerCore-tvOS.xcconfig */; + baseConfigurationReference = 280D7A9CFA13A8DA8ED56F7F568D2C18 /* PlayerControls.xcconfig */; buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-prefix.pch"; - MODULEMAP_FILE = "Headers/Public/PlayerCore/PlayerCore-tvOS.modulemap"; + GCC_PREFIX_HEADER = "Target Support Files/PlayerControls/PlayerControls-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MODULEMAP_FILE = Headers/Public/PlayerControls/PlayerControls.modulemap; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = PlayerCore; - PRODUCT_NAME = "PlayerCore-tvOS"; + PRODUCT_MODULE_NAME = PlayerControls; + PRODUCT_NAME = PlayerControls; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = appletvos; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; }; - name = Debug; + name = Release; }; - E40B92DE2348AC1CB43A39792A0B41C8 /* Debug */ = { + DB32F4741A720CB3EA46A4FE85791038 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 826EC2FC2BC52DFDD904498123F0A178 /* VideoRenderer-iOS.xcconfig */; + baseConfigurationReference = 8C512E9F41D0253D10C8267F4E1F0AAB /* VideoRenderer-iOS.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -3309,9 +3502,58 @@ }; name = Debug; }; - E7B4B84AF4319CDF3BE6534C2FFB8FB7 /* Release */ = { + EACF9F87FC44968B5837AB5F5C95F9DC /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D8F051A30702E7B41665B5809C07C3E2 /* PlayerCore-iOS.xcconfig */; + baseConfigurationReference = 8C512E9F41D0253D10C8267F4E1F0AAB /* VideoRenderer-iOS.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MODULEMAP_FILE = "Headers/Public/VideoRenderer/VideoRenderer-iOS.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = VideoRenderer; + PRODUCT_NAME = "VideoRenderer-iOS"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + EC247E4ADCC352CE23674B28A54B5CEC /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = DD3703C4CCA1948595C33E144DEBC84A /* Pods-Tutorial.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Tutorial/Pods-Tutorial.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + EF58644068B3797C811227377F7E1966 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 0F4D2737B8CE26396BCBF76BF9D81A1D /* PlayerCore-iOS.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -3331,13 +3573,41 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; + }; + name = Debug; + }; + F5B68A3DC1C92314772FBB305211669D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6635C0DFD349C624B963179F82356682 /* OMSDK-Oath2.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_IDENTITY = "iPhone Developer"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + F7E6228E932DB6986D7EA21227EAE450 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 280D7A9CFA13A8DA8ED56F7F568D2C18 /* PlayerControls.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/PlayerControls"; + INFOPLIST_FILE = "Target Support Files/PlayerControls/ResourceBundle-PlayerControls-PlayerControls-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + PRODUCT_NAME = PlayerControls; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + WRAPPER_EXTENSION = bundle; }; name = Release; }; - F28303A5716C1D54CEFD647321ABDB95 /* Release */ = { + FA1A10F0C6B9E8FE917D02CACA2A1E90 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D2A2FB54B9EE32B692A636C176BFF3CB /* PlayerControls.xcconfig */; + baseConfigurationReference = 280D7A9CFA13A8DA8ED56F7F568D2C18 /* PlayerControls.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -3357,104 +3627,146 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; }; - name = Release; + name = Debug; + }; + FC056D6B3E88B0DD6CC5F8AECA6ADE4D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 21028DEC97602C707A154D6AA36F7A46 /* VerizonVideoPartnerSDK-iOS.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + GCC_PREFIX_HEADER = "Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MODULEMAP_FILE = "Headers/Public/VerizonVideoPartnerSDK/VerizonVideoPartnerSDK-iOS.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = VerizonVideoPartnerSDK; + PRODUCT_NAME = "VerizonVideoPartnerSDK-iOS"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 009BDDEC6E134D384BC5880D531B557E /* Build configuration list for PBXNativeTarget "Pods-Tutorial_tvOS" */ = { + 00B39BB74E4079A2A1C2E9D4BD596348 /* Build configuration list for PBXNativeTarget "PlayerCore-iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + EF58644068B3797C811227377F7E1966 /* Debug */, + 45763DD8400F55F802951103F942D4DC /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 09A735B000C3067A96F796079BF9C683 /* Build configuration list for PBXNativeTarget "PlayerControls" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + FA1A10F0C6B9E8FE917D02CACA2A1E90 /* Debug */, + CC2399CE7CF0A87CC71899EB82B3A086 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1DC55AB1E3034FC973CAFCCBD0F334F7 /* Build configuration list for PBXNativeTarget "VideoRenderer-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - A1AE02EB5BA6A14B6B160FD6A984BD9F /* Debug */, - 0B936F99EBDB78A54C6265284DE3086C /* Release */, + 4242A13CC2870E850657342C8484FE1C /* Debug */, + 4E9D5A82635CEF71E264D0E3BE0305E3 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + 266C79F11A395CB0D3EFC86606DCF096 /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 809ABCA383E436A3391A16CC53AC975B /* Debug */, - 9968F0FBC67CCB1540E9868B9134D03D /* Release */, + BC8338F18DD2B7C1D26E36D1C706EA1B /* Debug */, + A32C32AFAE4692B143157B3E6E5984D0 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3AA45A85E0BBBD24A2571E2397AC386B /* Build configuration list for PBXNativeTarget "PlayerCore-tvOS" */ = { + 3817609F69A3D0D5D0EB34FF147C2D7E /* Build configuration list for PBXNativeTarget "PlayerCore-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - D5E2A548C83A4D5243FFB5852635522B /* Debug */, - A305645404304CEA577A00F2CACE088A /* Release */, + 290394E2ECBD2A871EB8C8636D34CD4A /* Debug */, + B9FD829F43E9EAB5B4389FBB54E0F16C /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 49A689110C4C591C1836249D3EB13108 /* Build configuration list for PBXNativeTarget "VideoRenderer-iOS" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - E40B92DE2348AC1CB43A39792A0B41C8 /* Debug */, - BC5EB2623C9B5560206B55F6EF766ACB /* Release */, + 6B04F5812126E357F7CBF430C14D0A57 /* Debug */, + 65D37034480210C11934F9BE9A5DC9B7 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 82BC7840116F57441DAEC50B69AB610E /* Build configuration list for PBXNativeTarget "VideoRenderer-tvOS" */ = { + 60B44818EA61ACE73AB3E68869669607 /* Build configuration list for PBXNativeTarget "PlayerControls-PlayerControls" */ = { isa = XCConfigurationList; buildConfigurations = ( - 88E0F9F3B274633FB7EE670164A6A649 /* Debug */, - 194D600B8D98B748AD24CB380EB370C1 /* Release */, + 05A5E61ECD414457672E9F2144E8729A /* Debug */, + F7E6228E932DB6986D7EA21227EAE450 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 8A832A0365DFB5CD16EB9E43CD0E1EF1 /* Build configuration list for PBXNativeTarget "Pods-Tutorial" */ = { + 70C7CDB18D92DCA6D872EC571D2D1C5F /* Build configuration list for PBXAggregateTarget "OMSDK-Oath2" */ = { isa = XCConfigurationList; buildConfigurations = ( - 265B7730F054995284D60066F2DD3B33 /* Debug */, - 814B5B4D77DCFE4F429C63CB0B0620E5 /* Release */, + F5B68A3DC1C92314772FBB305211669D /* Debug */, + BAD21F4105CEB8188A5863500E24247F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 924E9A4B686D0D05A28145D96100E355 /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-tvOS" */ = { + 7E1B257ADABAB78A1C76B9C3B0432DD6 /* Build configuration list for PBXNativeTarget "Pods-Tutorial_tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - D5BB86BD7564523B67BCAFC96A1E79B3 /* Debug */, - 13E62F784AEA7694EEA701474DD35E8C /* Release */, + 7687400B957B736806EFE90F15065829 /* Debug */, + B59A2841B02D5C8F4E979AB23D043C66 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - D4BD81EABB04ADB43794DA92AD9DBC4D /* Build configuration list for PBXNativeTarget "PlayerControls" */ = { + 9E990C5F7CB904CF376A41B2B5EEEE71 /* Build configuration list for PBXNativeTarget "Pods-Tutorial" */ = { isa = XCConfigurationList; buildConfigurations = ( - 0EB57B05E9F32C149BCDD04802D07149 /* Debug */, - F28303A5716C1D54CEFD647321ABDB95 /* Release */, + 3ACE34A6B573C8B53685E3F3B7A7F2A6 /* Debug */, + EC247E4ADCC352CE23674B28A54B5CEC /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - EC5386158BED4B20E7E958286F049599 /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-iOS" */ = { + AED1E40ABF89D0800BF8D867FA5C340E /* Build configuration list for PBXNativeTarget "VerizonVideoPartnerSDK-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 158B322F8FBEF30F416E2F4B6FAAE0A8 /* Debug */, - C395FE7C5D9166B639DB60ACAF2554B4 /* Release */, + FC056D6B3E88B0DD6CC5F8AECA6ADE4D /* Debug */, + 964CB226FE9F8DD98886289219FB7BB6 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - FE280C024E74424199E579779CE5C4DE /* Build configuration list for PBXNativeTarget "PlayerCore-iOS" */ = { + FB87609849C98DCA66FCF9EDE29F8610 /* Build configuration list for PBXNativeTarget "VideoRenderer-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - A76911FD9B3B83CD11E6A5ED499AC362 /* Debug */, - E7B4B84AF4319CDF3BE6534C2FFB8FB7 /* Release */, + DB32F4741A720CB3EA46A4FE85791038 /* Debug */, + EACF9F87FC44968B5837AB5F5C95F9DC /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; } diff --git a/tutorials/sources/Pods/Target Support Files/OMSDK-Oath2/OMSDK-Oath2.xcconfig b/tutorials/sources/Pods/Target Support Files/OMSDK-Oath2/OMSDK-Oath2.xcconfig new file mode 100644 index 0000000..8edcffd --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/OMSDK-Oath2/OMSDK-Oath2.xcconfig @@ -0,0 +1,9 @@ +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/OMSDK-Oath2 +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OMSDK-Oath2" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/OMSDK-Oath2 +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls-umbrella.h b/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls-umbrella.h new file mode 100644 index 0000000..78834b2 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double PlayerControlsVersionNumber; +FOUNDATION_EXPORT const unsigned char PlayerControlsVersionString[]; + diff --git a/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.modulemap b/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.modulemap new file mode 100644 index 0000000..4bb8a42 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.modulemap @@ -0,0 +1,6 @@ +module PlayerControls { + umbrella header "PlayerControls-umbrella.h" + + export * + module * { export * } +} diff --git a/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.xcconfig b/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.xcconfig index 5c46953..301d7b8 100644 --- a/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/PlayerControls/PlayerControls.xcconfig @@ -1,7 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = -framework "CoreMedia" -framework "Foundation" -framework "SafariServices" -framework "UIKit" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/tutorials/sources/Pods/Target Support Files/PlayerControls/ResourceBundle-PlayerControls-PlayerControls-Info.plist b/tutorials/sources/Pods/Target Support Files/PlayerControls/ResourceBundle-PlayerControls-PlayerControls-Info.plist new file mode 100644 index 0000000..5b5506b --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/PlayerControls/ResourceBundle-PlayerControls-PlayerControls-Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.30.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + NSPrincipalClass + + + diff --git a/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS-umbrella.h b/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS-umbrella.h new file mode 100644 index 0000000..834437e --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double PlayerCoreVersionNumber; +FOUNDATION_EXPORT const unsigned char PlayerCoreVersionString[]; + diff --git a/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.modulemap b/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.modulemap new file mode 100644 index 0000000..0fca215 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.modulemap @@ -0,0 +1,7 @@ +module PlayerCore { + umbrella header "PlayerCore-iOS-umbrella.h" + exclude header "PlayerCore-tvOS-umbrella.h" + + export * + module * { export * } +} diff --git a/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.xcconfig b/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.xcconfig index 63e0f1c..2190265 100644 --- a/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/PlayerCore-iOS/PlayerCore-iOS.xcconfig @@ -1,7 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = -framework "CoreGraphics" -framework "CoreMedia" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-umbrella.h b/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-umbrella.h new file mode 100644 index 0000000..834437e --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double PlayerCoreVersionNumber; +FOUNDATION_EXPORT const unsigned char PlayerCoreVersionString[]; + diff --git a/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.modulemap b/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.modulemap new file mode 100644 index 0000000..de8fc64 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.modulemap @@ -0,0 +1,7 @@ +module PlayerCore { + umbrella header "PlayerCore-tvOS-umbrella.h" + exclude header "PlayerCore-iOS-umbrella.h" + + export * + module * { export * } +} diff --git a/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.xcconfig b/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.xcconfig index 36c74c4..7feff70 100644 --- a/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/PlayerCore-tvOS/PlayerCore-tvOS.xcconfig @@ -1,7 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = -framework "CoreGraphics" -framework "CoreMedia" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh index be7b959..94e13be 100755 --- a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh +++ b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh @@ -3,10 +3,15 @@ set -e set -u set -o pipefail +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + if [ -z ${UNLOCALIZED_RESOURCES_FOLDER_PATH+x} ]; then - # If UNLOCALIZED_RESOURCES_FOLDER_PATH is not set, then there's nowhere for us to copy - # resources to, so exit 0 (signalling the script phase was successful). - exit 0 + # If UNLOCALIZED_RESOURCES_FOLDER_PATH is not set, then there's nowhere for us to copy + # resources to, so exit 0 (signalling the script phase was successful). + exit 0 fi mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" @@ -92,24 +97,10 @@ EOM esac } if [[ "$CONFIGURATION" == "Debug" ]]; then - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/AdVideoControls.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/AirPlayActiveView.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/DefaultControlsViewController.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SeekerControlPlayground.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingCell.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingHeaderView.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingsViewController.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets" + install_resource "${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.bundle" fi if [[ "$CONFIGURATION" == "Release" ]]; then - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/AdVideoControls.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/AirPlayActiveView.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/DefaultControlsViewController.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SeekerControlPlayground.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingCell.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingHeaderView.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingsViewController.xib" - install_resource "${PODS_ROOT}/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets" + install_resource "${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.bundle" fi mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" diff --git a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.debug.xcconfig b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.debug.xcconfig index d7d9fd6..d20f675 100644 --- a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.debug.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.debug.xcconfig @@ -1,11 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OMSDK-Oath2" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/OMSDK-Oath2" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls" "${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS" -OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/OMSDK-Oath2" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" OTHER_LDFLAGS = $(inherited) -ObjC -l"PlayerControls" -l"PlayerCore-iOS" -l"VerizonVideoPartnerSDK-iOS" -l"VideoRenderer-iOS" -framework "AVFoundation" -framework "CoreGraphics" -framework "CoreMedia" -framework "Foundation" -framework "OMSDK_Oath2" -framework "SafariServices" -framework "UIKit" -framework "WebKit" -OTHER_SWIFT_FLAGS = $(inherited) -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.release.xcconfig b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.release.xcconfig index d7d9fd6..d20f675 100644 --- a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.release.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial.release.xcconfig @@ -1,11 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OMSDK-Oath2" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/OMSDK-Oath2" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls" "${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS" -OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/OMSDK-Oath2" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" OTHER_LDFLAGS = $(inherited) -ObjC -l"PlayerControls" -l"PlayerCore-iOS" -l"VerizonVideoPartnerSDK-iOS" -l"VideoRenderer-iOS" -framework "AVFoundation" -framework "CoreGraphics" -framework "CoreMedia" -framework "Foundation" -framework "OMSDK_Oath2" -framework "SafariServices" -framework "UIKit" -framework "WebKit" -OTHER_SWIFT_FLAGS = $(inherited) -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.debug.xcconfig b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.debug.xcconfig index ad39af4..c47f4f7 100644 --- a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.debug.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.debug.xcconfig @@ -3,7 +3,7 @@ GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS" "${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS" "${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS" OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" OTHER_LDFLAGS = $(inherited) -ObjC -l"PlayerCore-tvOS" -l"VerizonVideoPartnerSDK-tvOS" -l"VideoRenderer-tvOS" -framework "AVFoundation" -framework "CoreGraphics" -framework "CoreMedia" -OTHER_SWIFT_FLAGS = $(inherited) -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.release.xcconfig b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.release.xcconfig index ad39af4..c47f4f7 100644 --- a/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.release.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/Pods-Tutorial_tvOS/Pods-Tutorial_tvOS.release.xcconfig @@ -3,7 +3,7 @@ GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS" "${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS" "${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS" OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" OTHER_LDFLAGS = $(inherited) -ObjC -l"PlayerCore-tvOS" -l"VerizonVideoPartnerSDK-tvOS" -l"VideoRenderer-tvOS" -framework "AVFoundation" -framework "CoreGraphics" -framework "CoreMedia" -OTHER_SWIFT_FLAGS = $(inherited) -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-umbrella.h b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-umbrella.h new file mode 100644 index 0000000..750e7a3 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double VerizonVideoPartnerSDKVersionNumber; +FOUNDATION_EXPORT const unsigned char VerizonVideoPartnerSDKVersionString[]; + diff --git a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.modulemap b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.modulemap new file mode 100644 index 0000000..e24eee8 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.modulemap @@ -0,0 +1,7 @@ +module VerizonVideoPartnerSDK { + umbrella header "VerizonVideoPartnerSDK-iOS-umbrella.h" + exclude header "VerizonVideoPartnerSDK-tvOS-umbrella.h" + + export * + module * { export * } +} diff --git a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.xcconfig b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.xcconfig index b9a6a87..e4ae0b3 100644 --- a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-iOS/VerizonVideoPartnerSDK-iOS.xcconfig @@ -1,11 +1,8 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-iOS FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/OMSDK-Oath2" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" -LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls" "${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS" "${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS" -OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -OTHER_LDFLAGS = -framework "AVFoundation" -framework "CoreGraphics" -framework "CoreMedia" -framework "WebKit" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-iOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS/VideoRenderer.modulemap" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-umbrella.h b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-umbrella.h new file mode 100644 index 0000000..750e7a3 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double VerizonVideoPartnerSDKVersionNumber; +FOUNDATION_EXPORT const unsigned char VerizonVideoPartnerSDKVersionString[]; + diff --git a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.modulemap b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.modulemap new file mode 100644 index 0000000..99882e2 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.modulemap @@ -0,0 +1,7 @@ +module VerizonVideoPartnerSDK { + umbrella header "VerizonVideoPartnerSDK-tvOS-umbrella.h" + exclude header "VerizonVideoPartnerSDK-iOS-umbrella.h" + + export * + module * { export * } +} diff --git a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.xcconfig b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.xcconfig index cf49d53..39ebf17 100644 --- a/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/VerizonVideoPartnerSDK-tvOS/VerizonVideoPartnerSDK-tvOS.xcconfig @@ -1,9 +1,7 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/VerizonVideoPartnerSDK-tvOS GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS" "${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS" -OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -OTHER_LDFLAGS = -framework "AVFoundation" -framework "CoreGraphics" -framework "CoreMedia" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +OTHER_CFLAGS = $(inherited) -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/PlayerCore-tvOS/PlayerCore.modulemap" -Xcc -fmodule-map-file="${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS/VideoRenderer.modulemap" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS-umbrella.h b/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS-umbrella.h new file mode 100644 index 0000000..93302aa --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double VideoRendererVersionNumber; +FOUNDATION_EXPORT const unsigned char VideoRendererVersionString[]; + diff --git a/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.modulemap b/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.modulemap new file mode 100644 index 0000000..936b55b --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.modulemap @@ -0,0 +1,7 @@ +module VideoRenderer { + umbrella header "VideoRenderer-iOS-umbrella.h" + exclude header "VideoRenderer-tvOS-umbrella.h" + + export * + module * { export * } +} diff --git a/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.xcconfig b/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.xcconfig index eb068bb..fa4f6e6 100644 --- a/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/VideoRenderer-iOS/VideoRenderer-iOS.xcconfig @@ -1,6 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-iOS GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS-umbrella.h b/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS-umbrella.h new file mode 100644 index 0000000..93302aa --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double VideoRendererVersionNumber; +FOUNDATION_EXPORT const unsigned char VideoRendererVersionString[]; + diff --git a/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.modulemap b/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.modulemap new file mode 100644 index 0000000..dc469c0 --- /dev/null +++ b/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.modulemap @@ -0,0 +1,7 @@ +module VideoRenderer { + umbrella header "VideoRenderer-tvOS-umbrella.h" + exclude header "VideoRenderer-iOS-umbrella.h" + + export * + module * { export * } +} diff --git a/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.xcconfig b/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.xcconfig index ce0a02c..98803a5 100644 --- a/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.xcconfig +++ b/tutorials/sources/Pods/Target Support Files/VideoRenderer-tvOS/VideoRenderer-tvOS.xcconfig @@ -1,6 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/VideoRenderer-tvOS GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS -import-underlying-module -Xcc -fmodule-map-file="${SRCROOT}/${MODULEMAP_FILE}" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/README.md b/tutorials/sources/Pods/VerizonVideoPartnerSDK/README.md index 7bcd96c..9299184 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/README.md +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/README.md @@ -10,6 +10,9 @@ CocoaPods Compatible + + Carthage Unsupported + Swift Package Manager Incompatible @@ -23,22 +26,22 @@ The SDK includes a complete video player controls UX (user experience), that inc ## Table of Contents -- [Verizon Video Partner SDK for iOS and tvOS](#verizon-video-partner-sdk-for-ios-and-tvos) - - [Table of Contents](#table-of-contents) - - [Background](#background) - - [Main SDK Features](#main-sdk-features) - - [Default Video Player Controls UX](#default-video-player-controls-ux) - - [Install](#install) - - [Initial Requirements](#initial-requirements) - - [Onboard your Apps for SDK Authentication](#onboard-your-apps-for-sdk-authentication) - - [Cocoapods](#cocoapods) - - [Usage](#usage) - - [High-Level Architecture Overview](#high-level-architecture-overview) - - [How the SDK Works](#how-the-sdk-works) - - [Advertising Info and User Tracking](#advertising-info-and-user-tracking) - - [Contribute](#contribute) - - [Maintainers](#maintainers) - - [License](#license) +[Verizon Video Partner SDK for iOS and tvOS](#verizon-video-partner-sdk-for-ios-and-tvos) +- [Background](#background) + - [Main SDK Features](#main-sdk-features) + - [Default Video Player Controls UX](#default-video-player-controls-ux) +- [Install](#install) + - [Initial Requirements](#initial-requirements) + - [Onboard your Apps for SDK Authentication](#onboard-your-apps-for-sdk-authentication) + - [Cocoapods](#cocoapods) +- [Usage](#usage) + - [High-Level Architecture Overview](#high-level-architecture-overview) + - [How the SDK Works](#how-the-sdk-works) + - [Tutorials](#tutorials) +- [Advertising Info and User Tracking](#advertising-info-and-user-tracking) +- [Contribute](#contribute) +- [Maintainers](#maintainers) +- [License](#license) ## Background @@ -119,7 +122,7 @@ We also think that there should be more gestures that will help users interact w The complete implementation of the default player controls UX is open source and has been provided as an implementation example of this SDK. Feel free to inspect it, copy it, and modify it at will. The default iOS Controls UI implementation repo can be found here: -[Verizon Video Partner SDK Controls for iOS](https://github.com/VerizonAdPlatforms/OneMobileSDK-controls-ios) +[Verizon Video Partner SDK Controls for iOS](https://github.com/VerizonAdPlatforms/VerizonVideoPartnerSDK-controls-ios) ## Install @@ -171,8 +174,6 @@ Our modular approach makes it easy to add new renderers in the future, or to add Note, that new renderers must be registered with our back-end micro service. Reach [Video Support Team](mailto:video.support@oath.com) to start this process. -**You can visit our [tutorials](/tutorials/) to see examples of how to integrate our SDK and how to customize the player for your app.** - ### How the SDK Works At a very basic level, the VVPSDK controls only the video frame. Because of this, you are completely in control of your app’s design and UX (look and feel). You can control whether videos play in a small view, in-place over a thumbnail image, or at full-screen. Your app also has complete control over device rotation, use of view/navigation controllers, scrollers, and any transitions between them. The SDK does not dictate any overall visual design or behavior on your app. @@ -197,6 +198,12 @@ The runtime circumstances and algorithm for getting an ad or not, are not in the **Note**: The SDK only operates with an active network connection; you will not be able to do anything without it. +### Tutorials + +There is an extensive set of tutorial samples with documentation that fully demonstrate how to use most of the facets of the SDK. These can be found here: + +> [SDK Tutorials](/tutorials/) + ## Advertising Info and User Tracking The Verizon Video Partner SDK does not collect any Personal Identifying Information (PII) or track anything that is not related to playing videos or video ads. We use the IDFA (ID for advertisers) value and respect the user's settings for Limit Ad Tracking (iOS enforces this anyway). The device geolocation is determined by our back-end video servers based on IP address, for the purposes of determining and filtering out content that is geo-restricted by content owners. The SDK does not explicitly use the built-in Location Services APIs, and thus does not require your users to grant access to device location data. diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK.swift index 9004fa9..fb46184 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK.swift @@ -237,10 +237,13 @@ public struct VVPSDK { softTimeout: videoResponse.adSettings.softTimeout, hardTimeout: videoResponse.adSettings.hardTimeout, startTimeout: videoResponse.adSettings.startTimeout, - maxDuration: videoResponse.adSettings.maxDuration) + maxSearchTime: videoResponse.adSettings.maxSearchTime, + maxDuration: videoResponse.adSettings.maxDuration, + maxVASTWrapperRedirectCount: videoResponse.adSettings.maxVASTWrapperRedirectCount) let vpaidSettings = PlayerCore.Model.VPAIDSettings(document: self.configuration.vpaid.document) let omSettings = PlayerCore.Model.OMSettings(serviceScriptURL: self.configuration.openMeasurement.script) + let playerModel = PlayerCore.Model(playlist: videoModels, autoplay: videoResponse.autoplay, controlsAnimationSupported: videoResponse.features.isControlsAnimationEnabled, @@ -348,6 +351,7 @@ public struct VVPSDK { let dispatcher: (PlayerCore.Action) -> Void = { [weak player] in player?.store.dispatch(action: $0) } let softTimeout = player.model.adSettings.softTimeout let hardTimeout = player.model.adSettings.hardTimeout + let isVPAIDAllowed = player.model.isVPAIDAllowed func setupVRMWithOldCore() { let vastTagProcessor = VASTTagProcessor(session: ephemeralSession, @@ -356,8 +360,6 @@ public struct VVPSDK { innerParse: vastTagProcessor.parseTag, innerFetch: vastTagProcessor.fetchTag) let adProxy = AdVRMEngine(dispatcher: dispatcher) - let isVPAIDAllowed = player.model.isVPAIDAllowed - let isOpenMeasurementEnabled = player.model.isOpenMeasurementAllowed let provider = AdURLProvider( groupsFetch: adProxy.requestAds(using: vrmProvider.requestAds), processItem: adProxy.processItem(using: vastWrapperProcessor.parseTag(from:), @@ -374,8 +376,7 @@ public struct VVPSDK { _ = player.addObserver { playerProps in guard let detectorInput = MidrollDetector.Input(playerProps: playerProps, - isVPAIDAllowed: isVPAIDAllowed, - isOpenMeasurementEnabled: isOpenMeasurementEnabled) else { return } + isVPAIDAllowed: isVPAIDAllowed) else { return } midrollDetector.process(input: detectorInput) @@ -385,8 +386,8 @@ public struct VVPSDK { dispatcher: dispatcher) weak var player = player - adManager.actions.skipPreroll = { player?.skipAd(id: $0) } - adManager.actions.startPreroll = { player?.playAd(model: $0, isOpenMeasurementEnabled: isOpenMeasurementEnabled) } + adManager.actions.dropPreroll = { player?.dropAd(id: $0) } + adManager.actions.startPreroll = { player?.playAd(model: $0) } let _ = player?.addObserver { playerProps in guard let item = playerProps.playbackItem else { return } @@ -406,39 +407,67 @@ public struct VVPSDK { } func setupVRMWithNewCore() { + let maxRedirectCount = player.model.adSettings.maxVASTWrapperRedirectCount + let maxAdSearchTime = player.model.adSettings.maxSearchTime let createRequest: (URL) -> (URLRequest) = { .init(url: $0, timeoutInterval: hardTimeout) } - let adStartProcessing = StartAdProcessingController(dispatch: dispatcher) + let prerollProcessor = VRMPrerollProcessorController(dispatch: dispatcher) + let midrollProcessor = VRMMidrollProcessorController(dispatch: dispatcher) let startGroupProcessing = StartVRMGroupProcessingController(dispatch: dispatcher) + let finishGroupProcessing = FinishVRMGroupProcessingController(dispatch: dispatcher) let itemController = VRMItemController(dispatch: dispatcher) let itemFetchController = FetchVRMItemController(dispatch: dispatcher) { url in - return self.ephemeralSession.dataFuture(with: createRequest(url)) - .map(Network.Parse.successResponseData) - .map(Network.Parse.string) + self.ephemeralSession.dataFuture(with: createRequest(url)) + .map(Network.Parse.successResponseData) + .map(Network.Parse.string) } let itemParseController = ParseVRMItemController(dispatch: dispatcher, vastMapper: vastMapper) { vastXML in - return Future(value: vastXML) - .dispatch(on: DispatchQueue.global(qos: .userInitiated)) - .map(VASTParser.parseFrom) - + Future(value: vastXML).map(VASTParser.parseFrom) } let vrmRequestController = VRMRequestController(dispatch: dispatcher, groupsMapper: mapGroups) { url in - return self.vrmProvider.requestAds(with: createRequest(url)) + self.vrmProvider.requestAds(with: createRequest(url)) + } + let processingController = VRMProcessingController(maxRedirectCount: maxRedirectCount, + isVPAIDAllowed: isVPAIDAllowed, + dispatch: dispatcher) + + let timeoutController = VRMTimeoutController(dispatch: dispatcher, + softTimeoutTimerFactory: { onFire in + Timer(duration: softTimeout, fire: onFire) }, + hardTimeoutTimerFactory: { onFire in + Timer(duration: hardTimeout, fire: onFire) }) + + let selectFinalResult = VRMSelectFinalResultController(dispatch: dispatcher) + let maxAdSearchTimeController = MaxAdSearchTimeController { requestID in + Timer(duration: maxAdSearchTime) { + dispatcher(PlayerCore.VRMCore.maxSearchTimeoutReached(requestID: requestID)) + } } + let mp4AdCreativeController = MP4AdCreativeController(dispatch: dispatcher) + let vpaidAdCreativeController = VPAIDAdCreativeController(dispatch: dispatcher) + _ = player.store.state.addObserver { state in vrmRequestController.process(with: state) startGroupProcessing.process(with: state) + finishGroupProcessing.process(with: state) itemController.process(with: state) itemFetchController.process(with: state) itemParseController.process(with: state) + processingController.process(with: state) + timeoutController.process(with: state) + selectFinalResult.process(with: state) + maxAdSearchTimeController.process(with: state) + mp4AdCreativeController.process(state: state) + vpaidAdCreativeController.process(state: state) } _ = player.addObserver { playerProps in - adStartProcessing.process(props: playerProps) + prerollProcessor.process(props: playerProps) + midrollProcessor.process(props: playerProps) } } @@ -453,7 +482,7 @@ public struct VVPSDK { dispatcher: dispatcher) let adStartTimeout = player.model.adSettings.startTimeout let adStartTimeoutController = AdStartTimeoutController { - return Timer(duration: adStartTimeout) { dispatcher(adStartTimeoutReached()) } + Timer(duration: adStartTimeout) { dispatcher(adStartTimeoutReached()) } } _ = player.store.state.addObserver { state in timerController.process(state: state) diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK_Version.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK_Version.swift index c5d93dd..d3a0674 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK_Version.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/VVPSDK_Version.swift @@ -6,6 +6,10 @@ import Foundation extension VVPSDK { // Current VVPSDK Version public static var version: String { - return "1.1.0" + return "1.2.2" + } + + static var backendVersion: String { + return "2.33" } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdManagerPresenter.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdManagerPresenter.swift index ca2419e..4ffecea 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdManagerPresenter.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdManagerPresenter.swift @@ -4,7 +4,7 @@ import Foundation import PlayerCore struct AdManagerActions { - var skipPreroll = nop() as Action + var dropPreroll = nop() as Action var startPreroll = nop() as Action } @@ -65,25 +65,9 @@ final class AdManager { if let model = result { self.actions.startPreroll(model) } else { - self.actions.skipPreroll(id) + self.actions.dropPreroll(id) } } } } } - -extension VRMProvider.Item: Hashable { - var hashValue: Int { - switch self { - case let .vast(string, _): return string.hashValue - case let .url(url, _): return url.hashValue - } - } -} - -func == (left: VRMProvider.Item, right: VRMProvider.Item) -> Bool { - switch (left, right) { - case (let .vast(lh, _), let .vast(rh, _)): return lh == rh - case (let .url(lh, _), let .url(rh, _)): return lh == rh - default: return false } -} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdMetrics.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdMetrics.swift index 545fb04..ecdbca6 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdMetrics.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdMetrics.swift @@ -1,6 +1,7 @@ // Copyright 2018, Oath Inc. // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. import Foundation +import PlayerCore enum Ad { } @@ -74,4 +75,13 @@ extension Ad.Metrics.Info { self.name = metaInfo.name self.cpm = metaInfo.cpm } + + init(metaInfo: VRMCore.Item.MetaInfo) { + self.engineType = metaInfo.engineType + self.ruleId = metaInfo.ruleId + self.ruleCompanyId = metaInfo.ruleCompanyId + self.vendor = metaInfo.vendor + self.name = metaInfo.name + self.cpm = metaInfo.cpm + } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProvider.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProvider.swift index ec1a304..77df4f8 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProvider.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProvider.swift @@ -30,7 +30,7 @@ struct AdURLProvider { typealias Request = VRMRequest - let queue = DispatchQueue(label: "com.onemobilesdk.adurlprovider") + let queue = DispatchQueue(label: "com.VerizonVideoPartnerSDK.adurlprovider") //swiftlint:disable function_body_length diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProviderProcess.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProviderProcess.swift index d86d820..f9b5929 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProviderProcess.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdURLProviderProcess.swift @@ -86,7 +86,7 @@ final class AdURLProviderProcess { private func descriptionFor(result: PlayerCore.Ad.VASTModel) -> JSON { return [ - "media file": result.mediaFiles.first?.url.absoluteString ?? NSNull(), + "media file": result.mp4MediaFiles.first?.url.absoluteString ?? result.vpaidMediaFiles.first?.url.absoluteString ?? NSNull(), "click": result.clickthrough?.absoluteString ?? NSNull(), "id": result.id ?? NSNull() ] diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdVRMEngine.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdVRMEngine.swift index 28d59b1..3461611 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdVRMEngine.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/AdVRMEngine.swift @@ -95,11 +95,8 @@ func select(model: PlayerCore.Ad.VASTModel, info: VRMMetaInfo, requestDate: Date, isVPAIDAllowed: Bool) -> PlayerCore.Ad.VASTModel? { - let mediaFiles = model.mediaFiles.filter { - guard case .vpaid = $0.type else { return true } - return isVPAIDAllowed - } - guard !mediaFiles.isEmpty else { + let isModelContainsAds = (isVPAIDAllowed && !model.vpaidMediaFiles.isEmpty) || !model.mp4MediaFiles.isEmpty + guard isModelContainsAds else { dispatcher(PlayerCore.adVRMItemOtherError(info: info, requestDate: requestDate, responseDate: Date())) diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/MidrollDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/MidrollDetector.swift index ebdebf9..e583d26 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/MidrollDetector.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/MidrollDetector.swift @@ -48,7 +48,7 @@ func playAction(input: MidrollDetector.Input, class MidrollDetector { typealias Midroll = PlayerCore.Ad.Midroll - enum Action { + enum Action: Hashable { case prefetch(Midroll) case play(PlayerCore.Ad.VASTModel?, Midroll) } @@ -60,7 +60,6 @@ class MidrollDetector { var isPlayMidrollAllowed: Bool var hasActiveAds: Bool var isVPAIDAllowed: Bool - var isOpenMeasurementEnabled: Bool } struct State { @@ -97,12 +96,11 @@ class MidrollDetector { state.lastPrefetchedMidroll = midroll state.prefetchedModel = nil guard let model = model else { - dispatcher(PlayerCore.skipAd(id: midroll.id)) + dispatcher(PlayerCore.dropAd(id: midroll.id)) return } dispatcher(PlayerCore.playAd(model: model, - id: midroll.id, - isOpenMeasurementEnabled: input.isOpenMeasurementEnabled)) + id: midroll.id)) } } @@ -123,12 +121,11 @@ class MidrollDetector { } extension MidrollDetector.Input { - init?(playerProps: Player.Properties, isVPAIDAllowed: Bool, isOpenMeasurementEnabled: Bool) { + init?(playerProps: Player.Properties, isVPAIDAllowed: Bool) { guard let item = playerProps.playbackItem, let currentTime = item.content.time.static?.current else { return nil } self.isVPAIDAllowed = isVPAIDAllowed - self.isOpenMeasurementEnabled = isOpenMeasurementEnabled self.currentTime = perform { guard currentTime > Double(Int.min) && currentTime < Double(Int.max) else { return 0 } return Int(currentTime) } @@ -138,17 +135,3 @@ extension MidrollDetector.Input { hasActiveAds = item.hasActiveAds } } - - -extension MidrollDetector.Action: Equatable { - static func ==(lhs: MidrollDetector.Action, rhs: MidrollDetector.Action) -> Bool { - switch (lhs, rhs) { - case (.prefetch(let lhsMidroll), .prefetch(let rhsMidroll)): - return lhsMidroll == rhsMidroll - case (.play(let lhsPrefetchedModel, let lhsPrefetchedMidroll), .play(let rhsPrefetchedModel, let rhsPrefetchedMidroll)): - return lhsPrefetchedModel?.mediaFiles.first?.url == rhsPrefetchedModel?.mediaFiles.first?.url - && lhsPrefetchedMidroll == rhsPrefetchedMidroll - default: return false - } - } -} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTModel.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTModel.swift index 001d2f0..1f631f4 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTModel.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTModel.swift @@ -21,7 +21,9 @@ extension PlayerCore.Ad.VASTModel { func merge(with pixels: AdPixels, and verifications: [PlayerCore.Ad.VASTModel.AdVerification]) -> PlayerCore.Ad.VASTModel { return PlayerCore.Ad.VASTModel( adVerifications: self.adVerifications + verifications, - mediaFiles: mediaFiles, + mp4MediaFiles: mp4MediaFiles, + vpaidMediaFiles: vpaidMediaFiles, + skipOffset: skipOffset, clickthrough: clickthrough, adParameters: adParameters, pixels: self.pixels.merge(with: pixels), @@ -50,7 +52,8 @@ extension PlayerCore.AdPixels { acceptInvitationLinear: acceptInvitationLinear + pixels.acceptInvitationLinear, close: close + pixels.close, closeLinear: closeLinear + pixels.closeLinear, - collapse: collapse + pixels.collapse + collapse: collapse + pixels.collapse, + progress: progress + pixels.progress ) } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser.swift index af6a30a..d3d0cde 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser.swift @@ -46,7 +46,9 @@ enum VASTParser { var clickthroughURL: URL? var pixels = PlayerCore.AdPixels() var adParameters: String? - var mediaFile: [PlayerCore.Ad.VASTModel.MediaFile] = [] + var mp4MediaFiles: [PlayerCore.Ad.VASTModel.MP4MediaFile] = [] + var vpaidMediaFiles: [PlayerCore.Ad.VASTModel.VPAIDMediaFile] = [] + var skipOffset: PlayerCore.Ad.VASTModel.VASTOffset = .none } struct AdVerification { @@ -133,6 +135,10 @@ enum VASTParser { } delegate.didStartElement = .some { (name, attr) -> Void in + if let skipOffset = attr["skipoffset"] { + inlineContext.skipOffset = VASTParser.getOffset(from: skipOffset) + } + switch name { case "Extensions": delegateStack.push(XML.Delegate(setup: { delegate in @@ -204,7 +210,13 @@ enum VASTParser { case "close": inlineContext.pixels.close.append(url) case "closeLinear": inlineContext.pixels.closeLinear.append(url) case "collapse": inlineContext.pixels.collapse.append(url) - default: break } + case "progress": + guard let offset = attr["offset"] else { break } + var progressOffset = VASTParser.getOffset(from: offset) + inlineContext.pixels.progress.append(.init(url: url, + offset: progressOffset)) + default: break + } } delegateStack.pop() @@ -230,19 +242,6 @@ enum VASTParser { case "MediaFile": guard let typeAttr = attr["type"] else { break } - let videoType: PlayerCore.Ad.VASTModel.MediaFile.VideoType? = { - switch typeAttr { - case "video/mp4": - return .mp4 - case "application/javascript": - guard - let apiFramework = attr["apiFramework"], - apiFramework == "VPAID" else { return nil } - return .vpaid - default: return nil - } - }() - guard let type = videoType else { break } guard let delivery = attr["delivery"], delivery == "progressive" else { break } @@ -258,14 +257,26 @@ enum VASTParser { guard let widthAttr = attr["width"], let width = Int(widthAttr) else { return } guard let heightAttr = attr["height"], let height = Int(heightAttr) else { return } guard let url = url else { return } - let mediaFile = PlayerCore.Ad.VASTModel.MediaFile( - url: url, - type: type, - width: width, - height: height, - scalable: scalable ?? false, - maintainAspectRatio: maintainAspectRatio ?? true) - inlineContext.mediaFile.append(mediaFile) + switch typeAttr { + case "video/mp4": + let mediaFile = PlayerCore.Ad.VASTModel.MP4MediaFile( + url: url, + width: width, + height: height, + scalable: scalable ?? false, + maintainAspectRatio: maintainAspectRatio ?? true) + inlineContext.mp4MediaFiles.append(mediaFile) + case "application/javascript": + guard + let apiFramework = attr["apiFramework"], + apiFramework == "VPAID" else { break } + let mediaFile = PlayerCore.Ad.VASTModel.VPAIDMediaFile( + url: url, + scalable: scalable ?? false, + maintainAspectRatio: maintainAspectRatio ?? true) + inlineContext.vpaidMediaFiles.append(mediaFile) + default: break + } delegateStack.pop() })) @@ -390,6 +401,11 @@ enum VASTParser { case "close": pixels.close.append(url) case "closeLinear": pixels.closeLinear.append(url) case "collapse": pixels.collapse.append(url) + case "progress": + guard let offset = attr["offset"] else { break } + pixels.progress.append( + .init(url: url, + offset: VASTParser.getOffset(from: offset))) default: break } } @@ -449,8 +465,10 @@ enum VASTParser { with: adId, to: { context in delegateStack.pop() + guard result == nil else { fatalError("Result overwrite detected") } - guard context.mediaFile.isEmpty == false else { return } + guard !context.vpaidMediaFiles.isEmpty || !context.mp4MediaFiles.isEmpty else { return } + let adVerifications: [PlayerCore.Ad.VASTModel.AdVerification] = { guard context.adVerifications.isEmpty == false else { return [] } return context.adVerifications.compactMap { @@ -463,7 +481,9 @@ enum VASTParser { } }() let model = PlayerCore.Ad.VASTModel(adVerifications: adVerifications, - mediaFiles: context.mediaFile, + mp4MediaFiles: context.mp4MediaFiles, + vpaidMediaFiles: context.vpaidMediaFiles, + skipOffset: context.skipOffset, clickthrough: context.clickthroughURL, adParameters: context.adParameters, pixels: context.pixels, @@ -489,6 +509,7 @@ enum VASTParser { return delegateStack } + //swiftlint:disable line_length //swiftlint:enable function_body_length //swiftlint:enable cyclomatic_complexity diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser_Offset.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser_Offset.swift new file mode 100644 index 0000000..2cec091 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VASTParser_Offset.swift @@ -0,0 +1,77 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import PlayerCore + +extension VASTParser { + + static func getOffset(from string: String) -> PlayerCore.Ad.VASTModel.VASTOffset { + guard string.isEmpty == false else { return .none } + if string.contains("%") { + if let value = Int(string.replacingOccurrences(of: "%", with: "")) { + return .percentage(value) + } + } else if string.contains(":") { + if let value = TimeOffset(from: string)?.seconds { + return .time(value) + } + } + return .none + } + + private struct TimeOffset { + private enum Time { + case hours([String]) + case minutes([String]) + case seconds([String]) + + private var maxValue: Int { + switch self { + case .hours: return 99 + case .minutes, .seconds: return 59 + } + } + private var multiplier: Int { + switch self { + case .hours: return 3600 + case .minutes: return 60 + case .seconds: return 1 + } + } + private var index: Int { + switch self { + case .hours: return 0 + case .minutes: return 1 + case .seconds: return 2 + } + } + private var stringTime: String { + switch self { + case .hours(let value): return value[self.index] + case .minutes(let value): return value[self.index] + case .seconds(let value): return value[self.index] + } + } + + var resultInSeconds: Int? { + guard let roundedSeconds = Double(self.stringTime)?.rounded() else { return nil } + let result = Int(roundedSeconds) + guard result <= maxValue else { return nil } + return result * multiplier + } + + } + + let seconds: Int + + init?(from time: String) { + let components = time.components(separatedBy: ":") + guard components.count == 3, + let hours = Time.hours(components).resultInSeconds, + let minutes = Time.minutes(components).resultInSeconds, + let seconds = Time.seconds(components).resultInSeconds else { return nil } + self.seconds = hours + minutes + seconds + } + } + +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FetchVRMItemController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FetchVRMItemController.swift index 449dee4..e669a7b 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FetchVRMItemController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FetchVRMItemController.swift @@ -31,8 +31,7 @@ final class FetchVRMItemController { self.dispatch(VRMCore.startItemParsing(originalItem: fetchCandidate.parentItem, vastXML: vastXML)) }.onError { error in - self.dispatch(VRMCore.failedItemFetch(originalItem: fetchCandidate.parentItem, - fetchCandidate: fetchCandidate)) + self.dispatch(VRMCore.failedItemFetch(originalItem: fetchCandidate.parentItem)) } } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FinishVRMGroupProcessingController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FinishVRMGroupProcessingController.swift new file mode 100644 index 0000000..285e060 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/FinishVRMGroupProcessingController.swift @@ -0,0 +1,73 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +final class FinishVRMGroupProcessingController { + let dispatch: (PlayerCore.Action) -> () + private var finishedGroupIds = Set() + private var triedItems = Set() + private var isMaxAdSearchTimeTracked = false + + + init(dispatch: @escaping (PlayerCore.Action) -> ()) { + self.dispatch = dispatch + } + + func process(with state: PlayerCore.State) { + let allErroredItems = state.vrmTimeoutError.erroredItems + .union(state.vrmFetchingError.erroredItems) + .union(state.vrmParsingError.erroredItems) + .union(state.vrmRedirectError.erroredItems) + .union(state.vrmOtherError.erroredItems) + let processedItems = Set(state.vrmProcessingResult.processedAds.map({$0.item})) + + process(with: state.vrmProcessingTimeout, + isMaxSearchTimeReached: state.vrmMaxAdSearchTimeout.isReached, + currentGroup: state.vrmCurrentGroup.currentGroup, + erroredItems: allErroredItems, + processedItems: processedItems, + finalResult: state.vrmFinalResult.successResult) + } + + func process(with timeout: VRMProcessingTimeout, + isMaxSearchTimeReached: Bool, + currentGroup: VRMCore.Group?, + erroredItems: Set, + processedItems: Set, + finalResult: VRMCore.Result?) { + guard let currentGroup = currentGroup, + finishedGroupIds.contains(currentGroup.id) == false else { + return + } + + func finishGroup() { + finishedGroupIds.insert(currentGroup.id) + dispatch(VRMCore.finishCurrentGroupProcessing()) + } + + guard isMaxSearchTimeReached == false else { + if isMaxAdSearchTimeTracked == false { + isMaxAdSearchTimeTracked = true + finishGroup() + } + return + } + + isMaxAdSearchTimeTracked = false + + if let finalResult = finalResult { + triedItems.insert(finalResult.item) + } + + let triedAllProcessedItemsAfterHardTimeout = timeout == .hard && + finalResult == nil && + processedItems.isSubset(of: triedItems) + let allItemsInGroupAlreadyFailed = Set(currentGroup.items).isSubset(of: erroredItems) + + if triedAllProcessedItemsAfterHardTimeout || allItemsInGroupAlreadyFailed { + finishGroup() + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/MaxAdSearchTimeController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/MaxAdSearchTimeController.swift new file mode 100644 index 0000000..53855ee --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/MaxAdSearchTimeController.swift @@ -0,0 +1,37 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +final class MaxAdSearchTimeController { + + let timerFactory: (UUID) -> Cancellable + + private var timer: Cancellable? + private var processedRequestIDs = Set() + + init(timerFactory: @escaping (UUID) -> Cancellable) { + self.timerFactory = timerFactory + } + + func process(with state: PlayerCore.State) { + process(requestID: state.vrmRequestStatus.request?.id, + isStreamStarted: state.rate.adRate.stream || state.rate.contentRate.stream) + } + + func process(requestID: UUID?, + isStreamStarted: Bool) { + guard let requestID = requestID else { + return + } + + if isStreamStarted { + timer?.cancel() + timer = nil + } else if processedRequestIDs.contains(requestID) == false { + processedRequestIDs.insert(requestID) + timer = timerFactory(requestID) + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/ParseVRMItemController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/ParseVRMItemController.swift index c167b9e..b0150db 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/ParseVRMItemController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/ParseVRMItemController.swift @@ -44,8 +44,7 @@ final class ParseVRMItemController { self.parseXML(candidate.vastXML) .onComplete { vastModel in guard let vastModel = vastModel else { - self.dispatch(VRMCore.failedItemParse(originalItem: candidate.parentItem, - parseCandidate: candidate)) + self.dispatch(VRMCore.failedItemParse(originalItem: candidate.parentItem)) return } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/StartVRMGroupProcessingController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/StartVRMGroupProcessingController.swift index 48a2b88..2b13aed 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/StartVRMGroupProcessingController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/StartVRMGroupProcessingController.swift @@ -7,6 +7,7 @@ import PlayerCore final class StartVRMGroupProcessingController { let dispatch: (PlayerCore.Action) -> () + private var trackedRequests = Set() init(dispatch: @escaping (PlayerCore.Action) -> ()) { self.dispatch = dispatch @@ -14,14 +15,27 @@ final class StartVRMGroupProcessingController { func process(with state: PlayerCore.State) { process(with: state.vrmCurrentGroup.currentGroup, - groupsQueue: state.vrmGroupsQueue.groupsQueue) + groupsQueue: state.vrmGroupsQueue.groupsQueue, + isMaxAdSearchReached: state.vrmMaxAdSearchTimeout.isReached, + vrmRequest: state.vrmRequestStatus.request, + hasReceivedVRMResponse: state.vrmResponse != nil) } func process(with currentGroup: VRMCore.Group?, - groupsQueue: [VRMCore.Group]) { + groupsQueue: [VRMCore.Group], + isMaxAdSearchReached: Bool, + vrmRequest: VRMRequestStatus.Request?, + hasReceivedVRMResponse: Bool) { guard currentGroup == nil, - let nextGroup = groupsQueue.first else { return } + hasReceivedVRMResponse, + isMaxAdSearchReached == false else { return } - dispatch(VRMCore.startGroupProcessing(group: nextGroup)) + if let nextGroup = groupsQueue.first { + dispatch(VRMCore.startGroupProcessing(group: nextGroup)) + } else if let request = vrmRequest, + trackedRequests.contains(request.id) == false { + trackedRequests.insert(request.id) + dispatch(VRMCore.noGroupsToProcess(id: request.id)) + } } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMItemController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMItemController.swift index d0940d5..ca68c65 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMItemController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMItemController.swift @@ -8,27 +8,35 @@ final class VRMItemController { let dispatch: (PlayerCore.Action) -> Void - private var startedItems = Set() + private var startedCandidates = Set() + private var wrapperError = Set() init(dispatch: @escaping (PlayerCore.Action) -> Void ) { self.dispatch = dispatch } func process(with state: PlayerCore.State) { - process(with: state.vrmScheduledItems.items) + process(with: state.vrmScheduledItems.items, + isMaxAdSearchTimeReached: state.vrmMaxAdSearchTimeout.isReached) } - func process(with scheduledItems: Set) { - scheduledItems - .subtracting(startedItems) - .forEach { item in - startedItems.insert(item) - switch (item.source) { - case let .url(url): - dispatch(VRMCore.startItemFetch(originalItem: item, url: url)) - case let .vast(vastXML): - dispatch(VRMCore.startItemParsing(originalItem: item, vastXML: vastXML)) - } + func process(with scheduledItems: [VRMCore.Item: Set], + isMaxAdSearchTimeReached: Bool) { + guard isMaxAdSearchTimeReached == false else { + return + } + + scheduledItems.forEach { originalItem, queue in + queue.subtracting(startedCandidates) + .forEach { candidate in + startedCandidates.insert(candidate) + switch (candidate.source) { + case let .url(url): + dispatch(VRMCore.startItemFetch(originalItem: originalItem, url: url)) + case let .vast(vastXML): + dispatch(VRMCore.startItemParsing(originalItem: originalItem, vastXML: vastXML)) + } + } } } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMMidrollProcessorController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMMidrollProcessorController.swift new file mode 100644 index 0000000..9820f76 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMMidrollProcessorController.swift @@ -0,0 +1,73 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. +import UIKit +import PlayerCore + +final class VRMMidrollProcessorController { + let dispatch: (PlayerCore.Action) -> Void + + private var sessionID = UUID() + private var lastMidroll: PlayerCore.Ad.Midroll? + private var prevRoundedTime = 0 + + init(dispatch: @escaping (PlayerCore.Action) -> Void) { + self.dispatch = dispatch + } + + func process(props: Player.Properties) { + guard let item = props.playbackItem, + let currentTime = item.content.time.static?.current else { return } + + process(midrolls: item.midrolls, + currentTime: currentTime, + hasActiveAds: item.hasActiveAds, + isPlayMidrollAllowed: item.content.isPaused == false && item.content.isSeeking == false, + sessionID: props.session.playback.id) + } + + func process(midrolls: [PlayerCore.Ad.Midroll], + currentTime: Double, + hasActiveAds: Bool, + isPlayMidrollAllowed: Bool, + sessionID: UUID) { + guard hasActiveAds == false, + isPlayMidrollAllowed else { return } + + if self.sessionID != sessionID { + self.sessionID = sessionID + lastMidroll = nil + prevRoundedTime = 0 + } + + let roundedTime: Int = perform { + guard currentTime > Double(Int.min) && currentTime < Double(Int.max) else { return 0 } + return Int(currentTime) + } + + let filteredMidrolls: [PlayerCore.Ad.Midroll] = perform { + guard roundedTime <= prevRoundedTime else { return midrolls } + return midrolls.filter { $0.cuePoint != lastMidroll?.cuePoint } + } + + let midrollsBeforeCurrentTime = filteredMidrolls.filter { + $0.cuePoint < roundedTime + } + + let midrollsAfterCurrentTime = filteredMidrolls.filter { + $0.cuePoint >= roundedTime + } + + let candidateBeforeCurrentTime = midrollsBeforeCurrentTime.last{ $0.cuePoint > lastMidroll?.cuePoint ?? 0 } + let candidateAfterCurrentTime = midrollsAfterCurrentTime.first{ $0.cuePoint == roundedTime } + + let midrollToPlay = candidateBeforeCurrentTime ?? candidateAfterCurrentTime + + prevRoundedTime = roundedTime + + if let midroll = midrollToPlay, + lastMidroll?.id != midroll.id { + lastMidroll = midroll + dispatch(VRMCore.adRequest(url: midroll.url, id: midroll.id, type: .midroll)) + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/StartAdProcessingController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMPrerollProcessorController.swift similarity index 83% rename from tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/StartAdProcessingController.swift rename to tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMPrerollProcessorController.swift index ce1ae82..32c3942 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/StartAdProcessingController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMPrerollProcessorController.swift @@ -3,8 +3,7 @@ import UIKit import PlayerCore -final class StartAdProcessingController { - +final class VRMPrerollProcessorController { let dispatch: (PlayerCore.Action) -> Void private var sessionID = UUID() @@ -22,7 +21,8 @@ final class StartAdProcessingController { func process(with url: URL?, isPlaybackInitiated: Bool, - sessionID: UUID) { + sessionID: UUID, + requestID: UUID = UUID()) { guard let url = url, isPlaybackInitiated else { return } @@ -33,7 +33,7 @@ final class StartAdProcessingController { if isPrerollRequested == false { isPrerollRequested = true - dispatch(VRMCore.adRequest(url: url, id: UUID(), type: .preroll)) + dispatch(VRMCore.adRequest(url: url, id: requestID, type: .preroll)) } } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMProcessingController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMProcessingController.swift new file mode 100644 index 0000000..e931ec6 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMProcessingController.swift @@ -0,0 +1,65 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +final class VRMProcessingController { + + let maxRedirectCount: Int + let isVPAIDAllowed: Bool + let dispatch: (PlayerCore.Action) -> Void + + private var dispatchedResults = Set() + + init(maxRedirectCount: Int, + isVPAIDAllowed: Bool, + dispatch: @escaping (PlayerCore.Action) -> Void) { + self.maxRedirectCount = maxRedirectCount + self.isVPAIDAllowed = isVPAIDAllowed + self.dispatch = dispatch + } + + func process(with state: PlayerCore.State) { + process(parsingResultQueue: state.vrmParsingResult.parsedVASTs, + scheduledVRMItems: state.vrmScheduledItems.items, + isMaxAdSearchTimeoutReached: state.vrmMaxAdSearchTimeout.isReached) + } + + func process(parsingResultQueue: [VRMCore.Item: VRMParsingResult.Result], + scheduledVRMItems: [VRMCore.Item: Set], + isMaxAdSearchTimeoutReached: Bool) { + guard isMaxAdSearchTimeoutReached == false else { + return + } + + parsingResultQueue + .filter { _, result in + dispatchedResults.contains(result) == false + }.forEach { item, result in + + switch result.vastModel { + case .inline(let vast): + let isModelContainAd = (isVPAIDAllowed && !vast.vpaidMediaFiles.isEmpty) || !vast.mp4MediaFiles.isEmpty + if isModelContainAd { + dispatch(VRMCore.selectInlineVAST(item: item, inlineVAST: vast)) + } else { + dispatch(VRMCore.otherError(item: item)) + } + case .wrapper(let wrapper): + guard let count = scheduledVRMItems[item]?.count else { + assertionFailure("try to unwrap item, which wasn't started") + return + } + + if (count + 1) < maxRedirectCount { + dispatch(VRMCore.unwrapItem(item: item, url: wrapper.tagURL)) + } else { + dispatch(VRMCore.tooManyIndirections(item: item)) + } + } + + dispatchedResults.insert(result) + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMRequestController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMRequestController.swift index 2bf67bf..3956030 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMRequestController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMRequestController.swift @@ -53,17 +53,17 @@ final class VRMRequestController { process(with: state.vrmRequestStatus.request) } - func process(with requestStatus: PlayerCore.VRMRequestStatus.Request) { + func process(with request: PlayerCore.VRMRequestStatus.Request?) { - if case let .request(url, id) = requestStatus, - firedRequests.contains(id) == false { + if let request = request, + firedRequests.contains(request.id) == false { - firedRequests.insert(id) + firedRequests.insert(request.id) weak var weakSelf = self - fetchVRMResponse(url).onComplete { response in + fetchVRMResponse(request.url).onComplete { response in guard let response = response, let `self` = weakSelf else { - weakSelf?.dispatch(VRMCore.adResponseFetchFailed(requestID: id)) + weakSelf?.dispatch(VRMCore.adResponseFetchFailed(requestID: request.id)) return } weakSelf?.dispatch(VRMCore.adResponse(transactionId: response.transactionId, diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMSelectFinalResultController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMSelectFinalResultController.swift new file mode 100644 index 0000000..32a8658 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMSelectFinalResultController.swift @@ -0,0 +1,57 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +final class VRMSelectFinalResultController { + + let dispatch: (PlayerCore.Action) -> Void + private var firedResults = Set() + + init(dispatch: @escaping (PlayerCore.Action) -> Void) { + self.dispatch = dispatch + } + + func process(with state: PlayerCore.State) { + process(processingResults: state.vrmProcessingResult.processedAds, + currentGroup: state.vrmCurrentGroup.currentGroup, + isMaxAdSearchTimeoutReached: state.vrmMaxAdSearchTimeout.isReached, + finalResult: state.vrmFinalResult.successResult, + topPriorityItem: state.vrmTopPriorityItem.item) + } + + func process(processingResults: Set, + currentGroup: VRMCore.Group?, + isMaxAdSearchTimeoutReached: Bool, + finalResult: VRMCore.Result?, + topPriorityItem: VRMCore.Item?) { + guard isMaxAdSearchTimeoutReached == false, + finalResult == nil, + let currentGroup = currentGroup else { + return + } + + func dispatchResult(result: VRMCore.Result) { + firedResults.insert(result) + dispatch(VRMCore.selectFinalResult(item: result.item, + inlineVAST: result.inlineVAST)) + } + + let filteredItems = processingResults.subtracting(firedResults) + if let topPriorityItem = topPriorityItem { + filteredItems + .first { $0.item == topPriorityItem } + .flatMap { result in + dispatchResult(result: result) + } + } else { + for item in currentGroup.items { + if let result = filteredItems.first(where: { $0.item == item }) { + dispatchResult(result: result) + break + } + } + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMTimeoutController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMTimeoutController.swift new file mode 100644 index 0000000..235abe0 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRM New Core/Controllers/VRMTimeoutController.swift @@ -0,0 +1,65 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +final class VRMTimeoutController { + + typealias OnFire = (()->()) + typealias TimerFactory = (@escaping OnFire) -> Cancellable + + private struct TimerHolder { + let soft: Cancellable + let hard: Cancellable + + func cancel() { + soft.cancel() + hard.cancel() + } + } + + let dispatch: (PlayerCore.Action) -> Void + let softTimeoutTimerFactory: TimerFactory + let hardTimeoutTimerFactory: TimerFactory + + private var timeoutTimerHolder: TimerHolder? + + private var startedGroups = Set() + private var currentFetchingQueue = [VRMCore.Item]() + + init(dispatch: @escaping (PlayerCore.Action) -> Void, + softTimeoutTimerFactory: @escaping TimerFactory, + hardTimeoutTimerFactory: @escaping TimerFactory) { + self.dispatch = dispatch + self.softTimeoutTimerFactory = softTimeoutTimerFactory + self.hardTimeoutTimerFactory = hardTimeoutTimerFactory + } + + func process(with state: PlayerCore.State) { + process(currentGroup: state.vrmCurrentGroup.currentGroup, + fetchingQueue: state.vrmFetchItemsQueue.candidates.map{$0.parentItem}) + } + + func process(currentGroup: VRMCore.Group?, + fetchingQueue: [VRMCore.Item]) { + guard let currentGroup = currentGroup else { + timeoutTimerHolder?.cancel() + currentFetchingQueue = [] + return + } + currentFetchingQueue = fetchingQueue + if startedGroups.contains(currentGroup.id) == false { + startedGroups.insert(currentGroup.id) + + let softTimeoutTimer = softTimeoutTimerFactory({ + self.dispatch(PlayerCore.VRMCore.softTimeoutReached()) + }) + let hardTimeoutTimer = hardTimeoutTimerFactory({ + self.dispatch(PlayerCore.VRMCore.hardTimeoutReached(items: self.currentFetchingQueue)) + }) + + timeoutTimerHolder = TimerHolder(soft: softTimeoutTimer, hard: hardTimeoutTimer) + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRMProvider.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRMProvider.swift index c55ed12..1338676 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRMProvider.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/VRMProvider.swift @@ -50,8 +50,8 @@ struct VRMProvider { throw Error.CannotExtractAdEngineFromJSON(json) } - enum Item { - struct MetaInfo { + enum Item: Hashable { + struct MetaInfo: Hashable { let engineType: String? let ruleId: String? let ruleCompanyId: String? diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/MP4AdCreativeController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/MP4AdCreativeController.swift new file mode 100644 index 0000000..b9d95fc --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/MP4AdCreativeController.swift @@ -0,0 +1,45 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +final class MP4AdCreativeController { + + let dispatch: (PlayerCore.Action) -> Void + private var processedCreatives = Set() + + init(dispatch: @escaping (PlayerCore.Action) -> Void) { + self.dispatch = dispatch + } + + + func process(state: State) { + process(adCreative: state.selectedAdCreative, + viewport: state.viewport.dimensions, + id: state.vrmRequestStatus.request?.id) + } + + func process(adCreative: PlayerCore.AdCreative, viewport: CGSize?, id: UUID?) { + guard case .mp4(let creatives) = adCreative, + processedCreatives.contains(adCreative) == false, + let dimensions = viewport, + let id = id else { return } + + processedCreatives.insert(adCreative) + + guard creatives.count > 1 else { + guard let creative = creatives.first else { fatalError("Failed to unwrap existing value") } + dispatch(PlayerCore.showMP4Ad(creative: creative, id: id)) + return + } + + creatives + .sorted { + let firstDiff = abs(dimensions.width * dimensions.height - CGFloat($0.width) * CGFloat($0.height)) + let secondDiff = abs(dimensions.width * dimensions.height - CGFloat($1.width) * CGFloat($1.height)) + return firstDiff < secondDiff } + .first + .flatMap { dispatch(PlayerCore.showMP4Ad(creative: $0, id: id)) } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/VPAIDAdCreativeController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/VPAIDAdCreativeController.swift new file mode 100644 index 0000000..0c662a1 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/advertisements/creative controllers/VPAIDAdCreativeController.swift @@ -0,0 +1,29 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +final class VPAIDAdCreativeController { + let dispatch: (PlayerCore.Action) -> Void + private var processedCreatives = Set() + + init(dispatch: @escaping (PlayerCore.Action) -> Void) { + self.dispatch = dispatch + } + + + func process(state: State) { + process(adCreative: state.selectedAdCreative, id: state.vrmRequestStatus.request?.id) + } + + func process(adCreative: PlayerCore.AdCreative, id: UUID?) { + guard case .vpaid(let creatives) = adCreative, + processedCreatives.contains(adCreative) == false, + let creative = creatives.first, + let id = id else { return } + + processedCreatives.insert(adCreative) + dispatch(PlayerCore.showVPAIDAd(creative: creative, id: id)) + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/config/Context.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/config/Context.swift index 8debbbd..474de71 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/config/Context.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/config/Context.swift @@ -53,7 +53,7 @@ extension VVPSDK { model: hardwareVersion, os: UIDevice.current.systemVersion), sdk: SDK.init( - version: "2.31", + version: VVPSDK.backendVersion, renderers: Renderer.Repository.shared.availableRenderers ), extra: [:]) diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController.swift index 03ebc4c..a622ae1 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController.swift @@ -214,13 +214,13 @@ public final class PlayerViewController: UIViewController { adRenderer?.viewController.view.isHidden = { guard case .ad = props.activeContext else { return true } guard let item = player?.store.props.playbackItem else { return true } - guard case .mp4 = item.adCreative else { return true } + guard item.mp4AdCreative != nil else { return true } return false }() vpaidViewController?.view.isHidden = { guard case .ad = props.activeContext else { return true } guard let item = player?.store.props.playbackItem else { return true } - guard case .vpaid = item.adCreative else { return true } + guard item.vpaidAdCreative != nil else { return true } return false }() } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Binding.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Binding.swift index 81b6b17..3bd3d9d 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Binding.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Binding.swift @@ -131,7 +131,7 @@ extension PlayerViewController { let time = item.ad.time.static func click() -> CommandWith { - guard case .mp4 = item.adCreative else { return .nop } + guard item.mp4AdCreative != nil else { return .nop } return item.isClickThroughToggled ? .nop : CommandWith { _ in player.activateClickThrough() } @@ -145,6 +145,12 @@ extension PlayerViewController { return "Current position \(currentTimeString) of \(durationString))" } + func adSkipState() -> AdVideoControls.Props.AdSkipState { + guard let adSkipOffset = item.adSkipOffset else { return .unavailable } + guard adSkipOffset > 0 else { return .available(CommandWith(action: player.skipAd)) } + return .awaiting(adSkipOffset) + } + return AdVideoControls.Props( mainAction: item.ad.isPlaying ? .pause(CommandWith(action: player.pause)) @@ -158,7 +164,8 @@ extension PlayerViewController { : nil, click: click(), isLoading: item.ad.isBuffering || item.ad.time.isUnknown, - airplayActiveViewHidden: item.ad.airPlay != .active + airplayActiveViewHidden: item.ad.airPlay != .active, + adSkipState: adSkipState() ) } @@ -225,7 +232,7 @@ extension PlayerViewController { } func adRenderer() -> Props.RendererProps? { - guard case .mp4(let creative) = item.adCreative, item.hasActiveAds else { return nil } + guard let creative = item.mp4AdCreative, item.hasActiveAds else { return nil } func rate() -> Float { return item.ad.isPlaying ? 1 : 0 } @@ -260,7 +267,7 @@ extension PlayerViewController { } func vpaidProps() -> VPAIDProps? { - guard case .vpaid(let creative) = item.adCreative, item.hasActiveAds else { return nil } + guard let creative = item.vpaidAdCreative, item.hasActiveAds else { return nil } func rate() -> Float { return item.ad.isPlaying ? 1 : 0 } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Clickthrough.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Clickthrough.swift index 03473af..94ee8d5 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Clickthrough.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/custom controls/PlayerViewController_Clickthrough.swift @@ -20,16 +20,16 @@ extension PlayerViewController { func process(props: Player.Properties) { guard let item = props.playbackItem else { return } guard item.isClickThroughToggled, !isClickthroughActive else { return } - switch item.adCreative { - case .mp4(let creative): + + if let creative = item.mp4AdCreative { isAdVPAID = false guard let url = creative.clickthrough else { return } showSafari(url, self) - case .vpaid(let creative): + } + if let creative = item.vpaidAdCreative { isAdVPAID = true guard let url = item.vpaidClickthrough ?? creative.clickthrough else { return safariFinishHandler(isAdVPAID) } showSafari(url, self) - case .none: return } isClickthroughActive = true } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/default controls/SystemPlayerViewControlller_Binding.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/default controls/SystemPlayerViewControlller_Binding.swift index efbbe8c..b666100 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/default controls/SystemPlayerViewControlller_Binding.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/default controls/SystemPlayerViewControlller_Binding.swift @@ -111,7 +111,7 @@ extension SystemPlayerViewController { return AVInterstitialTimeRange(timeRange: timeRange) }}) let adProps: PlayerProps? = { - guard case .mp4(let model) = videoProps.adCreative, videoProps.hasActiveAds else { return nil } + guard let model = videoProps.mp4AdCreative, videoProps.hasActiveAds else { return nil } return PlayerProps( url: model.url, diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/JavaScriptObserver.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/JavaScriptObserver.swift index 334407c..cd071b6 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/JavaScriptObserver.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/JavaScriptObserver.swift @@ -65,10 +65,10 @@ class AnalyticsObserver { deviceValue.setValue(sendURL, forProperty: "sendURL") guard let makeProcessor = - jsContext.globalObject.forProperty("onemobilesdk_analytics") else { + jsContext.globalObject.forProperty("VerizonVideoPartnerSDK_analytics") else { return report(Issue( type: "cannotExtractFunction", - metadata: ["name" : "onemobilesdk_analytics" |> json])) + metadata: ["name" : "VerizonVideoPartnerSDK_analytics" |> json])) } let processor = makeProcessor.call(withArguments: [context, deviceValue]) as JSValue diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/PropsMapping.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/PropsMapping.swift index 3c90d55..684e828 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/PropsMapping.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/dynamic analytics/PropsMapping.swift @@ -265,26 +265,18 @@ func json(for status: Player.Properties.PlaybackItem.Video.Status) -> JSøN { } } -func json(for adModel: AdCreative) -> JSøN { - let object: [String: JSøN] - switch adModel { - case .mp4(let model): - object = [ - "clickthrough": model.clickthrough |> json, - "maintainAspectRatio": model.maintainAspectRatio |> json, - "mediaFile": model.url |> json, - "scalable": model.scalable |> json, - "pixels": model.pixels |> json, - "id": model.id |> json] - case .vpaid(let model): - object = [ - "adParameters": model.adParameters |> json, - "mediaFile": model.url |> json, - "clickthrough": model.clickthrough |> json, - "pixels": model.pixels |> json, - "id": model.id |> json] - case .none: return .null - } +func json(for adModel: AdCreative.MP4?) -> JSøN { + guard let model = adModel else { return .null } + let object: [String: JSøN] = [ + "clickthrough": model.clickthrough |> json, + "maintainAspectRatio": model.maintainAspectRatio |> json, + "mediaFile": model.url |> json, + "width": model.width |> json, + "height": model.height |> json, + "scalable": model.scalable |> json, + "pixels": model.pixels |> json, + "id": model.id |> json + ] return object |> json } @@ -380,7 +372,7 @@ func json(for videoAngles: (horizontal: Float, vertical: Float)?) -> JSøN { func json(for available: Player.Properties.PlaybackItem.Available) -> JSøN { let object: [String: JSøN] = [ "ad": available.ad |> json, - "adModel": available.adCreative |> json, + "adModel": available.mp4AdCreative |> json, "content": available.content |> json, "hasActiveAds": available.hasActiveAds |> json, "isAdPlaying": available.isAdPlaying |> json, diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad max show time/AdMaxShowTimeDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad max show time/AdMaxShowTimeDetector.swift index e3da4c6..2d31973 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad max show time/AdMaxShowTimeDetector.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad max show time/AdMaxShowTimeDetector.swift @@ -10,7 +10,8 @@ extension Detectors { private var isReported = true func process(state: PlayerCore.State) -> Bool { - return process(adKill: state.adKill, sessionId: state.adVRMManager.request.id) + return process(adKill: state.adKill, + sessionId: state.adVRMManager.request.id ?? state.vrmRequestStatus.request?.id) } func process(adKill: AdKill, sessionId: UUID?) -> Bool { diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad skip/AdSkipDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad skip/AdSkipDetector.swift new file mode 100644 index 0000000..d9f81fd --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad skip/AdSkipDetector.swift @@ -0,0 +1,25 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms.hts reserved. + +import Foundation +import PlayerCore + +extension Detectors { + final class AdSkipDetector { + + private var processed = Set() + + func process(state: PlayerCore.State) -> Bool { + return process(isSkipped: state.adTracker == .skipped, + id: state.adVRMManager.request.id ?? state.vrmRequestStatus.request?.id) + } + + func process(isSkipped: Bool, id: UUID?) -> Bool { + guard let id = id, + processed.contains(id) == false, + isSkipped else { return false } + processed.insert(id) + return true + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad view time/AdViewTimeDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad view time/AdViewTimeDetector.swift index 27c0d47..1847746 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad view time/AdViewTimeDetector.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/ad view time/AdViewTimeDetector.swift @@ -10,7 +10,7 @@ extension Detectors { var isProcessed = false var timePlayed: Double = 0 - struct Result { + struct Result: Hashable { let duration: Double let time: Double let videoIndex: Int diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/AdPlaybackCycleDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/AdPlaybackCycleDetector.swift new file mode 100644 index 0000000..fe4b5c5 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/AdPlaybackCycleDetector.swift @@ -0,0 +1,28 @@ +// Copyright 2018, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation + +extension Detectors { + final class AdPlaybackCycle { + enum Result { case start, complete, nothing } + + var isStartRecorded = false + + func process(streamPlaying: Bool, isSuccessfullyCompleted: Bool, isForceFinished: Bool) -> Result { + guard isForceFinished == false else { + isStartRecorded = false + return .nothing + } + switch (isStartRecorded, streamPlaying, isSuccessfullyCompleted) { + case (false, true, false): + isStartRecorded = true + return .start + case (true, _, true): + isStartRecorded = false + return .complete + default: return .nothing + } + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/PlaybackCycleDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/ContentPlaybackCycleDetector.swift similarity index 90% rename from tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/PlaybackCycleDetector.swift rename to tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/ContentPlaybackCycleDetector.swift index c92cbbb..1187776 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/PlaybackCycleDetector.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/playback cycle/ContentPlaybackCycleDetector.swift @@ -4,7 +4,7 @@ import Foundation extension Detectors { - final class PlaybackCycle { + final class ContentPlaybackCycle { enum Result { case beginPlaying, endPlaying, nothing } var beginRecorded = false @@ -14,7 +14,7 @@ extension Detectors { case (false, true, false): beginRecorded = true return .beginPlaying - case (true, false, true): + case (true, _, true): beginRecorded = false return .endPlaying default: return .nothing diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/slot opportunity/SlotOpportunityDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/slot opportunity/SlotOpportunityDetector.swift index ac80c3e..7f66b82 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/slot opportunity/SlotOpportunityDetector.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/slot opportunity/SlotOpportunityDetector.swift @@ -8,26 +8,17 @@ extension Detectors { var playbackInitiated = false var sessionID: UUID? - func process(sessionID: UUID, - adPlaying: Bool, - adSkipped: Bool, - adFailed: Bool, - contentPlaying: Bool) -> Bool { + func process(sessionID: UUID, playbackStarted: Bool) -> Bool { if self.sessionID != sessionID { self.sessionID = sessionID playbackInitiated = false } - guard playbackInitiated == false else { return false } - switch (adSkipped, contentPlaying, adPlaying, adFailed) { - case (true, true, _, false), - (_, true, _, true), - (false, _, true, false): - playbackInitiated = true - return true - - default: return false - } + guard playbackInitiated == false, + playbackStarted else { return false } + + playbackInitiated = true + return true } } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineRequestDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineRequestDetector.swift new file mode 100644 index 0000000..b3fc44b --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineRequestDetector.swift @@ -0,0 +1,37 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +extension Detectors { + + final class AdEngineRequestDetector { + + struct Result { + let adInfo: Ad.Metrics.Info + let transactionId: String? + } + + private var processedItems = Set() + + func process(state: PlayerCore.State) -> [Result] { + return process(transactionId: state.vrmResponse?.transactionId, + scheduledItems: state.vrmScheduledItems.items) + } + + func process(transactionId: String?, + scheduledItems: [VRMCore.Item: Set]) -> [Result] { + guard scheduledItems.isEmpty == false else { return [] } + + return Set(scheduledItems.keys) + .subtracting(processedItems) + .compactMap { item in + processedItems.insert(item) + return Result(adInfo: Ad.Metrics.Info(metaInfo: item.metaInfo), + transactionId: transactionId) + } + } + } +} + diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineResponseDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineResponseDetector.swift new file mode 100644 index 0000000..8f1c863 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/AdEngineResponseDetector.swift @@ -0,0 +1,86 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +extension Detectors { + final class AdEngineResponseDetector { + + struct Result { + let metaInfo: Ad.Metrics.Info + let responseStatus: Ad.Metrics.ResponseStatus? + let responseTime: UInt? + let timeout: Int? + let fillType: Ad.Metrics.FillType? + } + + private var trackedItems = Set() + + func process(state: PlayerCore.State) -> [Result] { + let erroredItems = state.vrmRedirectError.erroredItems + .union(state.vrmFetchingError.erroredItems) + .union(state.vrmParsingError.erroredItems) + .union(state.vrmOtherError.erroredItems) + return process(timeoutBarrier: state.timeoutBarrier, + completedItems: Set(state.vrmProcessingResult.processedAds.map{$0.item}), + timeoutedTimes: state.vrmTimeoutError.erroredItems, + otherErrors: erroredItems, + responseTime: state.vrmItemResponseTime.timeRangeContainer, + timeoutStatus: state.vrmProcessingTimeout) + } + + func process(timeoutBarrier: Double, + completedItems: Set, + timeoutedTimes: Set, + otherErrors: Set, + responseTime: [VRMCore.Item: VRMItemResponseTime.TimeRange], + timeoutStatus: VRMProcessingTimeout) -> [Result] { + return completedItems + .union(timeoutedTimes) + .union(otherErrors) + .subtracting(trackedItems) + .map { item in + trackedItems.insert(item) + let responseStatus: Ad.Metrics.ResponseStatus = perform { + if completedItems.contains(item) { + return .yes + } else if timeoutedTimes.contains(item) { + return .timeout + } else if otherErrors.contains(item) { + return .no + } else { + fatalError("Imposible case. We are iterating over items from one of that set. Item should be present in one of them") + } + } + + let responseTime: UInt? = perform { + guard let timeRange = responseTime[item], + let finishAt = timeRange.finishAt else { + return nil + } + return UInt(finishAt.timeIntervalSince(timeRange.startAt) * 1000) + } + + let fillType: Ad.Metrics.FillType = perform { + switch timeoutStatus { + case .none: return .beforeSoft + case .soft: return .afterSoft + case .hard: return .afterHard + } + } + + let timeout: Int? = perform { + guard responseStatus == .timeout else { return nil } + return Int(timeoutBarrier * 1000) + } + + return Result(metaInfo: .init(metaInfo: item.metaInfo), + responseStatus: responseStatus, + responseTime: responseTime, + timeout: timeout, + fillType: fillType) + } + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/VRMRequestDetector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/VRMRequestDetector.swift new file mode 100644 index 0000000..58a22d9 --- /dev/null +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/detectors/vrm/VRMRequestDetector.swift @@ -0,0 +1,44 @@ +// Copyright 2019, Oath Inc. +// Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. + +import Foundation +import PlayerCore + +extension Detectors { + final class VRMRequestDetector { + struct Result { + let transactionId: String? + } + + enum ResponseStatus { + case noResponse + case response(transactionID: String?) + + init(response: VRMResponse?) { + switch response { + case .none: + self = .noResponse + case .some(let value): + self = .response(transactionID: value.transactionId) + } + } + } + + private var trackedRequests = Set() + + func process(with state: PlayerCore.State) -> Result? { + return process(with: state.vrmRequestStatus.request?.id, + vrmResponseStatus: ResponseStatus(response: state.vrmResponse)) + } + + func process(with requestId: UUID?, + vrmResponseStatus: ResponseStatus) -> Result? { + guard let requestId = requestId, + case let .response(transactionId) = vrmResponseStatus, + trackedRequests.contains(requestId) == false else { return nil } + + trackedRequests.insert(requestId) + return Result(transactionId: transactionId) + } + } +} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementContext.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementContext.swift index 853bfb5..dbdab23 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementContext.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementContext.swift @@ -88,7 +88,8 @@ enum OpenMeasurement { resume: omidVideoEvents.resume, pause: omidVideoEvents.pause, click: { omidVideoEvents.adUserInteraction(withType: .click) }, - volumeChange: omidVideoEvents.volumeChange) + volumeChange: omidVideoEvents.volumeChange, + skip: omidVideoEvents.skipped) return Output(adSession: adSession, adEvents: adEvents, videoEvents: videoEvents) } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementController.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementController.swift index 24db938..b081942 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementController.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/open measurement/OpenMeasurementController.swift @@ -41,15 +41,8 @@ extension OpenMeasurement { return } do { - let sdkVersion: String = { - guard let sdkInfo = Bundle(identifier: "com.Verizon.VideoPartnerSDK")?.infoDictionary else { - fatalError("Couldn't find sdk bundle") - } - return sdkInfo["CFBundleShortVersionString"] as! String - }() - let input = OpenMeasurement.Input(partnerBundleName: "Oath2", - partnerVersion: sdkVersion, + partnerVersion: VVPSDK.version, jsServiceScript: serviceScript, adVerifications: adVerifications) let output = try createOMContext(input) diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector.swift index 2afb7ef..45b0c5f 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector.swift @@ -20,13 +20,18 @@ extension TrackingPixels { let videoImpressionDetector = Detectors.VideoImpression() let vrmDetector = Detectors.VRMDetector() + let adRequestDetector = Detectors.VRMRequestDetector() + let adEngineRequestDetector = Detectors.AdEngineRequestDetector() + let adEngineResponseDetector = Detectors.AdEngineResponseDetector() + let adVideoLoadingDetector = Detectors.VideoLoading() let adQuartileDetector = Detectors.Quartile() let adUserActionsDetector = Detectors.UserActions() let adErrorDetector = Detectors.AdError() let adClickDetector = Detectors.AdClick() let adViewTimeDetector = Detectors.AdViewTime() - let adPlaybackCycleDetector = Detectors.PlaybackCycle() + let adSkipDetector = Detectors.AdSkipDetector() + let adPlaybackCycleDetector = Detectors.AdPlaybackCycle() let adSlotOpportunityDetector = Detectors.SlotOpportunity() let muteDetector = Detectors.Mute() let adMaxShowTimerDetector = Detectors.AdMaxShowTimeDetector() diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector_Ad.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector_Ad.swift index d1d0b98..7d7128c 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector_Ad.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/metrics/tracking pixels/TrackingPixelsConnector_Ad.swift @@ -26,6 +26,100 @@ extension TrackingPixels.Connector { } } + let transactionId: String? = perform { + let oldCoreTransactionId: String? = perform { + return state.transactionIDHolder?.transactionID + } + + let newCoreTransactionId: String? = perform { + return state.vrmResponse?.transactionId + } + + return newCoreTransactionId ?? oldCoreTransactionId + } + + let adId: String? = perform { + let oldCoreAdId: String? = perform { + return state.adInfoHolder?.adID + } + + let newCoreAdId: String? = perform { + guard let inline = state.vrmFinalResult.successResult ?? state.vrmFinalResult.failedResult, + let vrmResponse = state.vrmResponse else { return nil } + return inline.inlineVAST.id + } + + return newCoreAdId ?? oldCoreAdId + } + + let adMetricsInfo: Ad.Metrics.Info? = perform { + let oldCoreInfo: Ad.Metrics.Info? = perform { + guard let adInfo = state.adInfoHolder?.info else { return nil } + return info(from: adInfo) + } + + let newCoreInfo: Ad.Metrics.Info? = perform { + guard let inline = state.vrmFinalResult.successResult ?? state.vrmFinalResult.failedResult, + let vrmResponse = state.vrmResponse else { return nil } + return Ad.Metrics.Info(metaInfo: inline.item.metaInfo) + } + + return newCoreInfo ?? oldCoreInfo + } + + let slot: String? = perform { + let oldSlot: String? = perform { + switch state.adVRMManager.request.state { + case .finish(let finish): + return finish.slot + case .failed(let failed): + return failed.slot + case .skipped(let skipped): + return skipped.slot + default: return nil + } + } + + let newSlot: String? = perform { + return state.vrmResponse?.slot + } + + return newSlot ?? oldSlot + } + + let sessionID = state.adVRMManager.request.id ?? state.vrmRequestStatus.request?.id + + adRequestDetector.process(with: state).flatMap { result in + reporter.adVRMRequest(videoIndex: state.playlist.currentIndex, + type: adType, + sequenceNumber: state.vrmRequestStatus.requestsFired, + transactionId: result.transactionId, + videoViewUID: state.playbackSession.id.uuidString) + } + + adEngineRequestDetector.process(state: state).forEach { result in + reporter.adEngineRequest(videoIndex: state.playlist.currentIndex, + info: result.adInfo, + type: adType, + transactionId: result.transactionId, + videoViewUID: state.playbackSession.id.uuidString) + reporter.adServerRequest(info: result.adInfo, + videoIndex: state.playlist.currentIndex, + videoViewUID: state.playbackSession.id.uuidString) + } + + adEngineResponseDetector.process(state: state).forEach { result in + reporter.adEngineResponse(videoIndex: state.playlist.currentIndex, + info: result.metaInfo, + type: adType, + responseStatus: result.responseStatus, + responseTime: result.responseTime, + timeout: result.timeout, + fillType: result.fillType, + transactionId: transactionId, + videoViewUID: state.playbackSession.id.uuidString) + } + vrmDetector.process(state: state.adVRMManager).forEach { result in switch result { case .completeRequest(let complete): @@ -97,13 +191,10 @@ extension TrackingPixels.Connector { } func report(with function: (Payload) -> ()) { - guard - case .finish(let finish) = state.adVRMManager.request.state, - let completeItem = finish.completeItem else { return } - let info = VerizonVideoPartnerSDK.info(from: completeItem.info) - func pixels() -> PlayerCore.AdPixels { - if let pixels = state.adInfoHolder?.pixels { + if let pixels = state.adInfoHolder?.pixels ?? + state.vrmFinalResult.successResult?.inlineVAST.pixels ?? + state.vrmFinalResult.failedResult?.inlineVAST.pixels { return .init(impression: pixels.impression, error: pixels.error, clickTracking: pixels.clickTracking, @@ -122,15 +213,19 @@ extension TrackingPixels.Connector { acceptInvitationLinear: pixels.acceptInvitationLinear, close: pixels.close, closeLinear: pixels.closeLinear, - collapse: pixels.collapse) + collapse: pixels.collapse, + progress: pixels.progress) } else { fatalError("No pixels which are required to fire!") } } - function(Payload(info: info, - transactionID: completeItem.transactionID, - adID: completeItem.adId, - slot: finish.slot, + + guard let adMetricsInfo = adMetricsInfo else { return } + + function(Payload(info: adMetricsInfo, + transactionID: transactionId, + adID: adId, + slot: slot ?? "", pixels: pixels())) } @@ -138,40 +233,32 @@ extension TrackingPixels.Connector { let input = Detectors.AdViewTime.Input( duration: state.duration.ad?.seconds, currentTime: state.currentTime.ad.seconds, - isAdFinished: state.adTracker.isFinished, + isAdFinished: state.adTracker == .forceFinished, isSessionCompleted: state.playerSession.isCompleted, videoIndex: state.playlist.currentIndex, vvuid: state.playbackSession.id.uuidString) if let result = adViewTimeDetector.process(newInput: input) { - guard let holder = state.adInfoHolder else { return } - let info = VerizonVideoPartnerSDK.info(from: holder.info) + guard let adId = adId, + let adInfo = adMetricsInfo else { return } reporter.adViewTime(videoIndex: result.videoIndex, - info: info, + info: adInfo, type: adType, videoViewUID: result.vvuid, - adId: holder.adID, - transactionId: state.transactionIDHolder?.transactionID, + adId: adId, + transactionId: transactionId, adCurrentTime: result.time, adDuration: result.duration) } } /* Slot Opportunity Detector */ do { - if let adSessionID = state.adVRMManager.request.id { - let slotDetected = adSlotOpportunityDetector.process( - sessionID: adSessionID, - adPlaying: state.rate.adRate.stream, - adSkipped: perform { - guard case .skipped = state.adVRMManager.request.state else { return false } - return true }, - adFailed: perform { - guard case .failed = state.adVRMManager.request.state else { return false } - return true }, - contentPlaying: state.rate.contentRate.stream) - if slotDetected, let result = state.adVRMManager.request.result { + if let adSessionID = sessionID, + let slot = slot { + let playbackStarted = state.rate.adRate.stream || state.rate.contentRate.stream + if adSlotOpportunityDetector.process( sessionID: adSessionID, playbackStarted: playbackStarted) { reporter.slotOpportunity(videoIndex: state.playlist.currentIndex, - slot: result.slot, - transactionId: result.transactionID, + slot: slot, + transactionId: transactionId, width: state.viewport.dimensions?.width ?? 0, videoViewUID: state.playbackSession.id.uuidString, type: adType) @@ -204,28 +291,23 @@ extension TrackingPixels.Connector { /*Ad Max Show Time Detector*/ do { if adMaxShowTimerDetector.process(state: state) { - guard let holder = state.adInfoHolder else { return } - let info = VerizonVideoPartnerSDK.info(from: holder.info) - reporter.adEngineFlow(videoIndex: state.playlist.currentIndex, - info: info, - type: adType, - stage: .killed, - width: state.viewport.dimensions?.width, - height: state.viewport.dimensions?.height, - autoplay: model.isAutoplayEnabled, - transactionId: state.transactionIDHolder?.transactionID, - adId: holder.adID, - videoViewUID: state.playbackSession.id.uuidString) + report { payload in + engineFlow(stage: .killed, payload: payload) + } } } - - switch state.ad.adCreative { + /*Ad Skip Detector*/ do { + if adSkipDetector.process(state: state) { + report { payload in + reporter.sendBeacon(urls: payload.pixels.skip) + engineFlow(stage: .skipped, payload: payload) + openMeasurementVideoEvents?.skip() + } + } + } + switch state.selectedAdCreative { case .vpaid: - let events = vpaidEventsDetector.process(events: state.vpaid.events) - guard !events.isEmpty else { return } - guard let holder = state.adInfoHolder else { return } - let info = VerizonVideoPartnerSDK.info(from: holder.info) - events.forEach { + vpaidEventsDetector.process(events: state.vpaid.events).forEach { switch $0 { case .AdScriptLoaded: report { payload in @@ -308,24 +390,27 @@ extension TrackingPixels.Connector { engineFlow(stage: .finished, payload: payload) } case .AdError(let error): - reporter.sendBeacon(urls: holder.pixels.error) + report { payload in + reporter.sendBeacon(urls: payload.pixels.error) reporter.adEngineIssue(videoIndex: state.playlist.currentIndex, - info: info, + info: payload.info, type: adType, errorMessage: error.localizedDescription, stage: .load, - transactionId: state.transactionIDHolder?.transactionID, - adId: holder.adID, + transactionId: payload.transactionID, + adId: payload.adID, videoViewUID: state.playerSession.id.uuidString) + } default: break } } case .mp4: /* Playback Cycle Detector */ do { let result = adPlaybackCycleDetector.process(streamPlaying: state.rate.adRate.stream, - isFinished: state.adTracker.isFinished) + isSuccessfullyCompleted: state.adTracker == .successfullyCompleted, + isForceFinished: state.adTracker == .forceFinished) switch result { - case .beginPlaying: + case .start: report { payload in reporter.sendBeacon(urls: payload.pixels.start) engineFlow(stage: .started, payload: payload) @@ -337,21 +422,12 @@ extension TrackingPixels.Connector { let volume: Float = state.mute.player ? 0 : 1 openMeasurementVideoEvents?.start(CGFloat(duration), CGFloat(volume)) - case .endPlaying: - guard let holder = state.adInfoHolder else { return } - reporter.sendBeacon(urls: holder.pixels.complete) - openMeasurementVideoEvents?.complete() - let info = VerizonVideoPartnerSDK.info(from: holder.info) - reporter.adEngineFlow(videoIndex: state.playlist.currentIndex, - info: info, - type: adType, - stage: .finished, - width: state.viewport.dimensions?.width, - height: state.viewport.dimensions?.height, - autoplay: model.isAutoplayEnabled, - transactionId: state.transactionIDHolder?.transactionID, - adId: holder.adID, - videoViewUID: state.playbackSession.id.uuidString) + case .complete: + report { payload in + reporter.sendBeacon(urls: payload.pixels.complete) + openMeasurementVideoEvents?.complete() + engineFlow(stage: .finished, payload: payload) + } case .nothing: break } @@ -359,7 +435,7 @@ extension TrackingPixels.Connector { /* Mute/Unmute Detector */ do { let result = muteDetector.process(isMuted: state.mute.player, - isNotFinished: !state.adTracker.isFinished) + isNotFinished: state.adTracker == .unknown) report { payload in switch result { case .mute: @@ -400,7 +476,7 @@ extension TrackingPixels.Connector { }() let result = openMeasurementMuteDetector.process( isMuted: state.mute.player, - isNotFinished: !state.adTracker.isFinished, + isNotFinished: state.adTracker == .unknown, isOMActive: isOMActive) switch result { case .mute: @@ -413,7 +489,7 @@ extension TrackingPixels.Connector { /* Video Loading Detector */ do { let result = adVideoLoadingDetector.render(isLoaded: state.playbackStatus.ad == .ready, - sessionID: state.adVRMManager.request.id, + sessionID: sessionID, isPlaying: state.ad.currentAd.isPlaying) switch result { @@ -454,7 +530,7 @@ extension TrackingPixels.Connector { let result = adQuartileDetector.process(quartile: quartile, playing: state.rate.adRate.stream, - sessionId: state.adVRMManager.request.id, + sessionId: sessionID, isStatic: hasDuration) for metric in result { switch metric.newQuartile { @@ -489,23 +565,23 @@ extension TrackingPixels.Connector { } /* Ad Error Detector */ do { - adErrorDetector.process(id: state.adVRMManager.request.id, + adErrorDetector.process(id: sessionID , error: perform { guard case .errored(let error) = state.playbackStatus.ad else { return nil } return error }).map { (issue: Detectors.AdError.Result) in - guard let holder = state.adInfoHolder else { return } - let info = VerizonVideoPartnerSDK.info(from: holder.info) - reporter.sendBeacon(urls: holder.pixels.error) - - reporter.adEngineIssue(videoIndex: state.playlist.currentIndex, - info: info, - type: adType, - errorMessage: issue.error.localizedDescription, - stage: .load, - transactionId: state.transactionIDHolder?.transactionID, - adId: holder.adID, - videoViewUID: state.playerSession.id.uuidString) + report { payload in + reporter.sendBeacon(urls: payload.pixels.error) + + reporter.adEngineIssue(videoIndex: state.playlist.currentIndex, + info: payload.info, + type: adType, + errorMessage: issue.error.localizedDescription, + stage: .load, + transactionId: payload.transactionID, + adId: payload.adID, + videoViewUID: state.playerSession.id.uuidString) + } } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerInterface.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerInterface.swift index 1249380..9b7d270 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerInterface.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerInterface.swift @@ -211,8 +211,8 @@ extension Player { dispatch(action: PlayerCore.adEndPlayback()) } - func playAd(model: PlayerCore.Ad.VASTModel, isOpenMeasurementEnabled: Bool) { - dispatch(action: PlayerCore.playAd(model: model, id: UUID(), isOpenMeasurementEnabled: isOpenMeasurementEnabled)) + func playAd(model: PlayerCore.Ad.VASTModel) { + dispatch(action: PlayerCore.playAd(model: model, id: UUID())) } func adReady() { @@ -223,8 +223,11 @@ extension Player { dispatch(action: PlayerCore.adPlaybackIsFailed(error: error)) } - func skipAd(id: UUID) { - dispatch(action: PlayerCore.skipAd(id: id)) + func dropAd(id: UUID) { + dispatch(action: PlayerCore.dropAd(id: id)) + } + func skipAd() { + dispatch(action: PlayerCore.skipAd()) } } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties.swift index 7c74bdf..9fa4ff8 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties.swift @@ -64,7 +64,9 @@ extension Player { public let midrollPrefetchingOffset: Int public let playedAds: Set public let midrolls: [PlayerCore.Ad.Midroll] - let adCreative: PlayerCore.AdCreative + public let adSkipOffset: Int? + let mp4AdCreative: PlayerCore.AdCreative.MP4? + let vpaidAdCreative: PlayerCore.AdCreative.VPAID? public let isAdPlaying: Bool public let content: Video diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties_Init.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties_Init.swift index 3985d5d..5a67ae3 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties_Init.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/PlayerProperties_Init.swift @@ -86,6 +86,22 @@ extension Player.Properties { } } + let adSkipOffset: Int? = perform { + guard let duration = state.duration.ad?.seconds, + let skipOffset = state.vrmFinalResult.successResult?.inlineVAST.skipOffset else { return nil } + let currentTime = Int(state.currentTime.ad.seconds.rounded()) + switch skipOffset { + case .time(let value): + guard value < Int(duration) else { return nil } + return value - currentTime + case .percentage(let value): + let offset = Int(duration.rounded() / 100 * Double(value)) + guard offset < Int(duration) else { return nil } + return offset - currentTime + default: return nil + } + } + let content: PlaybackItem.Video = perform { let contentIsSeeking = state.interactiveSeeking.isSeekingInProgress let contentShouldPlay = @@ -198,7 +214,7 @@ extension Player.Properties { averageBitrate: state.averageBitrate.ad, time: time(from: state.duration.ad, currentTime: state.currentTime.ad, - isFinished: state.adTracker.isFinished), + isFinished: state.adTracker != .unknown), bufferInfo: .init(progress: 0, time: CMTime.zero, milliseconds: 0), pictureInPictureMode: .unsupported, controlsAnimationSupport: false, @@ -230,7 +246,9 @@ extension Player.Properties { midrolls: state.ad.midrolls.filter { state.ad.playedAds.contains($0.id) == false }, - adCreative: state.ad.adCreative, + adSkipOffset: adSkipOffset, + mp4AdCreative: state.ad.mp4AdCreative, + vpaidAdCreative: state.ad.vpaidAdCreative, isAdPlaying: isAdPlaying, content: content, ad: ad, @@ -269,7 +287,7 @@ extension Player.Properties { isSessionCompleted = state.playerSession.isCompleted isAutoplayEnabled = model.isAutoplayEnabled isPlaybackInitiated = state.playerSession.isStarted - adSessionID = state.adVRMManager.request.id ?? state.playbackSession.id + adSessionID = state.adVRMManager.request.id ?? state.vrmRequestStatus.request?.id ?? state.playbackSession.id vpaidDocument = model.vpaidSettings.document } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/Store.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/Store.swift index 745d4a7..994fdc2 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/Store.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/Store.swift @@ -24,7 +24,8 @@ final class Store { hasPrerollAds: hasPrerollAds, midrolls: model.midrolls[0], timeoutBarrier: model.adSettings.hardTimeout, - maxAdDuration: model.adSettings.maxDuration), + maxAdDuration: model.adSettings.maxDuration, + isOpenMeasurementEnabled: model.isOpenMeasurementAllowed), queue: queue) self.channel = Telemetry.Station.shared.makeChannel(for: self) } diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/VideoSelector.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/VideoSelector.swift index 1a807b8..5ead77c 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/VideoSelector.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/VideoSelector.swift @@ -1,7 +1,7 @@ // Copyright © 2018 Oath Inc // Licensed under the terms of the MIT License. See LICENSE.md file in project root for terms. -struct VideoSelector { +struct VideoSelector: Equatable { let index: Int init(index: Int, currentIndex: Int?, playlistCount: Int) throws { diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/observer/Observer.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/observer/Observer.swift index f048bd3..57741b1 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/observer/Observer.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/player/observer/Observer.swift @@ -36,7 +36,7 @@ class Observer: Hashable { queue callbackQueue: DispatchQueue) -> Update { /// Queue for protecting access to pending props - let queue = DispatchQueue(label: "com.onemobilesdk.player.observer") + let queue = DispatchQueue(label: "com.VerizonVideoPartnerSDK.player.observer") /// Intermediate storage for props var pending: Value? diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/telemetry/Metrics.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/telemetry/Metrics.swift index 49f563d..cc09616 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/telemetry/Metrics.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/telemetry/Metrics.swift @@ -159,7 +159,9 @@ extension Telemetry.Metrics { } func process(state: PlayerCore.State) { - guard let ruleId = state.adInfoHolder?.info.ruleId else { return } + let newCoreResult = state.vrmFinalResult.successResult ?? state.vrmFinalResult.failedResult + guard let ruleId = state.adInfoHolder?.info.ruleId ?? + newCoreResult?.item.metaInfo.ruleId else { return } process(isTimeoutReached: state.adKill == .adStartTimeout, for: ruleId) } func process(isTimeoutReached: Bool, for ruleId: String) { @@ -187,7 +189,9 @@ extension Telemetry.Metrics { } func process(state: PlayerCore.State) { - guard let ruleId = state.adInfoHolder?.info.ruleId else { return } + let newCoreResult = state.vrmFinalResult.successResult ?? state.vrmFinalResult.failedResult + guard let ruleId = state.adInfoHolder?.info.ruleId ?? + newCoreResult?.item.metaInfo.ruleId else { return } abuseEventReporter.process(abusedEvents: state.vpaidErrors.abusedEvents, forRuleId: ruleId) @@ -322,19 +326,20 @@ extension Telemetry.Metrics { } func process(state: PlayerCore.State) { - guard let ruleId = state.adInfoHolder?.info.ruleId else { return } - let isMeasurementStarted: Bool = { + let newCoreResult = state.vrmFinalResult.successResult ?? state.vrmFinalResult.failedResult + guard let ruleId = state.adInfoHolder?.info.ruleId ?? newCoreResult?.item.metaInfo.ruleId else { return } + let isMeasurementStarted: Bool = perform { guard case .active = state.openMeasurement else { return false } return true - }() - let measurementError: Error? = { + } + let measurementError: Error? = perform { guard case .failed(let error) = state.openMeasurement else { return nil } return error - }() - let fetchingError: Error? = { + } + let fetchingError: Error? = perform { guard case .failed(let error) = state.serviceScript else { return nil } return error - }() + } successInitializationReporter.process(isMeasurementStarted: isMeasurementStarted, forRuleId: ruleId) scriptFetchingFailedReporter.process(with: fetchingError) diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video detectors/Player_VideoEvents.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video detectors/Player_VideoEvents.swift index eca4408..1d27a31 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video detectors/Player_VideoEvents.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video detectors/Player_VideoEvents.swift @@ -56,7 +56,7 @@ public struct PlaybackEvents { } extension Player { - + /// Add video events /// - parameter playbackEvents: Playback events struct with callbacks. /// - returns: Dispose lambda to be called when events no longer needed. @@ -79,7 +79,7 @@ extension Player { playbackEvents.didPlayedQuartile(quartile) } } - let playbackCycle = Detectors.PlaybackCycle() + let playbackCycle = Detectors.ContentPlaybackCycle() func playbackCycleProcess(_ props: Player.Properties) { guard let item = props.playbackItem else { return } let result = playbackCycle.process( @@ -107,7 +107,7 @@ extension Player { case .nothing: break } } - + playbackCycleProcess(props) /* Video Actions Detector */ do { diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/VideoProviderResponse.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/VideoProviderResponse.swift index 9f72d82..e2dcec5 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/VideoProviderResponse.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/VideoProviderResponse.swift @@ -43,7 +43,9 @@ extension VideoProvider.Response { public let softTimeout: Double public let hardTimeout: Double public let startTimeout: Double + public let maxSearchTime: Double public let maxDuration: Int + public let maxVASTWrapperRedirectCount: Int } public enum Tracking { diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/dictionary parser/Dictionary+ParseJSON.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/dictionary parser/Dictionary+ParseJSON.swift index 0cdbe87..cc9b9d9 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/dictionary parser/Dictionary+ParseJSON.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/dictionary parser/Dictionary+ParseJSON.swift @@ -23,6 +23,18 @@ extension Parsable { } } +extension Parsable where Self == Double { + static func parse(from object: Any) throws -> Double { + if let doubleResult = object as? Double { + return doubleResult + } else if let intResult = object as? Int { + return Double(intResult) + } else { + throw ParseError.cannotConvert(value: object, toType: Self.self) + } + } +} + extension String: Parsable {} extension Int: Parsable {} extension Int64: Parsable {} diff --git a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/provider/VideoProviderParsing.swift b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/provider/VideoProviderParsing.swift index 0eb4ec4..e7e943f 100644 --- a/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/provider/VideoProviderParsing.swift +++ b/tutorials/sources/Pods/VerizonVideoPartnerSDK/sources/video provider/provider/VideoProviderParsing.swift @@ -52,15 +52,17 @@ extension VideoProvider.Parse { return try .init(isControlsAnimationEnabled: json.parse("isControlsAnimationEnabled"), isVPAIDAllowed: json.parse("isVPAIDAllowed"), isOpenMeasurementEnabled: json.parse("isOpenMeasurementEnabled"), - isNewVRMCoreEnabled: false) + isNewVRMCoreEnabled: json.parse("isNewVRMCoreEnabled")) } static func adSettings(from json: JSON) throws -> VideoProvider.Response.AdSettings { return try .init(prefetchingOffset: json.parse("prefetchingOffset"), softTimeout: json.parse("softTimeout"), hardTimeout: json.parse("hardTimeout"), - startTimeout: json.parse("startTimeout"), - maxDuration: json.parse("maxShowTime")) + startTimeout: json.parse("startTimeout"), + maxSearchTime: json.parse("maxSearchTime"), + maxDuration: json.parse("maxShowTime"), + maxVASTWrapperRedirectCount: json.parse("maxVASTWrapperRedirectCount")) } static func videoResponse(from json: JSON) throws -> VideoProvider.Response.VideoResponse { @@ -152,19 +154,19 @@ extension VideoProvider.Parse { static func brandedContentTracker(from json: JSON?) throws -> VideoProvider.Response.Video.BrandedContent.Tracker? { guard let json = json else { return nil } - + func urls(by key: String) throws -> [URL] { guard let urlCandidates = json.parse(key) as [String]? else { return [] } return try urlCandidates.map(url) } return try VideoProvider.Response.Video.BrandedContent.Tracker(impression: urls(by: "impression"), - view: urls(by: "view"), - click: urls(by: "click"), - quartile1: urls(by: "quartile1"), - quartile2: urls(by: "quartile2"), - quartile3: urls(by: "quartile3"), - quartile4: urls(by: "quartile4")) + view: urls(by: "view"), + click: urls(by: "click"), + quartile1: urls(by: "quartile1"), + quartile2: urls(by: "quartile2"), + quartile3: urls(by: "quartile3"), + quartile4: urls(by: "quartile4")) } static func brandedContent(from json: JSON?) throws -> VideoProvider.Response.Video.BrandedContent? { diff --git a/tutorials/sources/Tutorial.xcodeproj/project.pbxproj b/tutorials/sources/Tutorial.xcodeproj/project.pbxproj index e89f383..a1b085e 100644 --- a/tutorials/sources/Tutorial.xcodeproj/project.pbxproj +++ b/tutorials/sources/Tutorial.xcodeproj/project.pbxproj @@ -334,30 +334,16 @@ files = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/AdVideoControls.xib", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/AirPlayActiveView.xib", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/DefaultControlsViewController.xib", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SeekerControlPlayground.xib", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingCell.xib", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingHeaderView.xib", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/SettingsViewController.xib", - "${PODS_ROOT}/PlayerControls/PlayerControls/resources/PlayerUIControls.xcassets", + "${PODS_ROOT}/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh", + "${PODS_CONFIGURATION_BUILD_DIR}/PlayerControls/PlayerControls.bundle", ); name = "[CP] Copy Pods Resources"; outputPaths = ( - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AdVideoControls.nib", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AirPlayActiveView.nib", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/DefaultControlsViewController.nib", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SeekerControlPlayground.nib", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SettingCell.nib", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SettingHeaderView.nib", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SettingsViewController.nib", - "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Assets.car", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/PlayerControls.bundle", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Tutorial/Pods-Tutorial-resources.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */