Here is a quick heads up on an issue you may encounter when streaming video using Flash Media Playback and f4m files to provide dynamic streaming whereby the player will automatically pick the correct bitrate version depending on the user's connection speed.
In my case I wanted to stream my videos using Amazon's Cloudfront service. A typical RTMP URL will look something like this:
2<manifest xmlns="http://ns.adobe.com/f4m/1.0">
3<id>Dynamic Streaming</id>
4<duration></duration>
5<mimeType>video/mp4</mimeType>
6<baseURL>rtmp://saaabbbccc.cloudfront.net/cfx/st</baseURL>
7<media url="mp4:myvideo_500.mp4" bitrate="500" width="640" height="480" />
8<media url="mp4:myvideo_1000.mp4" bitrate="1000" width="640" height="480" />
9<media url="mp4:myvideo_1500.mp4" bitrate="1500" width="640" height="480" />
10</manifest>
2<manifest xmlns="http://ns.adobe.com/f4m/1.0">
3<id>Dynamic Streaming</id>
4<duration></duration>
5<mimeType>video/mp4</mimeType>
6<baseURL>rtmp://saaabbbccc.cloudfront.net/cfx/st/_definst_</baseURL>
7<media url="mp4:myvideo_500.mp4" bitrate="500" width="640" height="480" />
8<media url="mp4:myvideo_1000.mp4" bitrate="1000" width="640" height="480" />
9<media url="mp4:myvideo_1500.mp4" bitrate="1500" width="640" height="480" />
10</manifest>
And one final gotcha: if you host your f4m files in an Amazon S3 bucket (but not your streaming bucket, you need to use a separate non-streaming bucket for non-video files) you may require your own crossdomain file inside it or the Adobe hosted Flash Media Playback SWF won't be able to load it.
A free tool to help you manage your S3 buckets (if you are on Windows - I run this tool in a VM) is CloudBerry Explorer. It's one of the better S3 related tools out there. Do you know an equally good one for OSX?

#1 by Robert Reinhardt on 5/7/11 - 2:40 PM
urlIncludesFMSApplicationInstance
If you set this to true, then the URL contains the instance name. If false, then you don't include it. Default value is false.
#2 by Stefan Richter on 5/7/11 - 3:00 PM
But in this case it wouldn't have helped, right? I mean I had the implicit 'false' set by omitting that parameter, yet only once I added the instance name in the f4m did the video play. That seems to be the opposite of what I would have expected.
I think some people may get caught out by this, especially as Amazon only provides examples to single video files (which do not seem to require the app instance for normal non-f4m playback), not dynamic streaming examples.
Maybe I am a little out of touch with streaming Flash video, but I found it really frustrating at times to get things up and running this time. And it's not as if I hadn't done it once or twice before :-)
I always get caught out by the same issues it seems - always related to stream paths, RTMP URLs and instance names. How someone new to Flash video would figure this out I do not know. In fact when I googled f4m I found lots of docs which all talked about the file format in relation to http streaming. At one stage I was even unsure if it would work with RTMP. Maybe I looked in the wrong place but hey, the customer is always right and he says it was difficult ;-)
#3 by Hasan Otuome on 5/7/11 - 3:15 PM
http://panic.com/transmit
http://3hubapp.com
http://fivedetails.com/flow
http://cyberduck.ch
#4 by Stefan Richter on 5/7/11 - 3:31 PM