-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create a JSON manifest format for DASH mpds #393
Comments
Is there a good reason to use custom file extensions? Using the standard |
Wouldn't this result in players having to implement two formats, leading to decreased interoperability? This makes me hesitate. I feel more gains can be made from work to optimize for small manifest size, as opposed to a different format. However, I am happy to be convinced otherwise by data. |
Is there any evidence that XML really is inefficient to process or is this just used as an excuse for people's technical preferences or design choices? |
There are no native XML parsers on ECMAScript. |
Is the inefficiency introduced by using a JavaScript XML parser library significant given everything else involved in playing DASH content?
Please can you give an example of what you mean by "pure HTML based approach"? |
Let me give you an example that covers both cases: Javascript was historically a single threaded process. DASH processing is inherently a multi threaded process: you need to refetch and reprocess while at the same time fetch, process and feed segments into the video decoder. Nowadays, this is always done in tandem, you do all of them in sequence, at least the processing part (fetching can be done in the background). What are the consequence ?
This is becoming more and mode a problem, the more 8+ core CPUs are present on low power / high performance devices. |
Here's a DOMless XML parser: https://www.npmjs.com/package/fast-xml-parser How does the performance of this compare to JSON loading? Can you use this from service workers? If a DASH player used it to refresh a nontrivial MPD once per second, what would be the cost in terms of processing power and battery, as a % of the total player budget? I do not have the tools to provide good data here but maybe someone else can. |
Everyone complains about the inefficiency of processing xml in the modern OTT world, especially in Javascript-based environments in which parsers are not natively supported. A far more common, lightweight and popular data structure is JSON (JavaScript Object Notation) https://www.json.org/json-en.html
Can the DASH-IF create a JSON-based manifest structure?
We can define this and contribute it to MPEG for ratification. We claim the IP for this and commit to being license/royalty free for its use.
Cheers
Will
The text was updated successfully, but these errors were encountered: