If you’ve ever needed to download video that’s distributed in a Flash application, you may have encountered a scenario where the video is being streamed via RTMP instead of progressively downloaded over HTTP. Luckily, there’s application called rtmpdump which, as its name suggests, is able to dump an RTMP stream as if you had downloaded a standard FLV.
After downloading and building the source, you can save the contents of an RTMP stream with the following command, replacing the RTMP url and the desired output file name:
rtmpdump -r rtmp://hotname[:port]/path -o output.flv
The program is distributed with a Perl script called get_iplayer, which apparently used to be capable of quickly finding Hulu streams and passing them to rtmpdump, but it looks like this feature isn’t currently working due to a recent Hulu obfuscation switcheroo. My fingers are crossed that this will be available again soon, but until then, the tool is still useful for pulling content from RTMP urls that you know about.