libavformat/rtmppkt.c File Reference

#include "libavcodec/bytestream.h"
#include "libavutil/avstring.h"
#include "avformat.h"
#include "rtmppkt.h"
#include "flv.h"

Go to the source code of this file.

Functions

void ff_amf_write_bool (uint8_t **dst, int val)
 Writes boolean value in AMF format to buffer.
void ff_amf_write_number (uint8_t **dst, double val)
 Writes number in AMF format to buffer.
void ff_amf_write_string (uint8_t **dst, const char *str)
 Writes string in AMF format to buffer.
void ff_amf_write_null (uint8_t **dst)
 Writes AMF NULL value to buffer.
void ff_amf_write_object_start (uint8_t **dst)
 Writes marker for AMF object to buffer.
void ff_amf_write_field_name (uint8_t **dst, const char *str)
 Writes string used as field name in AMF object to buffer.
void ff_amf_write_object_end (uint8_t **dst)
 Writes marker for end of AMF object to buffer.
int ff_rtmp_packet_read (URLContext *h, RTMPPacket *p, int chunk_size, RTMPPacket *prev_pkt)
 Reads RTMP packet sent by the server.
int ff_rtmp_packet_write (URLContext *h, RTMPPacket *pkt, int chunk_size, RTMPPacket *prev_pkt)
 Sends RTMP packet to the server.
int ff_rtmp_packet_create (RTMPPacket *pkt, int channel_id, RTMPPacketType type, int timestamp, int size)
 Creates new RTMP packet with given attributes.
void ff_rtmp_packet_destroy (RTMPPacket *pkt)
 Frees RTMP packet.
int ff_amf_tag_size (const uint8_t *data, const uint8_t *data_end)
 Calculates number of bytes taken by first AMF entry in data.
int ff_amf_get_field_value (const uint8_t *data, const uint8_t *data_end, const uint8_t *name, uint8_t *dst, int dst_size)
 Retrieves value of given AMF object field in string form.
static const char * rtmp_packet_type (int type)
static void ff_amf_tag_contents (void *ctx, const uint8_t *data, const uint8_t *data_end)
void ff_rtmp_packet_dump (void *ctx, RTMPPacket *p)
 Prints information and contents of RTMP packet.


Function Documentation

static void ff_amf_tag_contents ( void *  ctx,
const uint8_t *  data,
const uint8_t *  data_end 
) [static]

Definition at line 360 of file rtmppkt.c.

Referenced by ff_rtmp_packet_dump().

int ff_rtmp_packet_create ( RTMPPacket pkt,
int  channel_id,
RTMPPacketType  type,
int  timestamp,
int  size 
)

Creates new RTMP packet with given attributes.

Parameters:
pkt packet
channel_id packet channel ID
type packet type
timestamp packet timestamp
size packet size
Returns:
zero on success, negative value otherwise

Definition at line 232 of file rtmppkt.c.

Referenced by ff_rtmp_packet_read(), gen_bytes_read(), gen_connect(), gen_create_stream(), gen_delete_stream(), gen_fcpublish_stream(), gen_fcunpublish_stream(), gen_play(), gen_pong(), gen_publish(), gen_release_stream(), and rtmp_write().

void ff_rtmp_packet_destroy ( RTMPPacket pkt  ) 

void ff_rtmp_packet_dump ( void *  ctx,
RTMPPacket p 
)

Prints information and contents of RTMP packet.

Parameters:
h output context
p packet to dump

Definition at line 422 of file rtmppkt.c.

Referenced by rtmp_parse_result().

int ff_rtmp_packet_read ( URLContext h,
RTMPPacket p,
int  chunk_size,
RTMPPacket prev_pkt 
)

Reads RTMP packet sent by the server.

Parameters:
h reader context
p packet
chunk_size current chunk size
prev_pkt previously read packet headers for all channels (may be needed for restoring incomplete packet header)
Returns:
number of bytes read on success, negative value otherwise

Definition at line 72 of file rtmppkt.c.

Referenced by get_packet().

int ff_rtmp_packet_write ( URLContext h,
RTMPPacket p,
int  chunk_size,
RTMPPacket prev_pkt 
)

Sends RTMP packet to the server.

Parameters:
h reader context
p packet to send
chunk_size current chunk size
prev_pkt previously sent packet headers for all channels (may be used for packet header compressing)
Returns:
number of bytes written on success, negative value otherwise

Definition at line 159 of file rtmppkt.c.

Referenced by gen_bytes_read(), gen_connect(), gen_create_stream(), gen_delete_stream(), gen_fcpublish_stream(), gen_fcunpublish_stream(), gen_play(), gen_pong(), gen_publish(), gen_release_stream(), rtmp_parse_result(), and rtmp_write().

static const char* rtmp_packet_type ( int  type  )  [static]

Definition at line 339 of file rtmppkt.c.

Referenced by ff_rtmp_packet_dump().


Generated on Fri Oct 26 02:36:55 2012 for FFmpeg by  doxygen 1.5.8