Unable to play Smooth Stream
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.
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
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.
Relevant questions
How to Accommodate Portrait Video in Video on Demand on AWS Solutions
Accepted Answerasked 6 months agoHow to stream AWS DeepLens video to a website?
Accepted AnswerHow to get producer and server timestamp of each frame from boto3 kvam.get_hls_streaming_session_url
asked 3 months agoAWS Elemental Convert - Error video 360 degree when stream with media convert job of ouput HLS group
asked 4 months agoDash-Outputs with QVBR always exhaust the maximum bit rate allowed
asked 2 months agoVideo on Demand with MediaPackage, S3 and ffmpeg
asked 3 years agoSMIL supported subtitle formats ?
asked 2 years agoUnable to play Smooth Stream
asked a year agoMPEG-DASH stream using VP9 codec
asked a year agoSupplying SCC subtitles to MediaLive without embedding them into the MP4 file
asked 2 months ago