Azure Media Services V3 and Thumbnails

Justin Griep 41 Reputation points
2022-05-20T15:53:15.863+00:00

I have been trying to determine how to process and support thumbnail images for encoded videos and the answers are very hard to find for Azure Media Services V3, many links to docs on forums are also throwing 404s.

Part of this issue is a new Roku store policy that requires them to be included in HLS or DASH streams for new release and they would be nice for other platforms as well.

After all of this I am left with a number of questions:

  • Does Dyanmic Packaging have thumbnail support? If so were can we learn how to work with it?
  • Can I process and provide thumbnails for existing videos in our catalog without re-encoding the entire video?
  • Is their any documentation for the thumbnails or the schema for transforms for V3?
  • It looks like the JpgImage in the transform schema will at least generate the image files, is this correct?
Azure Media Services
Azure Media Services
A group of Azure services that includes encoding, format conversion, on-demand streaming, content protection, and live streaming services.
304 questions
0 comments No comments
{count} votes

Accepted answer
  1. John Deutscher (MSFT) 2,126 Reputation points
    2022-05-20T16:56:55.983+00:00

    Hi Justin,

    A few quick answers.

    1. Dynamic packaging does not generate thumbnails on the fly at all. The default presets for Content Aware, Adaptive Bitrate, etc, do generate a "best" thumbnail, but if you want to control the thumbnail settings you do need to add that to a custom encoding job. I have some Javascript/TS samples here that show how to do that:
      https://github.com/Azure-Samples/media-services-v3-node-tutorials/blob/b0ad91bb7f0b466fb6ec1237301ff7c6e130c49b/VideoEncoding/Encoding_H264/index.ts#L115
    2. You can send any existing Asset in AMS back through a "thumbnail" specific transform. See example above on how to create a thumbnail in a preset. Just create a preset that does nothing other than generate a single JPG, or a Sprite with VTT file as in this sample. Just remove the video and audio tracks from that Transform - https://github.com/Azure-Samples/media-services-v3-node-tutorials/blob/main/VideoEncoding/Encoding_Sprite_Thumbnail/index.ts
    3. All the schema for this is actually in the REST API. You should look at the Transform entity details in the REST API for all the encoding and thumbnail settings. Search for PNGFormat, JPGFormat, JPGImage, PNGImage, - https://learn.microsoft.com/en-us/rest/api/media/transforms/create-or-update
    4. Correct the JPG or PNGImage objects in the REST API have all the settings you would need.

    Hope this helps!

    1 person found this answer helpful.

0 additional answers

Sort by: Most helpful