|  | @@ -1100,23 +1100,26 @@ public class BFRecordScreenController: BFBaseViewController {
 | 
	
		
			
				|  |  |                              if mod.startCMTime.seconds >= model.startCMTime.seconds {
 | 
	
		
			
				|  |  |                                  mod.startCMTime = mod.startCMTime + duration
 | 
	
		
			
				|  |  |                                  mod.endCMTime = mod.endCMTime + duration
 | 
	
		
			
				|  |  | +                                
 | 
	
		
			
				|  |  | +                                //对应的字幕进行后移修改
 | 
	
		
			
				|  |  | +                                let titleList = recordItem.titleStickers.filter({ title in
 | 
	
		
			
				|  |  | +                                    title.recordId == mod.recordId
 | 
	
		
			
				|  |  | +                                })
 | 
	
		
			
				|  |  | +                                titleList.forEach { t in
 | 
	
		
			
				|  |  | +                                    t.timelineIn = t.timelineIn + duration
 | 
	
		
			
				|  |  | +                                    t.timelineOut = t.timelineOut + duration
 | 
	
		
			
				|  |  | +                                }
 | 
	
		
			
				|  |  | +                                //对应的变声进行后移修改
 | 
	
		
			
				|  |  | +                                let voiceList = recordItem.voiceChangeStickers.filter({ voice in
 | 
	
		
			
				|  |  | +                                    voice.recordId == mod.recordId
 | 
	
		
			
				|  |  | +                                })
 | 
	
		
			
				|  |  | +                                voiceList.forEach { mod in
 | 
	
		
			
				|  |  | +                                    mod.startCMTime = mod.startCMTime + duration
 | 
	
		
			
				|  |  | +                                    mod.endCMTime = mod.endCMTime + duration
 | 
	
		
			
				|  |  | +                                }
 | 
	
		
			
				|  |  |                              }
 | 
	
		
			
				|  |  |                          })
 | 
	
		
			
				|  |  | -                        
 | 
	
		
			
				|  |  | -                        recordItem.voiceChangeStickers.forEach({ mod in
 | 
	
		
			
				|  |  | -                            if mod.startCMTime.seconds >= model.startCMTime.seconds {
 | 
	
		
			
				|  |  | -                                mod.startCMTime = mod.startCMTime + duration
 | 
	
		
			
				|  |  | -                                mod.endCMTime = mod.endCMTime + duration
 | 
	
		
			
				|  |  | -                            }
 | 
	
		
			
				|  |  | -                        })
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -                        recordItem.titleStickers.forEach({ mod in
 | 
	
		
			
				|  |  | -                            if mod.timelineIn.seconds >= model.startCMTime.seconds {
 | 
	
		
			
				|  |  | -                                mod.timelineIn = mod.timelineIn + duration
 | 
	
		
			
				|  |  | -                                mod.timelineOut = mod.timelineOut + duration
 | 
	
		
			
				|  |  | -                            }
 | 
	
		
			
				|  |  | -                        })
 | 
	
		
			
				|  |  | -                        
 | 
	
		
			
				|  |  | +   
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  
 | 
	
	
		
			
				|  | @@ -1223,7 +1226,7 @@ public class BFRecordScreenController: BFBaseViewController {
 | 
	
		
			
				|  |  |                  let currShowSubtitle = recordItem.titleStickers[showSubtitleIndex]
 | 
	
		
			
				|  |  |                  
 | 
	
		
			
				|  |  |                  if CMTimeCompare(currShowSubtitle.timelineIn, time) <= 0, CMTimeCompare(currShowSubtitle.timelineOut, time) > 0 {
 | 
	
		
			
				|  |  | -                    // 已存在字幕
 | 
	
		
			
				|  |  | +                    // 已存在不同的字幕
 | 
	
		
			
				|  |  |                      if subtitleLabel.text != currShowSubtitle.text {
 | 
	
		
			
				|  |  |                          subtitleLabel.text = currShowSubtitle.text
 | 
	
		
			
				|  |  |                          setSubtitleStyle(settingModel: subtitleSettingView.subtitle.setting)
 | 
	
	
		
			
				|  | @@ -1243,6 +1246,7 @@ public class BFRecordScreenController: BFBaseViewController {
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              
 | 
	
		
			
				|  |  | +            BFLog(1, message: "test:\(findShowSubtitle?.text ?? "none")")
 | 
	
		
			
				|  |  |              if findShowSubtitle != nil, subtitleLabel.text != findShowSubtitle!.text {
 | 
	
		
			
				|  |  |                  subtitleLabel.text = findShowSubtitle!.text
 | 
	
		
			
				|  |  |                  setSubtitleStyle(settingModel: subtitleSettingView.subtitle.setting)
 | 
	
	
		
			
				|  | @@ -2146,9 +2150,9 @@ public class BFRecordScreenController: BFBaseViewController {
 | 
	
		
			
				|  |  |      func play() {
 | 
	
		
			
				|  |  |          //如果当前段有没有转完的发音人显示 Loadingview
 | 
	
		
			
				|  |  |          if(!voiceChangeStickerFinish(itemIndex: currItemModelIndex,isShowLoadView: true)){
 | 
	
		
			
				|  |  | -          
 | 
	
		
			
				|  |  |              return
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          BFLog(1, message: "开始播放 \(currentAssetProgress.seconds)")
 | 
	
		
			
				|  |  |          recorderManager?.voiceModel = nil
 | 
	
		
			
				|  |  |          events.append(WithDrawModel(type: 1, timestamp: currentAssetProgress, recordItem: rscurrentManager.recordItem!))
 | 
	
	
		
			
				|  | @@ -2715,6 +2719,8 @@ public extension BFRecordScreenController {
 | 
	
		
			
				|  |  |              recordStartPlayTime = currentAssetProgress
 | 
	
		
			
				|  |  |              currenStartPlayTime = CMTime.zero
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +        // 音
 | 
	
		
			
				|  |  |          playRecord(at: time, periodicTimeObserver: { [weak self] currentT, _ in
 | 
	
		
			
				|  |  |              
 | 
	
		
			
				|  |  |              guard let wself = self else { return }
 |