FFmpeg
|
RTP protocol. More...
#include "libavutil/parseutils.h"
#include "libavutil/avstring.h"
#include "libavutil/opt.h"
#include "avformat.h"
#include "avio_internal.h"
#include "rtp.h"
#include "rtpproto.h"
#include "url.h"
#include <stdarg.h>
#include "internal.h"
#include "network.h"
#include "os_support.h"
#include <fcntl.h>
Go to the source code of this file.
Data Structures | |
struct | RTPContext |
Macros | |
#define | OFFSET(x) offsetof(RTPContext, x) |
#define | D AV_OPT_FLAG_DECODING_PARAM |
#define | E AV_OPT_FLAG_ENCODING_PARAM |
Functions | |
int | ff_rtp_set_remote_url (URLContext *h, const char *uri) |
If no filename is given to av_open_input_file because you want to get the local port first, then you must call this function to set the remote server address. More... | |
static struct addrinfo * | rtp_resolve_host (const char *hostname, int port, int type, int family, int flags) |
static int | compare_addr (const struct sockaddr_storage *a, const struct sockaddr_storage *b) |
static int | get_port (const struct sockaddr_storage *ss) |
static void | set_port (struct sockaddr_storage *ss, int port) |
static int | rtp_check_source_lists (RTPContext *s, struct sockaddr_storage *source_addr_ptr) |
static | av_printf_format (3, 4) |
add option to url of the form: "http://host:port/path?option1=val1&option2=val2... More... | |
static void | build_udp_url (RTPContext *s, char *buf, int buf_size, const char *hostname, int port, int local_port, const char *include_sources, const char *exclude_sources) |
static void | rtp_parse_addr_list (URLContext *h, char *buf, struct sockaddr_storage ***address_list_ptr, int *address_list_size_ptr) |
static int | rtp_open (URLContext *h, const char *uri, int flags) |
url syntax: rtp://host:port[?option=val...] option: 'ttl=n' : set the ttl value (for multicast only) 'rtcpport=n' : set the remote rtcp port to n 'localrtpport=n' : set the local rtp port to n 'localrtcpport=n' : set the local rtcp port to n 'pkt_size=n' : set max packet size 'connect=0/1' : do a connect() on the UDP socket 'sources=ip[,ip]' : list allowed source IP addresses 'block=ip[,ip]' : list disallowed source IP addresses 'write_to_source=0/1' : send packets to the source address of the latest received packet 'dscp=n' : set DSCP value to n (QoS) deprecated option: 'localport=n' : set the local port to n More... | |
static int | rtp_read (URLContext *h, uint8_t *buf, int size) |
static int | rtp_write (URLContext *h, const uint8_t *buf, int size) |
static int | rtp_close (URLContext *h) |
int | ff_rtp_get_local_rtp_port (URLContext *h) |
Return the local rtp port used by the RTP connection. More... | |
int | ff_rtp_get_local_rtcp_port (URLContext *h) |
Return the local rtcp port used by the RTP connection. More... | |
static int | rtp_get_file_handle (URLContext *h) |
static int | rtp_get_multi_file_handle (URLContext *h, int **handles, int *numhandles) |
Variables | |
static const AVOption | options [] |
static const AVClass | rtp_class |
const URLProtocol | ff_rtp_protocol |
RTP protocol.
Definition in file rtpproto.c.
#define OFFSET | ( | x | ) | offsetof(RTPContext, x) |
Definition at line 64 of file rtpproto.c.
#define D AV_OPT_FLAG_DECODING_PARAM |
Definition at line 65 of file rtpproto.c.
#define E AV_OPT_FLAG_ENCODING_PARAM |
Definition at line 66 of file rtpproto.c.
int ff_rtp_set_remote_url | ( | URLContext * | h, |
const char * | uri | ||
) |
If no filename is given to av_open_input_file because you want to get the local port first, then you must call this function to set the remote server address.
h | media file context |
uri | of the remote server |
Definition at line 100 of file rtpproto.c.
|
static |
Definition at line 129 of file rtpproto.c.
Referenced by rtp_parse_addr_list().
|
static |
Definition at line 148 of file rtpproto.c.
Referenced by rtp_check_source_lists().
|
static |
Definition at line 168 of file rtpproto.c.
Referenced by rtp_write().
|
static |
Definition at line 179 of file rtpproto.c.
Referenced by rtp_write().
|
static |
Definition at line 189 of file rtpproto.c.
Referenced by rtp_read().
|
static |
add option to url of the form: "http://host:port/path?option1=val1&option2=val2...
Definition at line 213 of file rtpproto.c.
|
static |
Definition at line 228 of file rtpproto.c.
Referenced by rtp_open().
|
static |
Definition at line 255 of file rtpproto.c.
Referenced by rtp_open().
|
static |
url syntax: rtp://host:port[?option=val...] option: 'ttl=n' : set the ttl value (for multicast only) 'rtcpport=n' : set the remote rtcp port to n 'localrtpport=n' : set the local rtp port to n 'localrtcpport=n' : set the local rtcp port to n 'pkt_size=n' : set max packet size 'connect=0/1' : do a connect() on the UDP socket 'sources=ip[,ip]' : list allowed source IP addresses 'block=ip[,ip]' : list disallowed source IP addresses 'write_to_source=0/1' : send packets to the source address of the latest received packet 'dscp=n' : set DSCP value to n (QoS) deprecated option: 'localport=n' : set the local port to n
if rtcpport isn't set the rtcp port will be the rtp port + 1 if local rtp port isn't set any available port will be used for the local rtp and rtcp ports if the local rtcp port is not set it will be the local rtp port + 1
Definition at line 318 of file rtpproto.c.
|
static |
Definition at line 476 of file rtpproto.c.
|
static |
Definition at line 517 of file rtpproto.c.
|
static |
Definition at line 603 of file rtpproto.c.
int ff_rtp_get_local_rtp_port | ( | URLContext * | h | ) |
Return the local rtp port used by the RTP connection.
h | media file context |
Definition at line 627 of file rtpproto.c.
Referenced by rtsp_cmd_setup(), and rtsp_read_setup().
int ff_rtp_get_local_rtcp_port | ( | URLContext * | h | ) |
Return the local rtcp port used by the RTP connection.
h | media file context |
Definition at line 639 of file rtpproto.c.
Referenced by rtsp_cmd_setup().
|
static |
Definition at line 645 of file rtpproto.c.
|
static |
Definition at line 651 of file rtpproto.c.
|
static |
Definition at line 67 of file rtpproto.c.
|
static |
Definition at line 83 of file rtpproto.c.
const URLProtocol ff_rtp_protocol |
Definition at line 664 of file rtpproto.c.