소스 검색

1,暂停音乐库的播放 2, 选择音乐后回调统一方法

jsonwang 3 년 전
부모
커밋
c5a4542347
1개의 변경된 파일34개의 추가작업 그리고 17개의 파일을 삭제
  1. 34 17
      BFFramework/Classes/Stuckpoint/Controller/PQStuckPointEditerController.swift

+ 34 - 17
BFFramework/Classes/Stuckpoint/Controller/PQStuckPointEditerController.swift

@@ -96,7 +96,7 @@ class PQStuckPointEditerController: PQBaseViewController {
     /// 裁剪视图
     lazy var stuckPointCuttingView: PQStuckPointCuttingView = {
          
-        let stuckPointCuttingView = PQStuckPointCuttingView(frame: CGRect(x: 0, y: optionlineView.frame.minY - 85 - 28, width: view.frame.width, height: 85), duration: CGFloat(Float(stuckPointMusicData?.duration ?? "0") ?? 0), startTime: CGFloat(stuckPointMusicData?.startTime ?? 0), endTime: CGFloat(stuckPointMusicData?.endTime ?? 0))
+        let stuckPointCuttingView = PQStuckPointCuttingView(frame: CGRect(x: 0, y: optionlineView.frame.minY - 85 - 28, width: view.frame.width, height: 80), duration: CGFloat(Float(stuckPointMusicData?.duration ?? "0") ?? 0), startTime: CGFloat(stuckPointMusicData?.startTime ?? 0), endTime: CGFloat(stuckPointMusicData?.endTime ?? 0))
         /// 裁剪进度回调
         stuckPointCuttingView.videoRangeDidChanged = { [weak self] startTime, endTime in
             BFLog(message: "裁剪返回--startTime = \(startTime),endTime = \(endTime)")
@@ -199,21 +199,9 @@ class PQStuckPointEditerController: PQBaseViewController {
             self?.playerView.pause()
         }
         musicEditBGView.btnClickHandle = { [weak self] _, bgmData in
-            
-            //音乐面板点击了使用
-            self?.stuckPointMusicData = bgmData as? PQVoiceModel
-            //同步最新音乐数据
-            self?.synchroMusicInfoData()
-            
-            //更新音乐标题UI
-            let nameWidth: CGFloat = sizeWithText(text: "\(self?.stuckPointMusicData?.musicName ?? "")", font: UIFont.systemFont(ofSize: 13), size: CGSize(width: (self?.view.frame.width ?? 0) - ((cDefaultMargin * 6 + 16 * 2) * 2) - (25 + cDefaultMargin * 3), height: cDefaultMargin * 3)).width
-            
-            if nameWidth < cDefaultMargin * 4 {
-                self?.musicNameLab.text = " \(self?.stuckPointMusicData?.musicName ?? "") "
-            } else {
-                self?.musicNameLab.text = " \(self?.stuckPointMusicData?.musicName ?? "") "
-            }
-      
+            // 使用音乐
+            self?.userstuckPointMusic(musicData: bgmData as? PQVoiceModel)
+
         }
         
         return musicEditBGView
@@ -383,9 +371,36 @@ class PQStuckPointEditerController: PQBaseViewController {
         // 点击上报:返回按钮
         PQEventTrackViewModel.baseReportUpload(businessType: .bt_buttonClick, objectType: .ot_click_back, pageSource: .sp_stuck_previewSyncedUp, extParams: nil, remindmsg: "卡点视频数据上报-(点击上报:返回按钮)")
     }
+    
+    //使用选择音乐 调用情况:1,操作面板直接选择 ,2 搜索界面点击使用
+    func userstuckPointMusic(musicData: PQVoiceModel?) {
+        
+        //1,音乐面板点击了使用
+        stuckPointMusicData = musicData
+        //2,同步最新音乐数据
+        synchroMusicInfoData()
+        
+        //3,更新音乐标题UI
+        let nameWidth: CGFloat = sizeWithText(text: "\(stuckPointMusicData?.musicName ?? "")", font: UIFont.systemFont(ofSize: 13), size: CGSize(width: (view.frame.width ) - ((cDefaultMargin * 6 + 16 * 2) * 2) - (25 + cDefaultMargin * 3), height: cDefaultMargin * 3)).width
+        
+        if nameWidth < cDefaultMargin * 4 {
+            musicNameLab.text = " \(stuckPointMusicData?.musicName ?? "") "
+        } else {
+            musicNameLab.text = " \(stuckPointMusicData?.musicName ?? "") "
+        }
+    }
     //点击搜索音乐
     @objc func musicSearchBtnClick(sender: UIButton) {
+        let searchVC = PQEditMusicSearchController.init()
+        
+        searchVC.btnClickHandle = { [weak self] _, bgmData in
+            // 使用音乐
+            self?.userstuckPointMusic(musicData: bgmData as? PQVoiceModel)
+        }
         
+        let navigationController: UINavigationController = UINavigationController(rootViewController: searchVC)
+        navigationController.modalPresentationStyle = .fullScreen
+        present(navigationController, animated: true, completion: nil)
     }
     
     // 卡点编辑
@@ -450,6 +465,8 @@ class PQStuckPointEditerController: PQBaseViewController {
         UIApplication.shared.isIdleTimerDisabled = false
         musicNameLab.stop()
         playerView.pause()
+        
+        musicEditBGView.pausePlayer()
     }
 
     override func viewDidLoad() {
@@ -742,7 +759,7 @@ class PQStuckPointEditerController: PQBaseViewController {
             let progress = (currentTime - CMTimeGetSeconds(self?.playeTimeRange.start ?? .zero)) / CMTimeGetSeconds(self?.playeTimeRange.duration ?? .zero)
             BFLog(message: "\(currentTime) \(tatolTime) 显示播放器进度为: \(progress)")
 
-            self?.stuckPointCuttingView.videoCropView.updateProgress(progress: CGFloat(progress))
+//            self?.stuckPointCuttingView.videoCropView.updateProgress(progress: CGFloat(progress))
 
             if self?.synchroMarskView.superview != nil {
                 self?.synchroMarskView.removeMarskView()