小编kmR*_*ddy的帖子

准确地从NStimeInterval转换为CMTime

我正在使用两个玩家MPMoviePlayerController,另一个是AVPlayer.henever MPMoviePlayerController是seeked,它设置的时间AVPlayer.一切都很好.将转换MPMoviePlayerController当前时间转换CMTime为ex :(如果mpplayer时间为11.80132,它将四舍五入为11).

如果没有四舍五入,我们如何设定时间AVPlayer

获取mpplayer时间和发送到AVPlayer课堂的代码

[avplayerClass  setCurrentTime:[self.videoPlayer currentPlaybackTime]];
NSLog(@"CurrentTime:%f",[self.videoPlayer currentPlaybackTime]);//11.801345
Run Code Online (Sandbox Code Playgroud)

AVPlayer类中的代码并将时间转换为CMTime

-(void)setCurrentTime:(NSTimeInterval)seekTime
{
    CMTime seekingCM = CMTimeMake(seekTime, 1);
    [self.player seekToTime:seekingCM 
            toleranceBefore:kCMTimeZero 
             toleranceAfter:kCMTimePositiveInfinity];
    [self.player seekToTime:seekingCM];
    NSLog(@"Current time123ns%%%%%%:%f",CMTimeGetSeconds(seekingCM));//11
    NSLog(@"Current time123ns%%%%%%:%f",seekTime);//11.801345
}
Run Code Online (Sandbox Code Playgroud)

objective-c mpmovieplayercontroller nstimeinterval avplayer cmtime

7
推荐指数
1
解决办法
8077
查看次数