|
NAMElibrtmp - RTMPDump Real-Time Messaging Protocol APILIBRARYRTMPDump RTMP (librtmp, -lrtmp)SYNOPSIS#include <librtmp/rtmp.h>DESCRIPTIONThe Real-Time Messaging Protocol (RTMP) is used for streaming multimedia content across a TCP/IP network. This API provides most client functions and a few server functions needed to support RTMP, RTMP tunneled in HTTP (RTMPT), encrypted RTMP (RTMPE), RTMP over SSL/TLS (RTMPS) and tunneled variants of these encrypted types (RTMPTE, RTMPTS). The basic RTMP specification has been published by Adobe but this API was reverse-engineered without use of the Adobe specification. As such, it may deviate from any published specifications but it usually duplicates the actual behavior of the original Adobe clients.The RTMPDump software package includes a basic client utility program in rtmpdump(1), some sample servers, and a library used to provide programmatic access to the RTMP protocol. This man page gives an overview of the RTMP library routines. These routines are found in the -lrtmp library. Many other routines are also available, but they are not documented yet. The basic interaction is as follows. A session handle is created using RTMP_Alloc() and initialized using RTMP_Init(). All session parameters are provided using RTMP_SetupURL(). The network connection is established using RTMP_Connect(), and then the RTMP session is established using RTMP_ConnectStream(). The stream is read using RTMP_Read(). A client can publish a stream by calling RTMP_EnableWrite() before the RTMP_Connect() call, and then using RTMP_Write() after the session is established. While a stream is playing it may be paused and unpaused using RTMP_Pause(). The stream playback position can be moved using RTMP_Seek(). When RTMP_Read() returns 0 bytes, the stream is complete and may be closed using RTMP_Close(). The session handle is freed using RTMP_Free(). All data is transferred using FLV format. The basic session requires an RTMP URL. The RTMP URL format is of the form rtmp[t][e|s]://hostname[:port][/app[/playpath]] Plain rtmp, as well as tunneled and encrypted sessions are supported. Additional options may be specified by appending space-separated key=value pairs to the URL. Special characters in values may need to be escaped to prevent misinterpretation by the option parser. The escape encoding uses a backslash followed by two hexadecimal digits representing the ASCII value of the character. E.g., spaces must be escaped as \20 and backslashes must be escaped as \5c. OPTIONSNetwork ParametersThese options define how to connect to the media server.
Connection ParametersThese options define the content of the RTMP Connect request packet. If correct values are not provided, the media server will reject the connection attempt.
Session ParametersThese options take effect after the Connect request has succeeded.
Security ParametersThese options handle additional authentication requests from the server.
EXAMPLESAn example character string suitable for use with RTMP_SetupURL():"rtmp://flashserver:1935/ondemand/thefile swfUrl=http://flashserver/player.swf swfVfy=1" ENVIRONMENT
FILES
SEE ALSOrtmpdump(1), rtmpgw(8)AUTHORSAndrej Stepanchuk, Howard Chu, The Flvstreamer Team<http://rtmpdump.mplayerhq.hu>
Visit the GSP FreeBSD Man Page Interface. |