0

zu schaffen, während Remote-HLS Abspielen von Videos, Ich bin Neuinitialisierung AVQueue Spieler, die bereits mit Gegenständen unter Verwendungneu initialisieren AVQueuePlayer ohne Haing neue AVPlayerLayer

(AVQueuePlayer *)initWithItems:(NSArray<AVPlayerItem *> *)items 

jedoch initialisiert wird, durch diesen Sound spielt im Hintergrund zu tun, aber Der AVPlayerLayer bleibt beim letzten Frame des vorherigen Videos hängen, das Video wird nicht aktualisiert. Um sicher zu stellen, dass Video aktualisiert wird, muss ich die vorherige Schicht für UIView von Video-Player, neu erstellen, die neue AVPlayerLayer und weisen es der UIView für Spieler zu entfernen, mit folgenden:

[oldAVPlayerLayer removeFromSuperLayer] 
[newAVPlayerLayer playerLayerWithPlayer: myAVQueuePlayer] 
[myViewForPlayerLayer addSublayer : newAVPlayerLayer] 

Dies bewirkt, dass ein flackern auf dem Bildschirm, was in Ordnung ist, wenn das Gerät nur ein iPhone/iPad war, aber das Problem ist mit abruptem Airplay-Verhalten, was dazu führt, dass der UISlider Sound in den Fernbedienungen zeigt. Gibt es eine Möglichkeit, den AVQueuePlayer neu zu initialisieren, ohne den AVPlayerLayer neu zu erstellen oder neu zuzuweisen?

Antwort

0

landeten mit AVPlayer statt AVQueuePlayer, und mit der Methode

replaceCurrentItemWithPlayerItem 

Ist die Störung in Airplay nicht verursachen, und speichert die auch Speicher, da die Elemente instanziiert werden und bei Bedarf.

Verwandte Themen