| Cloudfront serves an invalid HTTP response, thus Chrome/Firefox refuse to cache the data. The theory is, it is better to not risk caching bad data. Chrome will still play the video served from Cloudfront, but it wont write any of the data to the media cache. Thus when you pause and buffer, it will only buffer a few seconds of video in the current playback window. It never writes to the cache so buffering must stop. To see this in action, play a video with chrome://media-internals/ open. A video served from S3 will get saved to the media cache, and the full video can buffer when paused. A video served from cloudfront will only buffer a few seconds of video. Update: It is probably just easier to see for yourself: Here is a video served from S3. Pause the video in chrome, and you will see the whole video gets buffered: http://s3.amazonaws.com/jctest20080526/test/test.mp4 Here is the same video served from Cloudfront. Start the video, and pause it, and notice how it doesn't buffer more than a few seconds: http://d3oocspv43fsel.cloudfront.net/test/test.mp4 |
Do you know of any workarounds client-side?