Webdav & webvtt

0

Hello,

I am currently trying to update a webvtt segment file over webdav, on a live channel. When I request the .vtt file directly (from the endpoint), it is loaded just fine (it is loaded fine as well by my web player - jwplayer).

Now, I can successfully write a full replacement via webdav onto the ingest channel - I get a response such as:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>201 Created</title> </head><body> <h1>Created</h1> <p>Resource /in/v2/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/index_3_0_225.vtt has been created.</p> <hr /> <address>AWS Elemental MediaPackage Server at xxxxxxxxxxxxxxxx.mediapackage.xx-xxxxx-x.amazonaws.com Port 80</address> </body></html>

But when I reload the .vtt file on the endpoint, no change has occured, and I can't figure why. I also tried with a totally new filename such as "test.vtt" (to try and find if it had something to see with an overwriting issue on the existing .vtt file), to no avail, the "test.vtt" file does not exist on the endpoint (404). I must be missing something here.
I double checked the format and it is OK (just a very simple caption example, keeping the proper WEBVTT first lines identical to the original file). How come I can't see any change on the output despite the successful Webdav PUT operation? Do I need to update another file as well to "trigger" the change (such as the manifest, the equivalent .ts segment, ...)?

Many thanks in advance for your help!

Cheers
Jean-Marc

Edited by: Jean-Marc on Jan 4, 2021 11:42 AM

asked 3 years ago308 views
5 Answers
1
Accepted Answer

Hi Jean-Marc, I’ve looked into this further. We don’t support the ability to modify segments once they have already been ingested. After a segment has been ingested, it is packaged per your configuration for egress and the ingested file cannot be modified. Posting an updated segment with the same name will not modify an existing ingest segment. A re-ingest of content will be required in order to achieve this.

Your use case as I understand it is to issue a ‘hot fix’ where captions are wrong or missing in the input stream at the time of ingest. I came across this solution which would be worth reading: https://forums.aws.amazon.com/thread.jspa?threadID=325142&tstart=0 this covers a scenario where captions are added at a later date after being encoded in MediaConvert. However for your example where you are streaming from MediaLive, a possible live-to-vod solution could be to do the following on MediaPackage:

  • Enable a catch up window on your MediaPackage HLS endpoint.
  • Identify a content window where captions need changing.
  • Create a harvest job to download that content to S3
  • Add/change your WebVTT files as required in S3, and modify the manifest to reference the new caption files (if it doesn’t already have a caption track in the harvested stream).
  • Re-ingest as VOD content.

Do let us know if this could be a possible solution for you, and let us know if you have any other questions.

Kind Regards,
Ben

AWS
answered 3 years ago
1

Hi Ben,

Many thanks for your very detailed reply!

Definitely makes sense, in the meanwhile I read some more documentation and threads, specifically about VOD and captions, and it all indeed described that a whole re-ingest was necessary to achieve what I wanted to do, so came to the conclusion that re-sending an already ingested file, in Live mode, was definitely not supported.

Thank you for the examples and insight that you supplied me with: I'll have a proper look and will run further tests thanks to them!

Thank you again!

Best Regards,
Jean-Marc

answered 3 years ago
1

Hi Jean-Marc, glad I could help - that sounds great. Do get in touch if you have any further queries!

Kind Regards,
Ben

AWS
answered 3 years ago
0

Hi Jean-Marc, thanks for your post!

I’ve sent you a private message asking for some further details such as example arns and endpoints we can review internally. I’ll be happy to review this.

Kind Regards,
Ben

AWS
answered 3 years ago
0

Hi Ben,

Thank you! I have replied to your pm just a few seconds ago.
Please let me know if you need any further information.

Best Regards,
Jean-Marc

answered 3 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions