Search code examples
htmlgoogle-chromevideoamazon-cloudfront

HTML5 (mp4) video not playing from Cloudfront


I'm trying to play a HTML5 video in Chrome 23 from Amazon Cloudfront. Should be straightforward, but I cannot get it to work. The HTML is what you'd expect:

<video width="1280" height="720">
  <source src="http://d1dsyb3mv0b0i6.cloudfront.net/test/lines.mp4" type="video/mp4" />
  Your browser does not support the video element.
</video>

I made sure the Content-Header is set to video/mp4 and the Content-Disposition is set to inline as suggested in this answer.

However, when I open my testpage with the video element in Chrome and I look at the network console, I only see that the request status is (pending) and subsequently (canceled):

enter image description here

The video plays just fine when I point the video element to the copy on my local machine, but for some reason it does not get served from Cloudfront correctly.

Note that I'm using a Download distribution, since I don't need RMTP streaming. Ust to be sure, I tried a Streaming distribution too, but that results in request status (pending) followed by (failed).

Anyone any ideas what could be wrong?


Solution

  • Check you've got the file where you think it is in S3 and make sure the permissions are set to allow loading objects without an authentication string.

    Check here to generate policies too:

    http://awspolicygen.s3.amazonaws.com/policygen.html