Skip to content

Commit 327a25b

Browse files
committed
add optional variable to setCurrentTime method
1 parent 8b3845a commit 327a25b

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

ios/RCTVideo.m

+15-9
Original file line numberDiff line numberDiff line change
@@ -554,38 +554,44 @@ - (float)getCurrentTime
554554

555555
- (void)setCurrentTime:(float)currentTime
556556
{
557-
[self setSeek: currentTime];
557+
558+
[self setSeek:currentTime toleranceInMS:1000];
559+
558560
}
559561

560-
- (void)setSeek:(float)seekTime
562+
- (void)setCurrentTime:(float)currentTime toleranceInMS:(int)toleranceInMS
561563
{
562-
int timeScale = 10000;
564+
[self setSeek:currentTime toleranceInMS:toleranceInMS];
565+
566+
}
563567

568+
- (void)setSeek:(float)seekTime toleranceMS:(int)toleranceMS
569+
{
570+
int timeScale = 1000;
564571
AVPlayerItem *item = _player.currentItem;
565572
if (item && item.status == AVPlayerItemStatusReadyToPlay) {
566573
// TODO check loadedTimeRanges
567574

568575
CMTime cmSeekTime = CMTimeMakeWithSeconds(seekTime, timeScale);
569576
CMTime current = item.currentTime;
570577
// TODO figure out a good tolerance level
578+
CMTime tolerance = CMTimeMake(toleranceMS, timeScale);
571579
BOOL wasPaused = _paused;
572-
573580
if (CMTimeCompare(current, cmSeekTime) != 0) {
574581
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) {
576583
if (!_timeObserver) {
577584
[self addPlayerTimeObserver];
578585
}
579586
if (!wasPaused) {
580587
[self setPaused:false];
581588
}
582589
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});
586593
}
587594
}];
588-
589595
_pendingSeek = false;
590596
}
591597

0 commit comments

Comments
 (0)