浏览代码

创建 filter 时使用统一方法

jsonwang 3 年之前
父节点
当前提交
d680f45712
共有 1 个文件被更改,包括 168 次插入223 次删除
  1. 168 223
      BFFramework/Classes/Stuckpoint/Controller/PQStuckPointEditerController.swift

+ 168 - 223
BFFramework/Classes/Stuckpoint/Controller/PQStuckPointEditerController.swift

@@ -1002,221 +1002,178 @@ extension PQStuckPointEditerController {
         dealParameter(model: model)
         // 保存滤镜对象数据
         var stickers: Array = Array<PQEditVisionTrackMaterialsModel>.init()
-        if model == .createStickersModelPoint { //跳跃卡点
-            for section in sections {
-                if section.sectionType == "normal" {
-                 
-                    // 当用户上传视觉素材个数大于等于音乐选择区域节拍分割个数时,无需进行视频分割,只显示卡点数-1 个素材
-                    if section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials().count >= stuckPointMusicData!.rhythmSdata[0].pointTimes.count {
-                        for (index, sticker) in section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials().enumerated() {
-                            if index == stuckPointMusicData!.rhythmSdata[0].pointTimes.count {
-                                BFLog(message: "到达卡点数量")
-                                break
-                            }
-                            BFLog(message: "创建 filter start :\(sticker.timelineIn) end :\(sticker.timelineOut) type is \(sticker.type) \(sticker.locationPath)")
-                            sticker.timelineIn = Float64("\(finallyStuckPoints[index])") ?? 0.0
-                            sticker.timelineOut = Float64("\(finallyStuckPoints[index + 1])") ?? 0.0
-                            BFLog(message: "卡点 间隔 \(sticker.timelineIn - sticker.timelineOut)")
-                            sticker.generateDefaultValues()
-                            stickers.append(sticker)
-                        }
-
-                    } else {
-                       
-                        // 第一种情况:全是图片,图片回环播放
-                        if section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials(type: "video").count == 0, section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials(type: "image").count > 0 {
-                            for (index, point) in finallyStuckPoints.enumerated() {
-                                let sticker: PQEditVisionTrackMaterialsModel = section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials()[index % section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials().count]
-                                BFLog(message: "stickerlocationPath sticker : \(sticker.locationPath)")
-                                let stickerjson = sticker.toJSONString(prettyPrint: false)
-
-                                let deepCopySticker = Mapper<PQEditVisionTrackMaterialsModel>().map(JSONString: stickerjson!)
-                                if deepCopySticker!.type == StickerType.IMAGE.rawValue {
-                                    if index + 1 < finallyStuckPoints.count {
-                                        deepCopySticker!.timelineIn = Float64("\(finallyStuckPoints[index])") ?? 0.0
-                                        
-                                        deepCopySticker!.timelineOut = Float64("\(finallyStuckPoints[index + 1])") ?? 0.0
-                                        if deepCopySticker != nil {
-                                            deepCopySticker?.generateDefaultValues()
-                                            stickers.append(deepCopySticker!)
-                                        }
-                                    }
-                                }
-                            }
-                        } else {
-                            // 第二种情况:有视频要进行分割
-                            let clipFilters = clipVideoMerage(section: section, stuckPoints: finallyStuckPoints)
-                            for (index, point) in finallyStuckPoints.enumerated() {
-                                BFLog(message: "aaaaaindexindeindexxindexindexindex \(index) \(point)")
-                                if index + 1 < finallyStuckPoints.count, index < clipFilters.count {
-                                    BFLog(message: "bbbbbindexindeindexxindexindexindex \(index) \(point)")
-                                    let sticker: PQEditVisionTrackMaterialsModel = clipFilters[index]
-                                    sticker.timelineIn = Float64("\(finallyStuckPoints[index])") ?? 0.0
-                                 
-                                    sticker.timelineOut = Float64("\(finallyStuckPoints[index + 1])") ?? 0.0
-                                    // 卡点的时间 >  in out 值 这里就会出现鬼畜效果
-                                    let timelineInterval = sticker.timelineOut - sticker.timelineIn
-                                    let inOutInterval = sticker.out - sticker.model_in
-                                    if timelineInterval > inOutInterval {
-                                        BFLog(message: "实际要显示卡点时长\(timelineInterval) 素材裁剪时长:\(inOutInterval)")
-                                        sticker.out = sticker.model_in + timelineInterval
-
-                                        // 下面只是 LOG 方便查问题
-                                        let stickerInOut = sticker.out - sticker.model_in
-                                        let stickerTimelineInOut = sticker.timelineOut - sticker.timelineIn
-                                        if stickerInOut != stickerTimelineInOut {
-                                            BFLog(message: "sticker.timelineIn \(sticker.timelineIn) stickerTimelineInOut is\(stickerTimelineInOut) stickerInOut is\(stickerInOut) 相差\(stickerTimelineInOut - stickerInOut)")
-                                        }
-                                    }
-
-                                    // out > 素材的总时长in out 进行前移操作
-                                    let offsetAssetDuration = sticker.out - sticker.duration
-                                    if offsetAssetDuration > 0 {
-                                        sticker.model_in = sticker.model_in - offsetAssetDuration
-                                        sticker.out = sticker.out - offsetAssetDuration
-                                    }
-
-                                    BFLog(message: "index is \(index)分割后 创建 filter timelineIn :\(sticker.timelineIn) timelineOut :\(sticker.timelineOut)  in :\(sticker.model_in) out:\(sticker.out) type is \(sticker.type) 显示总时长为:\(sticker.timelineOut - sticker.timelineIn)  裁剪总时长\(sticker.out - sticker.model_in)")
-
-                                    stickers.append(sticker)
-                                }
-                            }
-                        }
-                    }
-                }
-            }
-        }else if (model == .createStickersModelOnlyMusic || model == .createStickersModelSpeed){ //仅音乐 和 跳跃卡点
-            for section in sections {
-                if section.sectionType == "normal" {
-
-                    BFLog(message: "stuckPoints count is \(finallyStuckPoints.count)")
-                    
-                    // 第一种情况:全是图片,图片回环播放
-                    if section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials(type: "video").count == 0, section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials(type: "image").count > 0 {
-                        for (index, point) in finallyStuckPoints.enumerated() {
-                            let sticker: PQEditVisionTrackMaterialsModel = section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials()[index % section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials().count]
-                            BFLog(message: "stickerlocationPath sticker : \(sticker.locationPath)")
-                            let stickerjson = sticker.toJSONString(prettyPrint: false)
-
-                            let deepCopySticker = Mapper<PQEditVisionTrackMaterialsModel>().map(JSONString: stickerjson!)
-                            if deepCopySticker!.type == StickerType.IMAGE.rawValue {
-                                if index + 1 < finallyStuckPoints.count {
-                                    deepCopySticker!.timelineIn = Float64("\(finallyStuckPoints[index])") ?? 0.0
-                                    
-                                    deepCopySticker!.timelineOut = Float64("\(finallyStuckPoints[index + 1])") ?? 0.0
-                                    if deepCopySticker != nil {
-                                        deepCopySticker?.generateDefaultValues()
-                                        stickers.append(deepCopySticker!)
-                                    }
-                                }
-                            }
-                        }
-                    }else{
-                        //一共裁剪的段数
-                        var totalClipNum:Int = 0
-                        for sticker in section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials() {
-                            if sticker.type == StickerType.VIDEO.rawValue {
-                                let asset: AVURLAsset = AVURLAsset(url: URL(fileURLWithPath: documensDirectory + sticker.locationPath), options: nil)
-
-                                var i:Int = 0
-                                //一个视频切的的段落
-                                var oneVideoClipNum:Int = 0
-
-                                var realUsedMusicDuration = 0.0
-                                while realUsedMusicDuration <= CMTimeGetSeconds(asset.duration) {
-                                    //快速段
-                                    let LA = maxSpeed * (finallyStuckPoints[i+1] - finallyStuckPoints[i])
-                                    realUsedMusicDuration = realUsedMusicDuration + Float64(LA)
-                                    if(realUsedMusicDuration > CMTimeGetSeconds(asset.duration)){ break}
-                                    oneVideoClipNum = oneVideoClipNum + 1
-                                    //慢速段
-                                    if(i + 2 >= finallyStuckPoints.count){
-                                        break
-                                    }
-                                    let LB = minSpeed * (finallyStuckPoints[i+2] - finallyStuckPoints[i+1])
-                                    realUsedMusicDuration = realUsedMusicDuration + Float64(LB)
-                                    oneVideoClipNum = oneVideoClipNum + 1
-                                    i = i + 1
-                                }
-                                BFLog(message: "单个视频\(sticker.locationPath)时长::\(CMTimeGetSeconds(asset.duration)) ,clipNum is:\(oneVideoClipNum)")
-                                var lastOutTime:Float64 = 0.0
-                                for clipindex in 0 ... oneVideoClipNum - 1 {
-                                    // deep copy sticker model 防止只有一个对象
-                                    let stickerjson = sticker.toJSONString(prettyPrint: false)
-                                    let deepCopySticker = Mapper<PQEditVisionTrackMaterialsModel>().map(JSONString: stickerjson!)
-                                    // 设置循环模式和适配模式
+        for section in sections {
+          
+            if section.sectionType == "normal" {
+                
+                // 第一种情况:全是图片,三种模式都进行图片回环播放
+                if section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials(type: "video").count == 0, section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials(type: "image").count > 0 {
+                    for (index, point) in finallyStuckPoints.enumerated() {
+                        let sticker: PQEditVisionTrackMaterialsModel = section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials()[index % section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials().count]
+                        BFLog(message: "stickerlocationPath sticker : \(sticker.locationPath)")
+                        let stickerjson = sticker.toJSONString(prettyPrint: false)
+
+                        let deepCopySticker = Mapper<PQEditVisionTrackMaterialsModel>().map(JSONString: stickerjson!)
+                        if deepCopySticker!.type == StickerType.IMAGE.rawValue {
+                            if index + 1 < finallyStuckPoints.count {
+                                deepCopySticker!.timelineIn = Float64("\(finallyStuckPoints[index])") ?? 0.0
+                                
+                                deepCopySticker!.timelineOut = Float64("\(finallyStuckPoints[index + 1])") ?? 0.0
+                                if deepCopySticker != nil {
                                     deepCopySticker?.generateDefaultValues()
-                                    //当前分段的速度
-                                    var tempSpeed:Float = 1.0
-                                    if model == .createStickersModelSpeed{
-                                        tempSpeed = (totalClipNum + clipindex) % 2 == 0 ? maxSpeed : minSpeed
-                                    }
-                              
-                                    if(totalClipNum + 1 + clipindex < finallyStuckPoints.count){
-                                        deepCopySticker?.speedRate = tempSpeed
-
-                                        //定义临时使用的变量
-                                        let tempModel_In = lastOutTime
-                                        let tempOut = lastOutTime + Float64(tempSpeed) * Float64(finallyStuckPoints[totalClipNum + 1 + clipindex] - finallyStuckPoints[totalClipNum + clipindex])
-
-                                        let tempTimelineIn = Float64(finallyStuckPoints[totalClipNum + clipindex])
-                                        let timelineOut = Float64(finallyStuckPoints[totalClipNum + 1 + clipindex])
-
-                                        //处理最后一点视频素材不够卡点时长 e.g. 0.3 卡点时长0.5
-                                        if(tempOut > realUsedMusicDuration){
-                                            BFLog(message: "最后一点视频素材不够卡点时长 ")
-                                            //最后一点素材时长
-                                            let lastAssetDuration = realUsedMusicDuration - tempOut
-                                            let pointDuration = timelineOut -  tempTimelineIn
-                                            let needSpeed = lastAssetDuration / pointDuration
-                                            //当前卡点段为快速
-                                            if(tempSpeed >= 1){
-                                                if(needSpeed > 0.4 * Double(tempSpeed)){
-                                                    deepCopySticker?.speedRate = tempSpeed
-                                                } else{
-                                                    continue
-                                                }
-                                            }else{//当前卡点段为慢速
-                                                if(needSpeed > 0.4 * Double(tempSpeed) && needSpeed > 0.2){
-                                                    deepCopySticker?.speedRate = tempSpeed
-                                                } else{
-                                                    continue
-                                                }
-                                            }
-
-                                        }
-
-                                        deepCopySticker?.model_in = tempModel_In
-                                        deepCopySticker?.out = tempOut
-
-                                        deepCopySticker?.timelineIn = tempTimelineIn
-                                        deepCopySticker?.timelineOut = timelineOut
-
-                                        lastOutTime =  deepCopySticker?.out ?? 0
-
-                                    }
-                                    BFLog(message: " 创建 sticker crilp is in \(String(format: "%.6f", deepCopySticker?.model_in ?? 0)) out  \(String(format: "%.6f", deepCopySticker?.out ?? 0)) ,分段素材时长:\(String(format: "%.6f", (deepCopySticker?.out ?? 0) - (deepCopySticker?.model_in ?? 0))) ,分段显示时长:\(String(format: "%.6f", (deepCopySticker?.timelineOut ?? 0) - (deepCopySticker?.timelineIn ?? 0))), 总时长\(CMTimeGetSeconds(asset.duration)) timelineIN: \(String(format: "%.6f", deepCopySticker?.timelineIn ?? 0)) timelineOUT:\(String(format: "%.6f", deepCopySticker?.timelineOut ?? 0)) speedRate:\(deepCopySticker?.speedRate ?? 0.0)")
-
-                                    if deepCopySticker != nil {
-                                        stickers.append(deepCopySticker!)
-                                    }
-
-                                }
-                                totalClipNum = totalClipNum + oneVideoClipNum - 1
-                            } else if sticker.type == StickerType.IMAGE.rawValue {
-                                if(totalClipNum + 1 >= finallyStuckPoints.count){
-                                    BFLog(message: "数据出现错误!!!查正")
-                                    break
+                                    stickers.append(deepCopySticker!)
                                 }
-                                sticker.generateDefaultValues()
-                                sticker.timelineIn = Float64(finallyStuckPoints[totalClipNum])
-                                sticker.timelineOut = Float64(finallyStuckPoints[totalClipNum + 1])
-                                totalClipNum = totalClipNum + 1
-                                stickers.append(sticker)
                             }
                         }
                     }
-                   
+                }else{//第二种情况:视频 + 图片情况、视频要分段+图片按卡点时长创建
+                    if model == .createStickersModelPoint { //跳跃卡点
+                        // 第二种情况:有视频要进行分割
+                       let clipFilters = clipVideoMerage(section: section, stuckPoints: finallyStuckPoints)
+                       for (index, point) in finallyStuckPoints.enumerated() {
+                           BFLog(message: "aaaaaindexindeindexxindexindexindex \(index) \(point)")
+                           if index + 1 < finallyStuckPoints.count, index < clipFilters.count {
+                               BFLog(message: "bbbbbindexindeindexxindexindexindex \(index) \(point)")
+                               let sticker: PQEditVisionTrackMaterialsModel = clipFilters[index]
+                               sticker.timelineIn = Float64("\(finallyStuckPoints[index])") ?? 0.0
+                            
+                               sticker.timelineOut = Float64("\(finallyStuckPoints[index + 1])") ?? 0.0
+                               // 卡点的时间 >  in out 值 这里就会出现鬼畜效果
+                               let timelineInterval = sticker.timelineOut - sticker.timelineIn
+                               let inOutInterval = sticker.out - sticker.model_in
+                               if timelineInterval > inOutInterval {
+                                   BFLog(message: "实际要显示卡点时长\(timelineInterval) 素材裁剪时长:\(inOutInterval)")
+                                   sticker.out = sticker.model_in + timelineInterval
+
+                                   // 下面只是 LOG 方便查问题
+                                   let stickerInOut = sticker.out - sticker.model_in
+                                   let stickerTimelineInOut = sticker.timelineOut - sticker.timelineIn
+                                   if stickerInOut != stickerTimelineInOut {
+                                       BFLog(message: "sticker.timelineIn \(sticker.timelineIn) stickerTimelineInOut is\(stickerTimelineInOut) stickerInOut is\(stickerInOut) 相差\(stickerTimelineInOut - stickerInOut)")
+                                   }
+                               }
+
+                               // out > 素材的总时长in out 进行前移操作
+                               let offsetAssetDuration = sticker.out - sticker.duration
+                               if offsetAssetDuration > 0 {
+                                   sticker.model_in = sticker.model_in - offsetAssetDuration
+                                   sticker.out = sticker.out - offsetAssetDuration
+                               }
+
+                               BFLog(message: "index is \(index)分割后 创建 filter timelineIn :\(sticker.timelineIn) timelineOut :\(sticker.timelineOut)  in :\(sticker.model_in) out:\(sticker.out) type is \(sticker.type) 显示总时长为:\(sticker.timelineOut - sticker.timelineIn)  裁剪总时长\(sticker.out - sticker.model_in)")
+
+                               stickers.append(sticker)
+                           }
+                       }
+                    }else if (model == .createStickersModelOnlyMusic || model == .createStickersModelSpeed){ //仅音乐 和 快慢速卡点
+                        BFLog(message: "stuckPoints count is \(finallyStuckPoints.count)")
+                                                      
+                                                
+                      //一共裁剪的段数
+                      var totalClipNum:Int = 0
+                      for sticker in section.sectionTimeline!.visionTrack!.getEnableVisionTrackMaterials() {
+                          if sticker.type == StickerType.VIDEO.rawValue {
+                              let asset: AVURLAsset = AVURLAsset(url: URL(fileURLWithPath: documensDirectory + sticker.locationPath), options: nil)
+
+                              var i:Int = 0
+                              //一个视频切的的段落
+                              var oneVideoClipNum:Int = 0
+
+                              var realUsedMusicDuration = 0.0
+                              while realUsedMusicDuration <= CMTimeGetSeconds(asset.duration) {
+                                  //快速段
+                                  let LA = maxSpeed * (finallyStuckPoints[i+1] - finallyStuckPoints[i])
+                                  realUsedMusicDuration = realUsedMusicDuration + Float64(LA)
+                                  if(realUsedMusicDuration > CMTimeGetSeconds(asset.duration)){ break}
+                                  oneVideoClipNum = oneVideoClipNum + 1
+                                  //慢速段
+                                  if(i + 2 >= finallyStuckPoints.count){
+                                      break
+                                  }
+                                  let LB = minSpeed * (finallyStuckPoints[i+2] - finallyStuckPoints[i+1])
+                                  realUsedMusicDuration = realUsedMusicDuration + Float64(LB)
+                                  oneVideoClipNum = oneVideoClipNum + 1
+                                  i = i + 1
+                              }
+                              BFLog(message: "单个视频\(sticker.locationPath)时长::\(CMTimeGetSeconds(asset.duration)) ,clipNum is:\(oneVideoClipNum)")
+                              var lastOutTime:Float64 = 0.0
+                              for clipindex in 0 ... oneVideoClipNum - 1 {
+                                  // deep copy sticker model 防止只有一个对象
+                                  let stickerjson = sticker.toJSONString(prettyPrint: false)
+                                  let deepCopySticker = Mapper<PQEditVisionTrackMaterialsModel>().map(JSONString: stickerjson!)
+                                  // 设置循环模式和适配模式
+                                  deepCopySticker?.generateDefaultValues()
+                                  //当前分段的速度
+                                  var tempSpeed:Float = 1.0
+                                  if model == .createStickersModelSpeed{
+                                      tempSpeed = (totalClipNum + clipindex) % 2 == 0 ? maxSpeed : minSpeed
+                                  }
+                            
+                                  if(totalClipNum + 1 + clipindex < finallyStuckPoints.count){
+                                      deepCopySticker?.speedRate = tempSpeed
+
+                                      //定义临时使用的变量
+                                      let tempModel_In = lastOutTime
+                                      let tempOut = lastOutTime + Float64(tempSpeed) * Float64(finallyStuckPoints[totalClipNum + 1 + clipindex] - finallyStuckPoints[totalClipNum + clipindex])
+
+                                      let tempTimelineIn = Float64(finallyStuckPoints[totalClipNum + clipindex])
+                                      let timelineOut = Float64(finallyStuckPoints[totalClipNum + 1 + clipindex])
+
+                                      //处理最后一点视频素材不够卡点时长 e.g. 0.3 卡点时长0.5
+                                      if(tempOut > realUsedMusicDuration){
+                                          BFLog(message: "最后一点视频素材不够卡点时长 ")
+                                          //最后一点素材时长
+                                          let lastAssetDuration = realUsedMusicDuration - tempOut
+                                          let pointDuration = timelineOut -  tempTimelineIn
+                                          let needSpeed = lastAssetDuration / pointDuration
+                                          //当前卡点段为快速
+                                          if(tempSpeed >= 1){
+                                              if(needSpeed > 0.4 * Double(tempSpeed)){
+                                                  deepCopySticker?.speedRate = tempSpeed
+                                              } else{
+                                                  continue
+                                              }
+                                          }else{//当前卡点段为慢速
+                                              if(needSpeed > 0.4 * Double(tempSpeed) && needSpeed > 0.2){
+                                                  deepCopySticker?.speedRate = tempSpeed
+                                              } else{
+                                                  continue
+                                              }
+                                          }
+
+                                      }
+
+                                      deepCopySticker?.model_in = tempModel_In
+                                      deepCopySticker?.out = tempOut
+
+                                      deepCopySticker?.timelineIn = tempTimelineIn
+                                      deepCopySticker?.timelineOut = timelineOut
+
+                                      lastOutTime =  deepCopySticker?.out ?? 0
+
+                                  }
+                                  BFLog(message: " 创建 sticker crilp is in \(String(format: "%.6f", deepCopySticker?.model_in ?? 0)) out  \(String(format: "%.6f", deepCopySticker?.out ?? 0)) ,分段素材时长:\(String(format: "%.6f", (deepCopySticker?.out ?? 0) - (deepCopySticker?.model_in ?? 0))) ,分段显示时长:\(String(format: "%.6f", (deepCopySticker?.timelineOut ?? 0) - (deepCopySticker?.timelineIn ?? 0))), 总时长\(CMTimeGetSeconds(asset.duration)) timelineIN: \(String(format: "%.6f", deepCopySticker?.timelineIn ?? 0)) timelineOUT:\(String(format: "%.6f", deepCopySticker?.timelineOut ?? 0)) speedRate:\(deepCopySticker?.speedRate ?? 0.0)")
+
+                                  if deepCopySticker != nil {
+                                      stickers.append(deepCopySticker!)
+                                  }
+
+                              }
+                              totalClipNum = totalClipNum + oneVideoClipNum - 1
+                          } else if sticker.type == StickerType.IMAGE.rawValue {
+                                      if(totalClipNum + 1 >= finallyStuckPoints.count){
+                                          BFLog(message: "数据出现错误!!!查正")
+                                          break
+                                      }
+                                      sticker.generateDefaultValues()
+                                      sticker.timelineIn = Float64(finallyStuckPoints[totalClipNum])
+                                      sticker.timelineOut = Float64(finallyStuckPoints[totalClipNum + 1])
+                                      totalClipNum = totalClipNum + 1
+                                      stickers.append(sticker)
+                                    }
+                      }
+                  }
+                 
                 }
             
             
@@ -1243,11 +1200,7 @@ extension PQStuckPointEditerController {
         }
 
         /*
-         一,快慢速模式下取卡点 1 3 5
-           快节奏为选中区域的所有点位,即0,1,2,3,4 5 6 7 8 9 10 ……
-           适中为每两个点位取一个,即0,3,6,9 12
-           慢节奏为每三个点位取一个,即0 5 10 15
-         
+         一,快慢速模式下取卡点 2 3 4
          二,跳跃卡点模式下根据不同速度 取卡点 1,2,3
            快节奏为选中区域的所有点位,即0,1,2,3,4 5 6 7 8 9 10 ……
            适中为每两个点位取一个,即0,2,4,6……
@@ -1278,14 +1231,6 @@ extension PQStuckPointEditerController {
         }
         stuckPoints.insert(Float(stuckPointMusicData?.startTime ?? 0), at: 0)
         
-
-//        if stuckPoints.last != nil {
-//            stuckPoints.removeLast()
-//        }
-        // 开始时间是服务器返回, 结果时间根据策略计算的
-//        stuckPoints.insert(Float(stuckPointMusicData?.startTime ?? 0), at: 0)
-//        stuckPoints.insert(Float(stuckPointMusicData?.endTime ?? 0), at: stuckPoints.count)
-
         for point in stuckPoints {
             BFLog(message: "有 start end 计算后的卡点数\(point)")
         }