-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Support Annex I: Flexible Insertion of URL Parameters #4440
Comments
I made a corresponding ticket for livesim2 that could be done in parallel: Dash-Industry-Forum/livesim2#176 |
We have a internal PR in our fork, we need to validate it and do the PR to this repo. @dsilhavy check: qualabs#23 |
Update: PR in dash.js -> #4578 |
The related PRs #4578 and #4609 have been merged. They enable basic Annex I support, details can be found in the descriptions of the pull requests. I will keep this issue open as we only support a subset of Annex I so far. However, I will move it to done in the v5.0.0 project board as we have implemented what was in scope for the next release. |
MPEG DASH spec Annex I details support for the flexible Insertion of URL Parameters. Basically, query args can be passed to a manifest and they can be inherited for a selectable set of sub-requests for audio, video, caption and init segments.
Use-case: support for Common Access Token (CAT). A CAT access token can be attached to a manifest URL as a query arg. Via the essential properties, the player can be instructed to add this token to all media object requests. This avoids having to dynamically manipulate every manifest during delivery in order to add the token to each segment template.
Another big use-case would be - SGAI with Alternative MPD Event, to pass through the sessionID. Note that this requires the more flexible
ExtUrlQueryInfo
support.Example: manifest URL https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps_queryargs2.mpd?a=1&b=2
The player should make audio and video segment requests similar to
Note that Annex I is quite a complex set of features, with the ability for the essential property to specify template-based query arg creation, as well as filtering of which requests should include the URL parameters. For simplicity, it might be acceptable to initially only support the following UrlQueryinfo element:
<up:UrlQueryInfo queryTemplate="$querypart$" useMPDUrlQuery="true"/>
This defaults to adding all query args on the manifest to all subrequests, which is a generally use form which would allow CAT use cases to be demonstrated. Then in a subsequent release, support for ExtUrlQueryInfo could be added to enable the SGAI use-case. We should debate this with the Ad insertion TF at DASH IF as they may insist on support of the full Annex from the beginning.
The text was updated successfully, but these errors were encountered: