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
feat: Add MPD Patch support #5247
base: main
Are you sure you want to change the base?
Conversation
Incremental code coverage: 92.32% |
Thank you for contributing! I don't understand the patch adapter, though. I worry that it will not be representative of actual patch streams. I also see it being applied in the demo to a VOD manifest, which should have no need of patching. Patching is only useful for updates to live streams, correct? |
Hi @joeyparrish I agree with you that patch manifest adapter is not ideal, but I wanted to give the ability to test the feature in the demo app as open patch compliant streams are not easy to come by (at least I haven't seen any 😆 ). The reason I chose the ad enabled VOD is because of its behaviour of presenting new segments and periods regularly like a live stream. I can remove remove the manifest adapter if you wish. |
Hi @joeyparrish I have removed the patch adapter. |
Happy to support in this kink of new feature. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall, I would be comfortable with an "experimental" flag to enable this, but I want to ensure that the existing flow isn't broken. I'm most concerned about extra calls to combinePeriods
(which can be expensive) and missing calls to set up caption streams.
d14971c
to
a7071c1
Compare
@dave-nicholas @tykus160 Please add a Demo streams. You can use Dash-Industry-Forum/dash.js#4452 . With a reference stream in the Demo I will be able to review the change and test it for myself. Thanks! |
When running towards dash.js, some issues were fond in the ongoing development of MPD patch in livesim2. I think things should be good now, but if you find any issues, please report them to Dash-Industry-Forum/livesim2#174 or open a new issue if the PR is closed. |
The MPD Patch support is now on the public DASH-IF livesim2 server. Here is a possible test URL: https://livesim2.dashif.org/livesim2/patch_60/segtimeline_1/testpic_2s/Manifest.mpd |
Required by #5247 Simple XPath parser for tXml utils. Not used for now, but needed for MPD Patch support.
@tobbee Your URL uses SegmentTimeline, is there any URL that uses SegmentList or SegmentBase? |
Added demo asset, thanks @tobbee. This PR still needs some love though, as initial scope of work is not sufficient to properly play DASH-IF asset. Me and @dave-nicholas will continue work on that. |
@avelad The output is "live" streams and available in three different formats:
I hope you can make these variants work (the first one has very little updates since no Segments are mentioned). Once they work, one can also test with multiperiod variants by adding https://livesim2.dashif.org/livesim2/patch_60/segtimeline_1/periods_60/testpic_2s/Manifest.mpd |
Closes #2228