Manchmal schlägt der AVPlayer mit AVPlayerItemStatusFailed
fehl und nachdem dieser Fehler aufgetreten ist, schlägt AVPlayer weiterhin mit AVPlayerItemStatusFailed
fehl. Ich habe versucht, die AVPlayer-Instanz zu löschen und eine neue zu erstellen, aber ich kann AVPlayerItemStatusFailed
Fehler nicht lösen. Auch removingFromSuperview
UIView
mit AVPlayer-Instanz und Initialisierung eines neuen Elements mit AVPlayer löst das Problem nicht.AVPlayer schlägt mit AVPlayerItemStatusFailed fehl (OSStatus-Fehler -12983)
Also ich dachte, dass AVPlayer nicht vollständig gelöscht werden konnte. Gibt es irgendjemanden, der etwas vorschlagen könnte, um den AVPlayer vollständig zu löschen und nach einem Fehlschlag arbeiten zu lassen?
Fehlerprotokoll:
Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo=0x1a689360 {NSLocalizedDescription=The operation could not be completed, NSUnderlyingError=0x1a688e70 "The operation couldn’t be completed. (OSStatus error -12983.)", NSLocalizedFailureReason=An unknown error occurred (-12983)}
UPD. Für @ Matt
playerItem = [AVPlayerItem playerItemWithURL:[NSURL fileURLWithPath:filePath.path]];
if (!self.avPlayer) {
avPlayer = [AVPlayer playerWithPlayerItem:playerItem];
}
[avPlayer.currentItem addObserver:self forKeyPath:@"status" options:0 context:nil];
if (self.avPlayer.currentItem != self.playerItem) {
[self.avPlayer replaceCurrentItemWithPlayerItem:playerItem];
}
AVPlayerLayer *avPlayerLayer = [AVPlayerLayer playerLayerWithPlayer:avPlayer];
avPlayerLayer.frame = self.bounds;
[self.layer addSublayer:avPlayerLayer];
avPlayer.actionAtItemEnd = AVPlayerActionAtItemEndNone;
[avPlayer play];
Zeigen Sie _your_ code - den Code, den Sie verwenden, um zu versuchen, an erster Stelle zu spielen. – matt
@matt Danke für deine Antwort, ich habe meinen obigen Code hinzugefügt. – instback
Eine Chance, dass 'filePath.path' schlecht ist? Vielleicht nil rauskommen? – matt