FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
rtmphttp.c File Reference

RTMP HTTP protocol. More...

#include "libavutil/avstring.h"
#include "libavutil/intfloat.h"
#include "libavutil/opt.h"
#include "libavutil/time.h"
#include "internal.h"
#include "http.h"
#include "rtmp.h"

Go to the source code of this file.

Data Structures

struct  RTMP_HTTPContext
 

Macros

#define RTMPT_DEFAULT_PORT   80
 
#define RTMPTS_DEFAULT_PORT   RTMPS_DEFAULT_PORT
 
#define OFFSET(x)   offsetof(RTMP_HTTPContext, x)
 
#define DEC   AV_OPT_FLAG_DECODING_PARAM
 

Functions

static int rtmp_http_send_cmd (URLContext *h, const char *cmd)
 
static int rtmp_http_write (URLContext *h, const uint8_t *buf, int size)
 
static int rtmp_http_read (URLContext *h, uint8_t *buf, int size)
 
static int rtmp_http_close (URLContext *h)
 
static int rtmp_http_open (URLContext *h, const char *uri, int flags)
 

Variables

static const AVOption ffrtmphttp_options []
 
static const AVClass ffrtmphttp_class
 
const URLProtocol ff_ffrtmphttp_protocol
 

Detailed Description

RTMP HTTP protocol.

Definition in file rtmphttp.c.

Macro Definition Documentation

#define RTMPT_DEFAULT_PORT   80

Definition at line 35 of file rtmphttp.c.

Referenced by rtmp_http_open().

#define RTMPTS_DEFAULT_PORT   RTMPS_DEFAULT_PORT

Definition at line 36 of file rtmphttp.c.

Referenced by rtmp_http_open().

#define OFFSET (   x)    offsetof(RTMP_HTTPContext, x)

Definition at line 261 of file rtmphttp.c.

#define DEC   AV_OPT_FLAG_DECODING_PARAM

Definition at line 262 of file rtmphttp.c.

Function Documentation

static int rtmp_http_send_cmd ( URLContext h,
const char *  cmd 
)
static

Definition at line 55 of file rtmphttp.c.

Referenced by rtmp_http_close(), and rtmp_http_read().

static int rtmp_http_write ( URLContext h,
const uint8_t buf,
int  size 
)
static

Definition at line 85 of file rtmphttp.c.

Referenced by rtmp_http_close(), and rtmp_http_read().

static int rtmp_http_read ( URLContext h,
uint8_t buf,
int  size 
)
static

Definition at line 105 of file rtmphttp.c.

Referenced by rtmp_http_close().

static int rtmp_http_close ( URLContext h)
static

Definition at line 157 of file rtmphttp.c.

Referenced by rtmp_http_open().

static int rtmp_http_open ( URLContext h,
const char *  uri,
int  flags 
)
static

Definition at line 184 of file rtmphttp.c.

Variable Documentation

const AVOption ffrtmphttp_options[]
static
Initial value:
= {
{"ffrtmphttp_tls", "Use a HTTPS tunneling connection (RTMPTS).", OFFSET(tls), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, DEC},
{ NULL },
}
#define NULL
Definition: coverity.c:32
#define OFFSET(x)
Definition: rtmphttp.c:261
#define DEC
Definition: rtmphttp.c:262

Definition at line 264 of file rtmphttp.c.

const AVClass ffrtmphttp_class
static
Initial value:
= {
.class_name = "ffrtmphttp",
.item_name = av_default_item_name,
.option = ffrtmphttp_options,
}
#define LIBAVUTIL_VERSION_INT
Definition: version.h:86
static const AVOption ffrtmphttp_options[]
Definition: rtmphttp.c:264
av_default_item_name

Definition at line 269 of file rtmphttp.c.

const URLProtocol ff_ffrtmphttp_protocol
Initial value:
= {
.name = "ffrtmphttp",
.url_open = rtmp_http_open,
.url_read = rtmp_http_read,
.url_write = rtmp_http_write,
.url_close = rtmp_http_close,
.priv_data_size = sizeof(RTMP_HTTPContext),
.priv_data_class= &ffrtmphttp_class,
.default_whitelist = "https,http,tcp,tls",
}
#define URL_PROTOCOL_FLAG_NETWORK
Definition: url.h:34
static int flags
Definition: log.c:57
static int rtmp_http_open(URLContext *h, const char *uri, int flags)
Definition: rtmphttp.c:184
static int rtmp_http_close(URLContext *h)
Definition: rtmphttp.c:157
static int rtmp_http_write(URLContext *h, const uint8_t *buf, int size)
Definition: rtmphttp.c:85
static const AVClass ffrtmphttp_class
Definition: rtmphttp.c:269
static int rtmp_http_read(URLContext *h, uint8_t *buf, int size)
Definition: rtmphttp.c:105

Definition at line 276 of file rtmphttp.c.