title: HTML5 Video: Android not playing MP4 Through CloudFront
body: <p>We are in the process of implementing mobile video functionality on our site, and have been having difficulties getting video (living on S3) to play on the Android through CloudFront.</p>
  
  <p>We're using generic 'Video For Everybody'-style markup for the player, using 3 video encodings (mp4/webm/ogv programatically encoded using Zencoder) with a Flash fallback. This seems to work for iPhones, but not for the Android.</p>
  
  <p>From our testing using a flat HTML file, it appears that the Android will not display a 'play' button unless there are <em>no</em> query string parameters on the mp4 (like those on the CloudFront URLs below). If these querystring variables are removed, the 'play' button will appear. The video will not play if clicked however, of course.</p>
  
  <p>We are thinking encoding settings are not the culprit as mp4s we have encoded <em>will play in the Android</em> in an HTML test page, inside a video tag with a source pointed at the mp4 file locally.</p>
  
  <p>Here is some sample markup (parameter values Xed out). Thanks very much in advance for any insight or suggestions you can provide.</p>
  
  <hr>
  
  <pre><code>&lt;video id="videoTag" class="video-js" width="640" height="480" controls poster='/images/poster.gif'&gt;
  &lt;source src="https://di8df8d1ooc3o.cloudfront.net/43391_1309888197/video.mp4?Expires=XXXXXXXXXX&amp;Policy=XXXXXXXXXX&amp;Signature=XXXXXXXXXX&amp;Key-Pair-Id=XXXXXXXXXX" /&gt;
  &lt;source src="https://di8df8d1ooc3o.cloudfront.net/43391_1309888197/video.webm?Expires=1XXXXXXXXXX&amp;Policy=XXXXXXXXXX&amp;Signature=XXXXXXXXXX&amp;Key-Pair-Id=XXXXXXXXXX" /&gt;
  &lt;source src="https://di8df8d1ooc3o.cloudfront.net/43391_1309888197/video.ogv?Expires=XXXXXXXXXX&amp;Policy=XXXXXXXXXX&amp;Signature=XXXXXXXXXX&amp;Key-Pair-Id=XXXXXXXXXX" /&gt;
  &lt;object id='flash_fallback_1' class='vjs-flash-fallback' width='640' height='480' type='application/x-shockwave-flash' data='http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf'&gt;
  &lt;param name='movie' value='http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf' /&gt;
  &lt;param name='allowfullscreen' value='true' /&gt;
  &lt;param name='flashvars' value='config={"playlist":["%2fimages%2fspacer.gif", {"url": "https%3a%2f%2fdi8df8d1ooc3o.cloudfront.net%2f43391_1309888197%2fvideo.mp4%3fExpires%3d1309892359%26Policy%3deyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kaThkZjhkMW9vYzNvLmNsb3VkZnJvbnQubmV0LzQzMzkxXzEzMDk4ODgxOTcvZWNoby1oZXJld2VhcmUubXA0IiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxMzA5ODkyMzU5fX19XX0_%26Signature%3dcp-wUUSN3EqQ0A%7ewaa5VitBeoMf0wjf5kELID9w8pP8kLp6dkZ3%7ea7H9Sp6uqBrNOkMDr4dMuvwnICBozH0eLLcc4LA7fd2jX5hMru1ORVjc8B%7ey1zNaj1ZlLeuCy6YV5zfBAzd9jVh6DGKVadp-S%7eLHXQiVin3N4GXwBnxZ-No_%26Key-Pair-Id%3dAPKAIAAZWMFF53NY4OMA","autoPlay":false,"autoBuffering":true}]}' /&gt;
  &lt;img src='/images/poster.gif' alt='Poster Image' title='No video playback capabilities.' /&gt;
  </code></pre>
  
  <p></p>