J'utilise AVPlayer pour lire un flux en direct à partir d'Internet. AVPlayer peut être mis en pause, mais à la reprise, il commence à partir du moment où il a été mis en pause, tout comme un TiVO. AVPlayer n'a pas de méthode d'arrêt. Comment peut-on continuer avec ce qui est en train d'être diffusé (comme si vous éteigniez et rallumiez votre autoradio)?Arrêt de AVPlayer sur iOS
6
A
Répondre
1
-(void)seekToTime:(CMTime)time
utiliser cette méthode pour obtenir au début du fichier
-1
SeekToTime wont stop l'audio, donc une fois que vous atteignez la fin si vous appelez seulement seekToTime il suffit de commencer à jouer à nouveau comme une boucle. Vous pouvez utiliser la version ci-dessous avec un rappel pour mettre en pause la vidéo/audio dès que la recherche est terminée afin qu'il se réinitialise et s'arrête simultanément.
[_player seekToTime:CMTimeMake(0, 1) completionHandler:^(BOOL finished) {
[_player pause];
}];
-1
[player pause];
[item_ removeObserver:self forKeyPath:@"status" context:nil];
[item_ removeObserver:self forKeyPath:@"playbackBufferEmpty" context:nil];
[item_ removeObserver:self forKeyPath:@"playbackLikelyToKeepUp" context:nil];
[item_ removeObserver:self forKeyPath:@"timedMetadata" context:nil];
player=nil;
1
Pour arrêter une AVPlayer
:
[player replaceCurrentItemWithPlayerItem:nil];
Cela permettra de libérer toutes les ressources mémoire et processeur et son actif associé consumé. Aussi simple que cela.
dépend-il du serveur de streaming? – onmyway133