Ich habe diese Probleme seit sehr langer Zeit gesehen, und ich bin wirklich enttäuscht von der Android-Unterstützung von HLS, da sie sich zu zufällig verhält.
Voraussetzung:
1) Spielen Sie mehrere .m3u8 Video-Streaming
2) Sollte auf verschiedenen Geräten und API-Ebenen funktionieren.
Was ich habe und die entsprechenden Probleme:
Methode - 1) TextureView mit nativem MediaPlayer :
Die Anzahl der abzuspielenden Videos hängt vom Gerät ab, bei einigen Geräten ist es das Ich spiele nur ein Video (Mein Gerät - Samsung Galaxy Grand Quattro - api Level 16) und für einige Geräte kann es alle vier Videos abspielen Stromungen.
Hängt vom API-Level ab, einige .m3u8-URLs arbeiten zwar an Jellybean, aber nicht über Kitkat.
Methode - 2) ExoPlayer :
Methode - 3) Vitamio :
Spielen Sie erfolgreich alle .m3u8-URLs
Kein Suuport für mehrere Videobilder
Methode - 4) grafika :
Lösungen, nach denen ich suche:
1) Mehrere Videostreams sollten abgespielt werden. Wie bei allen oben genannten Methoden kann mein Gerät ein einzelnes Video abspielen, aber es scheint Milestone Mobile kann 8 Videostreams in meinem Gerät abspielen (Wie?: O).
2) Wenn der native MediaPlayer nicht in der Lage ist, einige .m3u8-URLs abzuspielen, dann gibt es Probleme mit aac-Codec, Decoder, Segmenten, .ts-Datei usw.?
3) Wenn der native MediaPlayer kein Streaming abspielen kann, wie soll ich einen benutzerdefinierten MediaPlayer erstellen, der die meisten Streaming-URLs unterstützt?
4) Gibt es eine Möglichkeit, mehrere Videos mit Vitamio abzuspielen?
5) Referenz eines anderen HLS-Clients, der meiner Anforderung entspricht?
Persönlich würde ich gerne mit Methode-1 gehen, also gibt es etwas, was ich tun kann?