librtmp.c File Reference

RTMP protocol based on http://rtmpdump.mplayerhq.hu/ librtmp. More...

#include "libavutil/mathematics.h"
#include "avformat.h"
#include "url.h"
#include <librtmp/rtmp.h>
#include <librtmp/log.h>

Go to the source code of this file.

Functions

static void rtmp_log (int level, const char *fmt, va_list args)
static int rtmp_close (URLContext *s)
static int rtmp_open (URLContext *s, const char *uri, int flags)
 Open RTMP connection and verify that the stream can be played.
static int rtmp_write (URLContext *s, const uint8_t *buf, int size)
static int rtmp_read (URLContext *s, uint8_t *buf, int size)
static int rtmp_read_pause (URLContext *s, int pause)
static int64_t rtmp_read_seek (URLContext *s, int stream_index, int64_t timestamp, int flags)
static int rtmp_get_file_handle (URLContext *s)

Variables

URLProtocol ff_rtmp_protocol
URLProtocol ff_rtmpt_protocol
URLProtocol ff_rtmpe_protocol
URLProtocol ff_rtmpte_protocol
URLProtocol ff_rtmps_protocol

Detailed Description

RTMP protocol based on http://rtmpdump.mplayerhq.hu/ librtmp.

Definition in file librtmp.c.

Function Documentation

static int rtmp_close ( URLContext s)
static

Definition at line 50 of file librtmp.c.

static int rtmp_get_file_handle ( URLContext s)
static

Definition at line 148 of file librtmp.c.

static void rtmp_log ( int  level,
const char *  fmt,
va_list  args 
)
static

Definition at line 34 of file librtmp.c.

Referenced by rtmp_open().

static int rtmp_open ( URLContext s,
const char *  uri,
int  flags 
)
static

Open RTMP connection and verify that the stream can be played.

URL syntax: rtmp://server[:port][/app][/playpath][ keyword=value]... where 'app' is first one or two directories in the path (e.g. /ondemand/, /flash/live/, etc.) and 'playpath' is a file name (the rest of the path, may be prefixed with "mp4:")

Additional RTMP library options may be appended as space-separated key-value pairs.

Definition at line 70 of file librtmp.c.

static int rtmp_read ( URLContext s,
uint8_t *  buf,
int  size 
)
static

Definition at line 114 of file librtmp.c.

static int rtmp_read_pause ( URLContext s,
int  pause 
)
static

Definition at line 121 of file librtmp.c.

static int64_t rtmp_read_seek ( URLContext s,
int  stream_index,
int64_t  timestamp,
int  flags 
)
static

Definition at line 130 of file librtmp.c.

static int rtmp_write ( URLContext s,
const uint8_t *  buf,
int  size 
)
static

Definition at line 107 of file librtmp.c.

Variable Documentation

URLProtocol ff_rtmp_protocol
Initial value:
{
.name = "rtmp",
.url_open = rtmp_open,
.url_read = rtmp_read,
.url_write = rtmp_write,
.url_close = rtmp_close,
.url_read_pause = rtmp_read_pause,
.url_read_seek = rtmp_read_seek,
.url_get_file_handle = rtmp_get_file_handle,
.priv_data_size = sizeof(RTMP),
}

Definition at line 155 of file librtmp.c.

URLProtocol ff_rtmpe_protocol
Initial value:
{
.name = "rtmpe",
.url_open = rtmp_open,
.url_read = rtmp_read,
.url_write = rtmp_write,
.url_close = rtmp_close,
.url_read_pause = rtmp_read_pause,
.url_read_seek = rtmp_read_seek,
.url_get_file_handle = rtmp_get_file_handle,
.priv_data_size = sizeof(RTMP),
}

Definition at line 181 of file librtmp.c.

URLProtocol ff_rtmps_protocol
Initial value:
{
.name = "rtmps",
.url_open = rtmp_open,
.url_read = rtmp_read,
.url_write = rtmp_write,
.url_close = rtmp_close,
.url_read_pause = rtmp_read_pause,
.url_read_seek = rtmp_read_seek,
.url_get_file_handle = rtmp_get_file_handle,
.priv_data_size = sizeof(RTMP),
}

Definition at line 207 of file librtmp.c.

URLProtocol ff_rtmpt_protocol
Initial value:
{
.name = "rtmpt",
.url_open = rtmp_open,
.url_read = rtmp_read,
.url_write = rtmp_write,
.url_close = rtmp_close,
.url_read_pause = rtmp_read_pause,
.url_read_seek = rtmp_read_seek,
.url_get_file_handle = rtmp_get_file_handle,
.priv_data_size = sizeof(RTMP),
}

Definition at line 168 of file librtmp.c.

URLProtocol ff_rtmpte_protocol
Initial value:
{
.name = "rtmpte",
.url_open = rtmp_open,
.url_read = rtmp_read,
.url_write = rtmp_write,
.url_close = rtmp_close,
.url_read_pause = rtmp_read_pause,
.url_read_seek = rtmp_read_seek,
.url_get_file_handle = rtmp_get_file_handle,
.priv_data_size = sizeof(RTMP),
}

Definition at line 194 of file librtmp.c.