Question

Est-ce que quelqu'un sait si je peux modifier un fichier M3U8 dynamiquement pendant l'exécution de l'application?

Le scénario est le suivant: disons que j'ai plusieurs fichiers .ts prêts à lire dans une séquence, par exemple 1.ts, 2.ts, 3.ts etc ...

Maintenant, pendant le temps d'exécution, je veux changer l'ordre en 1.ts, 3.ts et seulement alors 2.ts.

Est-ce possible?

Merci,

Était-ce utile?

La solution

La réponse est dans le Norme HLS (Août 2017):

Le serveur ne doit pas modifier le fichier de playlist multimédia, sauf en:

o  Append lines to it (Section 6.2.1).

o  Remove Media Segment URIs from the Playlist in the order that they
 appear, along with any tags that apply only to those segments
 (Section 6.2.2).

o  Increment the value of the EXT-X-MEDIA-SEQUENCE or EXT-X-
 DISCONTINUITY-SEQUENCE tags (Section 6.2.2).

o  Add an EXT-X-ENDLIST tag to the Playlist (Section 6.2.1).

Noter la projet standard (vers 2012) De la réponse originale était légèrement différente:

Le serveur ne doit pas modifier le fichier de playlist, sauf en:

Ajoutez les lignes à lui (section 6.2.1).

Supprimez les uris de médias de la liste de lecture dans l'ordre dans lequel ils apparaissent, ainsi que toutes les balises qui s'appliquent uniquement à ces URI (section 6.2.2).

Incrémentez la valeur de la balise EXT-X-Media-Sequence (section 6.2.2).

Ajouter ou supprimer les balises EXT-X-Stream-Inf ou les balises EXT-XI-FRAME-STREAM-INF (Section 6.2.4). Notez que les clients ne sont pas tenus de recharger les fichiers de playlist de variantes, donc les modifier peut ne pas avoir un effet immédiat.

Ajoutez une balise EXT-X-ENDLIST à la playlist (section 6.2.1).

Dans l'ensemble, ce que vous visez n'est pas soutenu par le protocole.

Quoi qu'il en soit, c'est assez inutile car les segments peuvent être en corrélation entre eux dans l'ordre (a des cadres clés communs).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top