6

Ich verwende zwei Spieler ist MPMoviePlayerController und der andere ist . henever MPMoviePlayerController wird gesucht, es setzt die Zeit auf . Alles funktioniert gut. Bei der Konvertierung von MPMoviePlayerController aktuelle Zeit in CMTime ist es Abrundung ex: (wenn mpplayer Zeit 11,80132 ist es rundet auf 11).Konvertieren von NStimeInterval zu CMTime genau

Ohne Abrundung, wie können wir die Zeit auf setzen?

-Code für MpPlayer Zeit Abrufen und Senden zu AVPlayer Klasse

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

-Code in AVPlayer Klasse und Umwandlung Zeit 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 
} 
+6

die Antwort erhielt Wenn ich CMTime se ersetze ekingCM = CMTimeMake (seekTime, 1); mit diesem CMTime suchendeCM = CMTimeMakeWithSeconds (seekTime, 1000000); es funktioniert gut – kmReddy

+0

Sie sollten das als Antwort posten. – chakrit

+1

Gibt es eine Konstante für diese Nummer? – izzy

Antwort

4

Try this:

CMTime seekingCM = CMTimeMakeWithSeconds(playbackTime, 1000000);