| 
					
				 | 
			
			
				@@ -43,11 +43,11 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     var mStickers: [PQEditVisionTrackMaterialsModel]? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 播放器的开始和结束时间,1,刚进界面使用推荐的开始结束时间,2,用户修改起结点时修改 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     var playeTimeRange: CMTimeRange = CMTimeRange() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //add by ak 是否是再创作模式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    var isReCreate:Bool = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //最后一个选择的模式 BTN 用于还原选中状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    var lastEditModelBtn:UIButton? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // add by ak 是否是再创作模式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    var isReCreate: Bool = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 最后一个选择的模式 BTN 用于还原选中状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    var lastEditModelBtn: UIButton? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 下一步 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var nextBtn: UIButton = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let nextBtn = UIButton(type: .custom) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -72,12 +72,10 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         playerView.playerEmptyView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return playerView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// 节奏选择视图 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var sustomSwitchView: PQCustomSwitchView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let sustomSwitchView = PQCustomSwitchView(frame: CGRect(x:16, y: 0, width:180, height: 30), titles: ["快节奏", "适中", "慢节奏"], defaultIndex: stuckPointMusicData?.speed ?? 2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let sustomSwitchView = PQCustomSwitchView(frame: CGRect(x: 16, y: 0, width: 180, height: 30), titles: ["快节奏", "适中", "慢节奏"], defaultIndex: stuckPointMusicData?.speed ?? 2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sustomSwitchView.switchChangeHandle = { [weak self] sender in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // 改变速率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             self?.stuckPointMusicData?.speed = sender.tag 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -166,7 +164,7 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditRemindLab.text = "卡点模式" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return pointEditRemindLab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// 卡点模式标题 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var speedTitleLab: UILabel = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let speedTitleLab = UILabel() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -177,16 +175,15 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedTitleLab.text = "节奏变化" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return speedTitleLab 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// 卡点模式下方操作区背景 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var pointEditBGView: UIView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let pointEditBGView = UIView.init() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let pointEditBGView = UIView() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.backgroundColor = .clear 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return pointEditBGView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //卡点编辑 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 卡点编辑 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var pointEditerBtn: UIButton = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let pointEdterBtn = UIButton(type: .custom) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEdterBtn.setImage(UIImage().BF_Image(named: "pointEditerBtn_n"), for: .normal) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -196,8 +193,8 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEdterBtn.adjustsImageWhenHighlighted = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return pointEdterBtn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //音乐编辑 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 音乐编辑 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var musicEditerBtn: UIButton = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let musicEditerBtn = UIButton(type: .custom) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         musicEditerBtn.setImage(UIImage().BF_Image(named: "musicEditerBtn_n"), for: .normal) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -206,14 +203,14 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         musicEditerBtn.adjustsImageWhenHighlighted = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return musicEditerBtn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //快慢速卡点模式 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 快慢速卡点模式 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var speedStuckBtn: UIButton = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let speedStuckBtn = UIButton(type: .custom) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedStuckBtn.setBackgroundImage(UIImage().BF_Image(named: "speedstuck_n"), for: .normal) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedStuckBtn.setBackgroundImage(UIImage().BF_Image(named: "speedstuck_h"), for: .selected) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedStuckBtn.addTarget(self, action: #selector(editModelClick(sender:)), for: .touchUpInside) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedStuckBtn.isSelected = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lastEditModelBtn = speedStuckBtn 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -222,7 +219,7 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return speedStuckBtn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //跳转卡点模式 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 跳转卡点模式 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var jumpPointBtn: UIButton = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let jumpPointBtn = UIButton(type: .custom) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         jumpPointBtn.setImage(UIImage().BF_Image(named: "jumpPoint_n"), for: .normal) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -232,8 +229,8 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         jumpPointBtn.adjustsImageWhenHighlighted = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return jumpPointBtn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //仅配乐模式 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 仅配乐模式 btn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var onlyMusicBtn: UIButton = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let onlyMusicBtn = UIButton(type: .custom) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         onlyMusicBtn.setImage(UIImage().BF_Image(named: "onlyMusic_n"), for: .normal) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -243,49 +240,46 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         onlyMusicBtn.adjustsImageWhenHighlighted = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return onlyMusicBtn 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //编辑模式的指示线 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    lazy  var editModelLineView: UIView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let editModelLineView = UIView.init() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 编辑模式的指示线 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    lazy var editModelLineView: UIView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let editModelLineView = UIView() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         editModelLineView.backgroundColor = UIColor.hexColor(hexadecimal: "#EFEFEF") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return editModelLineView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //操作面板上的分割线 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    lazy  var optionlineView: UIView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let optionlineView = UIView.init() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 操作面板上的分割线 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    lazy var optionlineView: UIView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let optionlineView = UIView() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         optionlineView.backgroundColor = UIColor.hexColor(hexadecimal: "#EFEFEF") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return optionlineView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //固定速度 UI 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    lazy var speedSettingView:PQSpeedSettingView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let speedSettingView = PQSpeedSettingView.init() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 固定速度 UI 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    lazy var speedSettingView: PQSpeedSettingView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let speedSettingView = PQSpeedSettingView() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedSettingView.backgroundColor = .clear 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         speedSettingView.viewType = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        speedSettingView.selectSpeedCallBack = { [weak self] maxSpeed,minSpeed in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        speedSettingView.selectSpeedCallBack = { [weak self] maxSpeed, minSpeed in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             BFLog(message: "maxSpeed is\(maxSpeed) minSpeed \(minSpeed)") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(maxSpeed == 0 && minSpeed == 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if maxSpeed == 0 && minSpeed == 0 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 self?.customSpeedSettingView.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 self?.customSpeedSettingView.isJumpSpeedModel = speedSettingView.viewType == 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return speedSettingView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //自定义速度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    lazy var customSpeedSettingView:PQCustomSpeedSettingView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let customSpeedSettingView = PQCustomSpeedSettingView.init(frame: CGRect(x: 0, y: cScreenHeigth - 354, width: cScreenWidth, height: 354)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 自定义速度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    lazy var customSpeedSettingView: PQCustomSpeedSettingView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let customSpeedSettingView = PQCustomSpeedSettingView(frame: CGRect(x: 0, y: cScreenHeigth - 354, width: cScreenWidth, height: 354)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         customSpeedSettingView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         customSpeedSettingView.isJumpSpeedModel = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return customSpeedSettingView 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /// 音乐标题 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     lazy var musicNameView: UIView = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let musicNameView = UIView() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -350,39 +344,37 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 点击上报:返回按钮 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         PQEventTrackViewModel.baseReportUpload(businessType: .bt_buttonClick, objectType: .ot_click_back, pageSource: .sp_stuck_previewSyncedUp, extParams: nil, remindmsg: "卡点视频数据上报-(点击上报:返回按钮)") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //卡点编辑 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 卡点编辑 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @objc func pointEditerBtnClick(sender: UIButton) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(sender.isSelected){return} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if sender.isSelected { return } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sender.isSelected = !sender.isSelected 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         musicEditerBtn.isSelected = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //音乐编辑 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 音乐编辑 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @objc func musicEditerBtnClick(sender: UIButton) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(sender.isSelected){return} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if sender.isSelected { return } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sender.isSelected = !sender.isSelected 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditerBtn.isSelected = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    //三种模式修改 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    @objc func editModelClick(sender:UIButton){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(sender.isSelected){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-           
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            BFLog(message:"已经是选中状态") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 三种模式修改 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @objc func editModelClick(sender: UIButton) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if sender.isSelected { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            BFLog(message: "已经是选中状态") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lastEditModelBtn?.isSelected = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sender.isSelected = !sender.isSelected 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         lastEditModelBtn = sender 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         BFLog(message: "sender tag is \(sender.tag)") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //1 ui 调整 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(sender.tag == 1 || sender.tag == 2){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 1 ui 调整 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if sender.tag == 1 || sender.tag == 2 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             speedSettingView.viewType = sender.tag 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             customSpeedSettingView.isJumpSpeedModel = speedSettingView.viewType == 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             speedSettingView.snp.remakeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 make.left.equalToSuperview().offset(16) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 make.right.equalToSuperview() 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -393,21 +385,17 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             speedTitleLab.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             sustomSwitchView.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             editModelLineView.isHidden = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             speedSettingView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             speedTitleLab.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             sustomSwitchView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             editModelLineView.isHidden = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        //2 不同状的业务逻辑 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(sender.tag == 1){// 快慢速 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }else if(sender.tag == 2){//跳跃卡点 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        }else if(sender.tag == 3){//仅音乐 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-             
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 2 不同状的业务逻辑 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if sender.tag == 1 { // 快慢速 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else if sender.tag == 2 { // 跳跃卡点 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else if sender.tag == 3 { // 仅音乐 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     override func viewWillDisappear(_ animated: Bool) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -422,7 +410,7 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         leftButton(image: "icon_detail_back", tintColor: PQBFConfig.shared.styleTitleColor) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         navHeadImageView?.addSubview(nextBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         navHeadImageView?.addSubview(musicNameView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 添加子视图 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         addSubViews() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 导出相册视频 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -442,11 +430,11 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(playerView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(pointEditBGView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(optionlineView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(pointEditerBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(musicEditerBtn) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         view.addSubview(customSpeedSettingView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(pointEditRemindLab) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(speedTitleLab) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(speedStuckBtn) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -456,14 +444,14 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(speedSettingView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditBGView.addSubview(sustomSwitchView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //        view.addSubview(stuckPointCuttingView) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pointEditerBtn.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.left.equalToSuperview().offset(100) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.bottom.equalToSuperview().offset(-(14 + cAKSafeAreaHeight)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(24) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(24) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         musicEditerBtn.snp.makeConstraints { make in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.right.equalToSuperview().offset(-100) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.top.equalTo(pointEditerBtn.snp_top) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -528,7 +516,6 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.height.equalTo(30) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             make.width.equalTo(180) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @objc func nextBtnClick(sender _: UIButton) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -627,7 +614,7 @@ class PQStuckPointEditerController: PQBaseViewController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             videoSize = CGSize(width: minSlider, height: maxSlider) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let maxValue = max(videoSize.width , videoSize.height ?? 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let maxValue = max(videoSize.width, videoSize.height ?? 0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if maxValue > 1920 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             let maxRation = 1920 / maxValue 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -799,8 +786,8 @@ extension PQStuckPointEditerController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                      - 快节奏为选中区域的所有点位,即0,1,2,3,4 5 6 7 8 9 10 …… 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                      - 适中为每两个点位取一个,即0,3,6,9 12 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                      - 慢节奏为每三个点位取一个,即0 5 10 15 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                      慢节奏要做特殊处理 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                       5d or L/1.23 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     慢节奏要做特殊处理 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     5d or L/1.23 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                      (*当输入素材为L ∈(0-10.5]s 时,判断与5d之间的关系,若L/1.2≥5d,则取5d;若L/1.2<5d,则取L/1.2) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // 跳跃卡点模式下根据不同速度 取卡点 1,2,3 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1028,12 +1015,12 @@ extension PQStuckPointEditerController { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     sticker.model_in = Double(index * spit) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     sticker.out = sticker.model_in + Double(spit) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                                    let spit: Int = 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                                    sticker.timelineIn = 57.5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                                    sticker.timelineOut = sticker.timelineIn + 24 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                                    sticker.speedRate = index % 2 == 0 ? 0.1 : 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-////                                    sticker.speedRate = 0.1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    ////                                    sticker.speedRate = 0.1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                                    sticker.model_in = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 //                                    sticker.out = sticker.model_in + 24 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |