Unable to play Smooth Stream

0

Hi All -

New AWS user here...
I followed the "Video on Demand on AWS Foundation" reference solution to transcode mp4 into HLS, DASH, and Smooth Stream output formats. I set up a Cloudfront distribution as well and configured it for Smooth Streaming as per AWS docs (https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/on-demand-video.html), made everything public, set up CORS etc.

However, I'm still not able to play my Smooth Streaming content (HLS and DASH are fine). I tested the output video with the Microsoft test server and ExoPlayer on my streaming stick. Both players try to load the content, progress bar indicates the correct duration, but no video or audio.

Exoplayer log: "com.google.android.exoplayer2.upstream.HttpDataSource$InvalidResponseCodeException: Response code: 400"
If I try to play publicly available Smooth streams like: https://test.playready.microsoft.com/smoothstreaming/SSWSS720H264/SuperSpeedway_720.ism/manifest, Exoplayer successfully plays the stream.

So, I'm guessing there's something I didn't set up properly with my MediaConvert/CloudFront setup

My Media Convert job:
input: one mp4 (1920 x 1080, avc) -> two MS Smooth outputs (1280 x 720 and 640 x 360) avc

Does anyone have pointers on how to root cause this?

Thanks.

asked 3 years ago459 views
2 Answers
1

Hi,

Following are some of the steps you could to troubleshoot.

  • When you create Smooth Stream content in Media Convert, make sure you select Microsoft Smooth Streaming as output
  • When you playback your Smooth Streaming content, enable the develop mode in your browser ( Select F12 for Chrome browser) and see what the error was when downloading the video and audio.
  • Confirm following headers are added under behavior.
    Cache Based on Selected Request headers: Select Whitelist
    Whitelist headers:
    Access-Control-Allow-Origin
    Access-Control-Request-Headers
    Access-Control-Request-Method
    Origin
  • Confirm Smooth Streaming is set to "Yes"
  • Confirm that you have put clientaccesspolicy.xml or crossdomainpolicy.xml at the root of your distribution S3 bucket. Content can be found in https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/on-demand-video.html

Regards,
Sam

Edited by: samuelaws on Jan 7, 2021 10:34 PM

AWS
answered 3 years ago
1

Thank you samuelaws!!

Adding the Whitelist headers did the trick. I'm able to play Smooth Streams now.
Thank you so much for the help.

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