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