As a test, today, I uploaded an mp4 video to my Amazon S3 storage. The video played correctly on my test channel. However, I think I may know what is causing the problems reported here. My video content providers use YouTube to share their videos. They've given me permission to download their videos and show them on my channel. Before I can load them to Amazon, I "re-code" them using Nero. It is my speculation that if you use a video source, like YouTube, that does not allow direct streaming from their site (their TOS does not allow it) to the Roku, you'll run into these types of problems. If you use Amazon S3 for your video server, you should be able to turn on logging and see the actual cause of the video not playing. I'm guessing that those who have converted their videos from mp4 to m4v are "re-coding" as I am.
FREE Windows desktop software for converting Direct Publisher channels to SceneGraph (SDK), for creating BIF (Trick Play) files, Roku (MRSS, JSON) feed files, and FireTV feed files @ GitHub/rrirower.
Late last night I was able to get my mp4 video to play. I didn't have to change it to m4v. I had made a mistake on my end yesterday when I went to upload the video from the file that had not been converted yet.
Ahh, I think you might be right about the coding issue from Youtube. I initially had the videos on Youtube but downloaded them from Youtube to my local machine. Do you think Youtube adds some kind of encoding that makes it problematic to play the videos on another platform? I'll try recoding them. When I converted from mp4 to m4v, I just used http://www.convertfiles.com/. The videos are all really short, so it wasn't a huge hassle. I'll use the same tool to convert the m4v's back to mp4 and see if it fixes the issue.