Open petemill opened 1 year ago
@deeppandya , so online playing wasn't working with wrong extension? I'm really curious why it had worked before.
@deeppandya , so online playing wasn't working with wrong extension? I'm really curious why it had worked before.
I have the implementation ready to work with HLS file with online mode.
I have the implementation ready to work with HLS file with online mode.
I mean, you said it worked before, HLS wasn't supported then?
Accidentlay typed "Playlist" to cs.chromium.org and got this
Description
Playlist service is assuming all files will be .mp4 (or single file). Many sites provide an m3u8 index which offers conditional chunks based on device characteristics like resolution or network speed. This affects:
The HLS Playlist format looks like this:
Android stop-gap solution
In order to support m3u8 on android the quickest, we could allow Android to perform its own .m3u8 offline download with local APIs which are available. The android Java would check its own offline state for each media item as well as the Playlist Service's offline state for each media item.
In the future, the Playlist Service may support .m3u8 / HSL offline download and we can change Android to use that at that time.
Supporting offline HLS media downloads in Chromium
To integrate HSL in to the current PlaylistService architecture, we would need to
Parsing
media::hls::Playlist::IdentifyPlaylist
which tells us if it's a simpleMediaPlaylist
, or aMultivariantPlaylist
with multipleVariantStream
children (each of which point to aMediaPlaylist
via Url).MediaPlaylist::Parse
.MediaSegment
within that Playlist viaGetUri
+GetByteRange
.Unknowns
Variant
we support (which codec / resolution chromium's video player can play back)Variant
need to be downloaded