diff --git a/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate b/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate index ef92a4f..f32c4ac 100644 Binary files a/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate and b/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist index 751843d..648276b 100644 --- a/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ b/SwiftProject/SwiftProject.xcworkspace/xcuserdata/aaa.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -611,8 +611,8 @@ filePath = "SwiftProject/Project/Controller/RecordingVideo/CCSpatialVideoDisplayController/CCSpatialVideoDisplayController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "325" - endingLineNumber = "325" + startingLineNumber = "340" + endingLineNumber = "340" landmarkName = "viewDidAppear(_:)" landmarkType = "7"> @@ -627,8 +627,8 @@ filePath = "SwiftProject/Project/Controller/RecordingVideo/CCSpatialVideoDisplayController/CCSpatialVideoDisplayController.swift" startingColumnNumber = "9223372036854775807" endingColumnNumber = "9223372036854775807" - startingLineNumber = "611" - endingLineNumber = "611" + startingLineNumber = "627" + endingLineNumber = "627" landmarkName = "selectedSpatialType(selectedIndex:)" landmarkType = "7"> diff --git a/SwiftProject/SwiftProject/Project/Controller/RecordingVideo/CCSpatialVideoDisplayController/CCSpatialVideoDisplayController.swift b/SwiftProject/SwiftProject/Project/Controller/RecordingVideo/CCSpatialVideoDisplayController/CCSpatialVideoDisplayController.swift index 67793d2..7037847 100644 --- a/SwiftProject/SwiftProject/Project/Controller/RecordingVideo/CCSpatialVideoDisplayController/CCSpatialVideoDisplayController.swift +++ b/SwiftProject/SwiftProject/Project/Controller/RecordingVideo/CCSpatialVideoDisplayController/CCSpatialVideoDisplayController.swift @@ -235,23 +235,38 @@ class CCSpatialVideoDisplayController: BaseController { await self.loadVideoAssetReader() DispatchQueue.main.async { self.configureInfo() -// print("ccs viewdid load +++++++") // 检查当前是否已连接到 AirPlay 设备 self.checkAirPlayStatus() } } } + override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) { + print("播放状态status改变....") + if(keyPath == "status"){ + guard let ce = change else { + return + } + + let newVa = ce[NSKeyValueChangeKey.newKey] as! AVPlayer.Status + let oldVa = ce[NSKeyValueChangeKey.oldKey] as! AVPlayer.Status + if (newVa != oldVa) { + if newVa == .readyToPlay { + player?.play() + } + } + + + } + } + func configureInfo(){ print("getPlayerItem ========") -// let playerItem = self.getPlayerItem() - -// player = AVPlayer(playerItem: playerItem) player = AVPlayer() player?.allowsExternalPlayback = true player?.usesExternalPlaybackWhileExternalScreenIsActive = true - + player?.addObserver(self, forKeyPath: "status", context: nil) print("getPlayerItem >>>>>>>") self.view.backgroundColor = UIColor(hexString: "#060507") @@ -506,6 +521,7 @@ class CCSpatialVideoDisplayController: BaseController { releaseVideoComposition() assetReader?.cancelReading() NotificationCenter.default.removeObserver(self) + player?.removeObserver(self, forKeyPath: "status") } func releaseVideoComposition() {