6

Sto usando due lettori uno è MPMoviePlayerController e l'altro è AVPlayer. henever MPMoviePlayerController viene cercato, imposta l'ora su AVPlayer. Tutto funziona bene. Durante la conversione dell'ora corrente MPMoviePlayerController in CMTime, l'arrotondamento viene eseguito ex: (se il tempo di mpplayer è 11.80132 è arrotondato a 11).Convertire da NStimeInterval a CMTime con precisione

Senza arrotondamento, come è possibile impostare l'ora su AVPlayer?

codice per ottenere mpplayer tempo e l'invio di AVPlayer classe

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

Codice in AVPlayer di classe e la conversione di tempo per 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

ottenuto la risposta Se sostituisco CMTime se ekingCM = CMTimeMake (seekTime, 1); con questo CMTime seekingCM = CMTimeMakeWithSeconds (seekTime, 1000000); la sua multa di lavoro – kmReddy

+0

Si dovrebbe postare che come risposta. – chakrit

+1

c'è una costante per questo numero? – izzy

risposta

4

Prova questo:

CMTime seekingCM = CMTimeMakeWithSeconds(playbackTime, 1000000); 
Problemi correlati