rtmpdump is a toolkit for RTMP streams. All forms of RTMP are supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.
Copyright (C) 2009 Andrej Stepanchuk
Copyright (C) 2010-2011 Howard Chu
Download the source:
git clone git://git.ffmpeg.org/rtmpdump
That will get you the very latest code. If you're looking for a specific older release you can look under:
The latest release is 2.4 which you can check out from git. Aside from various minor bugfixes since 2.3, RTMPE type 9 handshakes are now supported.
Releases will also be provided as compressed tar archives in
the download directory. There are also zip archives
in this directory; these contain binaries of builds for Windows or other
Read the ChangeLog for a summary of the changes in each release.
To build with all features enabled, you will also need a Cryptography library and the zlib compression library. It uses OpenSSL by default, but you can also use GnuTLS or PolarSSL instead. (Note that the Windows binaries here are now built statically with PolarSSL so no other DLLs are needed.)
Part of the aim in the 2.x rewrite is to make the code usable as a standalone library. The API is not frozen, since we don't yet know what functions other client authors are likely to need. If you're working on an application that could benefit from the RTMP support in this code, please join the mailing list and discuss your ideas.
As of 2.2 the main protocol code is now available in its own library, librtmp.
This library is licensed under LGPL so it may be used freely in other
applications. As of 2.3 the library may also be built as a shared library,
not just a static library
Some manpages have been added for 2.2. You can read the rtmpdump manpage and the rtmpgw manpage online as well.
An overview of the library is also available in the librtmp manpage.
As of 2.1 there are two additional server programs, rtmpsrv and rtmpsuck.
rtmpsrv is a stub for a server; it logs the connect and play parameters from a regular client that connects to it. It then invokes rtmpdump with those parameters to retrieve the stream.
rtmpsuck is a transparent proxy; it intercepts connections from a client and then makes an outbound connection to the real server. After all handshaking is complete and encryption keys with both sides are negotiated, it records the cleartext stream data into files while relaying the data from the server to the client.
2010-06-30: Download source tarball rtmpdump-2.3.tgz
2013-01-09: Download Windows build rtmpdump-2.4-git-010913-windows.zip
2010-06-30: Download Android build rtmpdump-2.3-android.zip
Subscribe to the mailing list:
or read the list archives: http://lists.mplayerhq.hu/pipermail/rtmpdump/
Discussion forums: http://stream-recorder.com/forum/rtmpdump-f54.html - note, that site is not affiliated with the RTMPDump project, but they're pretty active with helping answer questions.
Projects using rtmpdump:
TV3 al Cabàs
rtmpdumphelper (windows network hook for rtmpsuck/rtmpsrv)
Projects using librtmp:
MPlayer (thru ffmpeg)
HTS Home Theater System
Patches for librtmp on other projects:
rtspdump is a program which downloads rtsp:// multimedia stream from a Microsoft WMServer.
If you know of more related projects and want to see them linked, please email firstname.lastname@example.org.