Der MPMoviePlayerController hat eine Eigenschaft namens playableDuration.
playableDuration Die Anzahl der aktuell abspielbaren Inhalte (schreibgeschützt).
@property (nonatomic, readonly) NSTimeInterval playableDuration
Für progressiv heruntergeladenen Netzwerkinhalt spiegelt diese Eigenschaft wider die Menge an Inhalten, die jetzt abgespielt werden kann.
Gibt es etwas ähnliches für AVPlayer? Ich kann nichts in den Apple Docs oder Google (nicht einmal hier bei Stackoverflow.com) finden
Vielen Dank im Voraus.
playableDuration kann grob durch folgende Prozedur implementiert werden:
%Vor%_moviePlayer ist Ihre AVPlayer-Instanz. Wenn Sie die geladenenTimeRanges von AVPlayerItem überprüfen, können Sie eine geschätzte playableDuration berechnen.
Bei Videos mit nur 1 Ausschnitt können Sie dieses Verfahren verwenden. Bei Videos mit mehreren Abschnitten sollten Sie jedoch alle Zeiträume im Array loadedTimeRagnes überprüfen, um die richtige Antwort zu erhalten.
Aufbauend auf Johns Antwort ...
Dies ist das scheinbare Standardverhalten von Apple Playern: "Zeige die maximale Zeit des spielbaren Bereichs, der die aktuelle Zeit einschließt"
%Vor%}
Sie müssen erkennen, wann der AVPlayer bereit ist, Ihre Mediendatei abzuspielen. Lass es mich wissen, wenn du nicht weißt, wie das geht.
Sobald die Mediendatei geladen ist, können Sie diese Methode jedoch verwenden:
%Vor%Wenn Sie diese Methode verwenden, ist es wichtig zu verstehen (weil Sie Inhalt streamen), dass der Längenwert ungültig oder so ist. Sie müssen dies also überprüfen, bevor Sie es zur Verarbeitung verwenden.
%Vor%Tags und Links ios xcode avplayer mpmovieplayer