Increase efficiency of dash manifest parsing
See original GitHub issueHave you read the FAQ and checked for duplicate open issues?:
Yes
What version of Shaka Player are you using?:
2.4.4
Can you reproduce the issue with our latest release version?:
yes
Can you reproduce the issue with the latest code from master
?:
didn’t check
Are you using the demo app or your own custom app?:
custom app
If custom app, can you reproduce the issue using our demo app?:
yes
What browser and OS are you using?:
I’m using LG WebOS 3.0 (LG lh615v)
What are the manifest and license server URIs?:
I can’t post it publicly
What did you do?
I’m starting the Dash/Widevine content on LG tv.
What did you expect to happen? I was expecting the title to start at around 6 to 7 seconds
What actually happened?
The startup time of title took +35 seconds
When starting the title it takes +35 seconds to parse DASH manifest that is of size 1,5 MB. It is seen that most of the time is consumed on recursive call to shaka.dash.DashParser.processXlinks
. The title that has 90kb manifest size starts at around 10 seconds which is still quite slow. Other tvs like WebOS 4 based LG suffer from that issue as well.
What is the cause of such poor performance when it comes to parsing the dash manifest? Are there any config params that could speed up the process?
Issue Analytics
- State:
- Created 5 years ago
- Reactions:3
- Comments:8 (5 by maintainers)
Seems that the processing of xlinks can still be a long operation even with this change in shaka-player 3. Attempting to process a very large mpd (3mb) of the form
<SegmentList ...><SegmentUrl mediaRange="..-.." />
will actually crash after several minutes stuck in the processXlinks function of mpd_utils.js.Should there be a config option to disable xlink processing if we know that our mpd doesn’t use xlink?
Yes, but there was no “closes” in PR #3240, so the issue didn’t get closed automatically.
@chadacious, you can now use
manifest.dash.disableXlinkProcessing
to disable xlink. Thanks!