Przeglądaj źródła

适配创作工具模式进退场时间

jsonwang 3 lat temu
rodzic
commit
1a031316c2

+ 6 - 2
BFFramework/Classes/PQGPUImage/akfilters/PQMovieFilter.swift

@@ -211,6 +211,10 @@ class PQMovieFilter: PQBaseFilter {
             startTimeStamp = currentTime
         }
         
+        if CMTimeGetSeconds(currentTime) >= stickerInfo!.timelineIn && CMTimeGetSeconds(currentTime) <= stickerInfo!.timelineOut {
+        
+     
+        
         //视频素材开始裁剪时间
         let stickerModelIn = CMTime(value: Int64((moveSticker?.model_in ?? 0)  * Float64(BASE_FILTER_TIMESCALE)), timescale: BASE_FILTER_TIMESCALE)
         
@@ -225,6 +229,7 @@ class PQMovieFilter: PQBaseFilter {
         readNextVideoFrame(showTimeStamp: showtimeStamp)
     
         framebufferIndex = framebufferIndex + 1
+        }
  
     }
 
@@ -346,7 +351,7 @@ class PQMovieFilter: PQBaseFilter {
         if CMTimeGetSeconds(targetTimeStamp) >= CMTimeGetSeconds(showTimeStamp)  && CMTimeGetSeconds(targetTimeStamp) != 0 {
 
         // 最后一帧的PTS > 要显示的目标时间 就不从解码器要数据,直接返回 view 不刷新 只有慢速时会调用
-        if CMTimeGetSeconds(targetTimeStamp) >= CMTimeGetSeconds(showTimeStamp) + (stickerInfo?.model_in ?? 0) && CMTimeGetSeconds(targetTimeStamp) != 0 {
+//        if CMTimeGetSeconds(targetTimeStamp) >= CMTimeGetSeconds(showTimeStamp) + (stickerInfo?.model_in ?? 0) && CMTimeGetSeconds(targetTimeStamp) != 0 {
             BFLog(2, message: "28797speedRate  目标显示时间 \(String(format: "%.6f", (CMTimeGetSeconds(showTimeStamp)))) 最后显示的时间 \(String(format: "%.6f", CMTimeGetSeconds(targetTimeStamp))) 裁剪开始时间:\(String(describing: moveSticker?.model_in)) speedRate is \(stickerInfo!.speedRate)")
             return
         }
@@ -431,7 +436,6 @@ class PQMovieFilter: PQBaseFilter {
                 }
             }
         }
-        }
     }
 
     /// 渲染帧数据