Dash.js: Local playback / download support

Created on 15 Oct 2016  路  8Comments  路  Source: Dash-Industry-Forum/dash.js

Hi I was wondering if there was the possibility of local playback / download support like ShakaPlayer ?

This would prepare for the possibility of persistent license support in Chrome for offline playback.

The functionality is quite complex. It first parses the manifests and stores the data into an indexDB then rebuilds the manifest and data from this database for local playback.

Feature Request Question

Most helpful comment

Hi,

there is a new PR #2903 created by @jeremco. If some of you are interested....you are welcome! ;-)

A+
Nico

All 8 comments

This is certainly feasible. In fact, I'm wondering if it could be handled quite cleanly by having a separate process which parsed the mpd, selected the video/audio/text the user wanted, downloaded a single representation from each (no need for ABR since it is local) and then downloaded and stored the assets via a local File http://caniuse.com/#search=File or indexDB http://caniuse.com/#search=indexdb system and built a new mpd with local URLs using something like var obj_url = window.URL.createObjectURL(blob).

This new mpd could then be given to the existing player. As long as the URLs can point at the local system and our XHR loaders are compatible with it, then the player should just work. This approach of decoupling the pre-loading from the playback would allow the player code itself not to carry the weight of the preloading logic.

Yes I know with Widevine Classic , as matter of fact I may have to look at one option for mobile SDK's. It can stream and download one of the bitrates with both the mobile and browser client.

I've investigated local playback on Android and it seems ExoPlayer possibly has code to rebuild the manifest.

On IOS10 AVPlayer now has code for local HLS playback with a download manager.

It would still need to store the files and rebuild the manifest for local playback. In the case of ShakaPlayer it seems to be storing the whole lot in an instance on IndexedDB https://developer.mozilla.org/en/docs/Web/API/IndexedDB_API

Not interested then or need to wait for Chrome persistence support ?

I'm interested in this...

...please reopen?

There is obvious interest here. Reopening so we track and implement.

Beat me to it - just discussed with @robertbryer and given there exists an implementation and other parties at the f2f were interested, not sure why this was closed.

Hi,

there is a new PR #2903 created by @jeremco. If some of you are interested....you are welcome! ;-)

A+
Nico

Was this page helpful?
0 / 5 - 0 ratings

Related issues

NguyenTungs picture NguyenTungs  路  5Comments

ruslandinov picture ruslandinov  路  4Comments

davemevans picture davemevans  路  4Comments

lioun1729 picture lioun1729  路  6Comments

qchroman picture qchroman  路  4Comments