Open s3bubble opened 2 years ago
Single-period VOD content does not need a duration
attribute on <Period>
. Instead, you have mediaPresentationDuration
in the <MPD>
element.
Does this help?
Thanks @joeyparrish going to pass this back to AWS.
We had this issue when encoding with Mediaconvert and this was the resolution.
After reviewing the MediaConvert job, we found that Write segment timeline in representation was disabled. DASH input manifests must contain segment templates with segment timelines in them. In our testing, once we enabled this setting in the DASH output group MediaTailor was able to accept the manifest and insert the ads properly.
For more information on integrating an MPEG-DASH source, please review
https://docs.aws.amazon.com/mediatailor/latest/ug/manifest-dash.html
We had to enable this.
Not sure if you have a similar option?
Let me see what AWS says.
Hi we have just got a response from the AWS Mediatailor team see below.
I have the following update from the service team:
Thanks for linking to that ticket at the Shaka Packager project.
We have updated our plan a little bit and plan to allow a manifest where the period@start and period@duration is either specified in the
However we do plan to require a Period@duration on the final period of a static mpd, as the DASH-IF guidelines say:
In a static presentation, the last period SHALL have a Period@duration.
This means that
<Period>
<Period start=x>
<Period start=y duration=z>
Is allowed.
<Period duration=a>
<Period duration=b>
Is also allowed.
About the MediaPresentationDuration, I see this in the DASH-IF doc:
MPD@mediaPresentationDuration MAY be present in an MPD. If present, it SHALL accurately match the duration between the zero point on the MPD timeline and the end of the last period, including the duration of any XLink periods. Clients SHALL calculate the total duration of a static presentation by adding up the durations of each period and SHALL NOT rely on the presence of MPD@mediaPresentationDuration.
It doesn't look to me like MediaPresentationDuration is a substitute for Period@duration. Let me know if you/they have comments about that.
Thank you!
Is this something that could be implemented into the shaka packager? Or are there any comments to send back to the Mediatailor team. Thanks
It certainly could be fixed in Shaka Packager. My understanding of the requirements was clearly out of date, and based on the original DASH client implementation in Shaka Player.
I'll label this as a bug and rename it accordingly. We would be happy to accept a PR to fix the implementation in Packager. It should be relatively straightforward to search for mediaPresentationDuration
in the code and make some changes. You may need to update some expected outputs in tests to match.
Thanks @joeyparrish we will create a PR for this.
Could you point us in the right direction on how to create a PR for this.
We normally fork a repo create a branch make changes test and then push for the PR.
How do we test the code within our fork? we can build Shaka packager using docker.
docker pull google/shaka-packager
Then test with.
$ docker run -v /host_media_path/:/media -it --rm google/shaka-packager
That works fine but how do we test our fork with our updates.
docker pull s3bubble/shaka-packager
Gives us.
Using default tag: latest
Error response from daemon: pull access denied for s3bubble/shaka-packager, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Not sure the correct process to do this sorry not familiar with this workflow, could you give us some more information please.
Thanks
Hi,
We use Shaka Packager to package our content then we upload our content to AWS S3.
We have recently been on support with AWS after trying to playback content and also insert ads using Mediatailor both were failing.
They stated.
We looked at the source manifest and found out that it doesn't contain the duration attribute which is the reason behind the failure. See below : Looking at the dash-IF[1] documents, we see that it is necessary for periods to include the duration attribute. A reference manifest can be seen here https://docs.aws.amazon.com/mediatailor/latest/ug/dash-manifest-vod.html
Here is our manifest encoded with Shaka
Any suggestion on how to implement this.