@@ -554,38 +554,44 @@ - (float)getCurrentTime
554
554
555
555
- (void )setCurrentTime : (float )currentTime
556
556
{
557
- [self setSeek: currentTime];
557
+
558
+ [self setSeek: currentTime toleranceInMS: 1000 ];
559
+
558
560
}
559
561
560
- - (void )setSeek : (float )seekTime
562
+ - (void )setCurrentTime : (float )currentTime toleranceInMS : ( int ) toleranceInMS
561
563
{
562
- int timeScale = 10000 ;
564
+ [self setSeek: currentTime toleranceInMS: toleranceInMS];
565
+
566
+ }
563
567
568
+ - (void )setSeek : (float )seekTime toleranceMS : (int )toleranceMS
569
+ {
570
+ int timeScale = 1000 ;
564
571
AVPlayerItem *item = _player.currentItem ;
565
572
if (item && item.status == AVPlayerItemStatusReadyToPlay) {
566
573
// TODO check loadedTimeRanges
567
574
568
575
CMTime cmSeekTime = CMTimeMakeWithSeconds (seekTime, timeScale);
569
576
CMTime current = item.currentTime ;
570
577
// TODO figure out a good tolerance level
578
+ CMTime tolerance = CMTimeMake (toleranceMS, timeScale);
571
579
BOOL wasPaused = _paused;
572
-
573
580
if (CMTimeCompare (current, cmSeekTime) != 0 ) {
574
581
if (!wasPaused) [_player pause ];
575
- [_player seekToTime: cmSeekTime toleranceBefore: kCMTimeZero toleranceAfter: kCMTimeZero completionHandler: ^(BOOL finished) {
582
+ [_player seekToTime: cmSeekTime toleranceBefore: tolerance toleranceAfter: tolerance completionHandler: ^(BOOL finished) {
576
583
if (!_timeObserver) {
577
584
[self addPlayerTimeObserver ];
578
585
}
579
586
if (!wasPaused) {
580
587
[self setPaused: false ];
581
588
}
582
589
if (self.onVideoSeek ) {
583
- self.onVideoSeek (@{@" currentTime" : [NSNumber numberWithFloat: CMTimeGetSeconds (item.currentTime)],
584
- @" seekTime" : [NSNumber numberWithFloat: seekTime],
585
- @" target" : self.reactTag });
590
+ self.onVideoSeek (@{@" currentTime" : [NSNumber numberWithFloat: CMTimeGetSeconds (item.currentTime)],
591
+ @" seekTime" : [NSNumber numberWithFloat: seekTime],
592
+ @" target" : self.reactTag });
586
593
}
587
594
}];
588
-
589
595
_pendingSeek = false ;
590
596
}
591
597
0 commit comments