RTMP protocol based on http://rtmpdump.mplayerhq.hu/ librtmp.
More...
#include "libavutil/avstring.h"
#include "libavutil/mathematics.h"
#include "libavutil/opt.h"
#include "avformat.h"
#include "url.h"
#include <librtmp/rtmp.h>
#include <librtmp/log.h>
Go to the source code of this file.
|
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) |
|
RTMP protocol based on http://rtmpdump.mplayerhq.hu/ librtmp.
Definition in file librtmp.c.
#define RTMP_CLASS |
( |
|
flavor | ) |
|
Value:static const AVClass lib ## flavor ## _class = {\
};
Definition at line 317 of file librtmp.c.
static void rtmp_log |
( |
int |
level, |
|
|
const char * |
fmt, |
|
|
va_list |
args |
|
) |
| |
|
static |
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 91 of file librtmp.c.
static int rtmp_read_pause |
( |
URLContext * |
s, |
|
|
int |
pause |
|
) |
| |
|
static |
static int64_t rtmp_read_seek |
( |
URLContext * |
s, |
|
|
int |
stream_index, |
|
|
int64_t |
timestamp, |
|
|
int |
flags |
|
) |
| |
|
static |
Initial value:= {
{
"rtmp_buffer",
"Set buffer time in milliseconds. The default is 3000.",
OFFSET(client_buffer_time),
AV_OPT_TYPE_STRING, {.str =
"3000"}, 0, 0,
DEC|
ENC},
{
"rtmp_live",
"Specify that the media is a live stream.",
OFFSET(live),
AV_OPT_TYPE_INT, {.i64 = 0}, INT_MIN, INT_MAX,
DEC,
"rtmp_live"},
{
"rtmp_pageurl",
"URL of the web page in which the media was embedded. By default no value will be sent.",
OFFSET(pageurl),
AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0,
DEC},
{
"rtmp_subscribe",
"Name of live stream to subscribe to. Defaults to rtmp_playpath.",
OFFSET(subscribe),
AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0,
DEC},
{
"rtmp_swfverify",
"URL to player swf file, compute hash/size automatically. (unimplemented)",
OFFSET(swfverify),
AV_OPT_TYPE_STRING, {.str = NULL }, 0, 0,
DEC},
{ NULL },
}
Definition at line 299 of file librtmp.c.
Initial value:= {
.name = "rtmp",
.priv_data_class = &librtmp_class,
}
Definition at line 326 of file librtmp.c.
Initial value:= {
.name = "rtmpt",
.priv_data_class = &librtmpt_class,
}
Definition at line 341 of file librtmp.c.
Initial value:= {
.name = "rtmpe",
.priv_data_class = &librtmpe_class,
}
Definition at line 356 of file librtmp.c.
Initial value:= {
.name = "rtmpte",
.priv_data_class = &librtmpte_class,
}
Definition at line 371 of file librtmp.c.
Initial value:= {
.name = "rtmps",
.priv_data_class = &librtmps_class,
}
Definition at line 386 of file librtmp.c.