sto giocando un piccolo video controller mpmediaplayer utilizzando questo codiceplayer.duration mostra sempre pari a zero in MPMoviePlayerController per file video
MPMoviePlayerController *player = [[MPMoviePlayerController alloc]
initWithContentURL:[NSURL fileURLWithPath:videostr]];
dove videostr è il percorso di quel file video.
Ora ho bisogno di ottenere la lunghezza di quel file video per quello sto usando questo codice.
length = player.duration;
Ma mostra sempre 0.000. Ma il video sta giocando bene.
Sto verificando tramite google ogni codice in cui la durata del video è player.duration
.
e cerco qualche altro codice anche
AVURLAsset *asset = [[[AVURLAsset alloc] initWithURL:[NSURL fileURLWithPath:videostr]
options:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], AVURLAssetPreferPreciseDurationAndTimingKey, nil]] autorelease];
NSTimeInterval duration;
if (asset)
duration = CMTimeGetSeconds(asset.duration) ;
NSLog(@">>>>>>>>>>>>>>>>>>>> %f", asset.duration);
anche se mostra zero.Can qualcuno ti prego, aiutami.
Grazie in anticipo.
notifica: MPMoviePlayerLoadStateDidChangeNotification chiamata 2 volte automatiaclly – g212gs
Se per impostazione predefinita, il video è in pausa questa soluzione non funziona, perché questa notifica viene chiamato quando l'utente esegue azioni di gioco. Esiste in qualsiasi modo per ottenere la durata prima? – jose920405