without more information I'd guess you aren't defining your arrays properly. For example you listed "StreamFormat" only once even though you should have two (albeit identical) values.
Do you have debug running on your box? If not turn it on and if yes, add more debug output so you can clearly see what's being requested and why it's failing.
I figured out the problem.
Apparently Roku does not like URLs that use SSL (HTTPS). The signed URLs generated through the Ruby AWS API use HTTPS by default. Changing this over to plain HTTP fixed the playback problem.
After getting it working I converted it over to use the new Streams format that I was unaware of at the time and it still works.