libavformat/sdp.c File Reference

#include <string.h>
#include "libavutil/avstring.h"
#include "libavutil/base64.h"
#include "libavcodec/xiph.h"
#include "avformat.h"
#include "internal.h"
#include "avc.h"
#include "rtp.h"
#include "network.h"

Go to the source code of this file.

Data Structures

struct  sdp_session_level

Defines

#define MAX_EXTRADATA_SIZE   ((INT_MAX - 10) / 2)
#define MAX_PSET_SIZE   1024

Functions

static void sdp_write_address (char *buff, int size, const char *dest_addr, const char *dest_type, int ttl)
static void sdp_write_header (char *buff, int size, struct sdp_session_level *s)
static int resolve_destination (char *dest_addr, int size, char *type, int type_size)
static int sdp_get_address (char *dest_addr, int size, int *ttl, const char *url)
static char * extradata2psets (AVCodecContext *c)
static char * extradata2config (AVCodecContext *c)
static char * xiph_extradata2config (AVCodecContext *c)
static char * sdp_write_media_attributes (char *buff, int size, AVCodecContext *c, int payload_type)
void ff_sdp_write_media (char *buff, int size, AVCodecContext *c, const char *dest_addr, const char *dest_type, int port, int ttl)
 Append the media-specific SDP fragment for the media stream c to the buffer buff.
int avf_sdp_create (AVFormatContext *ac[], int n_files, char *buff, int size)
 Generate an SDP for an RTP session.


Define Documentation

#define MAX_EXTRADATA_SIZE   ((INT_MAX - 10) / 2)

Definition at line 34 of file sdp.c.

Referenced by extradata2config(), and extradata2psets().

#define MAX_PSET_SIZE   1024

Definition at line 149 of file sdp.c.

Referenced by extradata2psets().


Function Documentation

int avf_sdp_create ( AVFormatContext ac[],
int  n_files,
char *  buff,
int  size 
)

Generate an SDP for an RTP session.

Parameters:
ac array of AVFormatContexts describing the RTP streams. If the array is composed by only one context, such context can contain multiple AVStreams (one AVStream per RTP stream). Otherwise, all the contexts in the array (an AVCodecContext per RTP stream) must contain only one AVStream.
n_files number of AVCodecContexts contained in ac
buff buffer where the SDP will be stored (must be allocated by the caller)
size the size of the buffer
Returns:
0 if OK, AVERROR_xxx on error

Definition at line 476 of file sdp.c.

Referenced by ff_rtsp_setup_output_streams(), prepare_sdp_description(), print_sdp(), and sap_write_header().

static char* extradata2config ( AVCodecContext c  )  [static]

Definition at line 211 of file sdp.c.

Referenced by sdp_write_media_attributes().

static char* extradata2psets ( AVCodecContext c  )  [static]

Definition at line 150 of file sdp.c.

Referenced by sdp_write_media_attributes().

void ff_sdp_write_media ( char *  buff,
int  size,
AVCodecContext c,
const char *  dest_addr,
const char *  dest_type,
int  port,
int  ttl 
)

Append the media-specific SDP fragment for the media stream c to the buffer buff.

Note, the buffer needs to be initialized, since it is appended to existing content.

Parameters:
buff the buffer to append the SDP fragment to
size the size of the buff buffer
c the AVCodecContext of the media to describe
dest_addr the destination address of the media stream, may be NULL
dest_type the destination address type, may be NULL
port the destination port of the media stream, 0 if unknown
ttl the time to live of the stream, 0 if not multicast

Definition at line 450 of file sdp.c.

Referenced by avf_sdp_create(), and mov_write_udta_sdp().

static int resolve_destination ( char *  dest_addr,
int  size,
char *  type,
int  type_size 
) [static]

Definition at line 84 of file sdp.c.

Referenced by avf_sdp_create().

static int sdp_get_address ( char *  dest_addr,
int  size,
int *  ttl,
const char *  url 
) [static]

Definition at line 118 of file sdp.c.

Referenced by avf_sdp_create().

static void sdp_write_address ( char *  buff,
int  size,
const char *  dest_addr,
const char *  dest_type,
int  ttl 
) [static]

Definition at line 53 of file sdp.c.

Referenced by ff_sdp_write_media(), and sdp_write_header().

static void sdp_write_header ( char *  buff,
int  size,
struct sdp_session_level s 
) [static]

Definition at line 69 of file sdp.c.

Referenced by avf_sdp_create().

static char* sdp_write_media_attributes ( char *  buff,
int  size,
AVCodecContext c,
int  payload_type 
) [static]

Definition at line 301 of file sdp.c.

Referenced by ff_sdp_write_media().

static char* xiph_extradata2config ( AVCodecContext c  )  [static]

Definition at line 232 of file sdp.c.

Referenced by sdp_write_media_attributes().


Generated on Wed Jan 19 23:49:51 2011 for FFmpeg by  doxygen 1.5.6