From f4c46a585290d8136819673dfff2df9ea5c5a330 Mon Sep 17 00:00:00 2001
From: 杨锴 <841720330@qq.com>
Date: 星期一, 04 十一月 2024 21:07:18 +0800
Subject: [PATCH] fix bug

---
 XQMuse/Root/Plans/PlanGuideVC.swift |   33 +++++++++++++++++++++++++++------
 1 files changed, 27 insertions(+), 6 deletions(-)

diff --git a/XQMuse/Root/Plans/PlanGuideVC.swift b/XQMuse/Root/Plans/PlanGuideVC.swift
index 43d3a42..5fd10aa 100644
--- a/XQMuse/Root/Plans/PlanGuideVC.swift
+++ b/XQMuse/Root/Plans/PlanGuideVC.swift
@@ -22,8 +22,6 @@
 				@IBOutlet weak var label_info: UILabel!
 				@IBOutlet weak var btn_custom: UIButton!
 
-    private let masterPlayer = AudioPlayer.getSharedInstance()
-
 				private lazy var player:AVPlayer = {
 								let bgPath = Bundle.main.url(forResource: "bg_movie", withExtension: "mov")
 								let p = AVPlayer(url: bgPath!)
@@ -31,17 +29,40 @@
 								return p
 				}()
 
+    private lazy var bgplayer:AVPlayer = {
+        let p = AVPlayer()
+        return p
+    }()
+
 				private lazy var playerLayer:AVPlayerLayer = {
 								let pLayer = AVPlayerLayer()
-								pLayer.videoGravity = .resize
+        pLayer.videoGravity = .resizeAspectFill
 								return pLayer
 				}()
 
 				override func viewDidLoad() {
 								super.viewDidLoad()
 
-         let tempModel = MeditationModel()
-        masterPlayer.playSceneAt(backgroundVoiceUrl)
+        Services.getPlan().subscribe(onNext: {[weak self]data in
+            if let url = data.data{
+                self?.bgplayer.replaceCurrentItem(with: AVPlayerItem(url: URL(string: url)!))
+                self?.bgplayer.play()
+            }
+        }).disposed(by: disposeBag)
+
+        self.bgplayer.addPeriodicTimeObserver(forInterval: CMTimeMake(value: 1, timescale: 1), queue: DispatchQueue.main) {[weak self] time in
+            guard let weakSelf = self else { return }
+
+            //当前正在播放的时间
+            let loadTime = CMTimeGetSeconds(time)
+            //视频总时间
+            let totalTime = CMTimeGetSeconds((weakSelf.bgplayer.currentItem?.duration)!)
+
+            if loadTime >= totalTime{
+                weakSelf.bgplayer.seek(to: CMTime.zero)
+                weakSelf.bgplayer.play()
+            }
+        }
 				}
 
 				override func viewWillAppear(_ animated: Bool) {
@@ -123,7 +144,7 @@
 				}
 
     deinit{
-        masterPlayer.clean()
+
     }
 }
 

--
Gitblit v1.7.1