real_rmff.h File Reference

Go to the source code of this file.

Data Structures

struct  rmff_fileheader_t
struct  rmff_prop_t
struct  rmff_mdpr_t
struct  rmff_cont_t
struct  rmff_data_t
struct  rmff_header_t
struct  rmff_pheader_t

Defines

#define RMFF_HEADER_SIZE   0x12
#define RMFF_FILEHEADER_SIZE   18
#define RMFF_PROPHEADER_SIZE   50
#define RMFF_MDPRHEADER_SIZE   46
#define RMFF_CONTHEADER_SIZE   18
#define RMFF_DATAHEADER_SIZE   18
#define FOURCC_TAG(ch0, ch1, ch2, ch3)
#define RMF_TAG   FOURCC_TAG('.', 'R', 'M', 'F')
#define PROP_TAG   FOURCC_TAG('P', 'R', 'O', 'P')
#define MDPR_TAG   FOURCC_TAG('M', 'D', 'P', 'R')
#define CONT_TAG   FOURCC_TAG('C', 'O', 'N', 'T')
#define DATA_TAG   FOURCC_TAG('D', 'A', 'T', 'A')
#define INDX_TAG   FOURCC_TAG('I', 'N', 'D', 'X')
#define PNA_TAG   FOURCC_TAG('P', 'N', 'A', 0 )
#define MLTI_TAG   FOURCC_TAG('M', 'L', 'T', 'I')
#define PN_SAVE_ENABLED   0x01
#define PN_PERFECT_PLAY_ENABLED   0x02
#define PN_LIVE_BROADCAST   0x04

Functions

rmff_fileheader_trmff_new_fileheader (uint32_t num_headers)
rmff_prop_trmff_new_prop (uint32_t max_bit_rate, uint32_t avg_bit_rate, uint32_t max_packet_size, uint32_t avg_packet_size, uint32_t num_packets, uint32_t duration, uint32_t preroll, uint32_t index_offset, uint32_t data_offset, uint16_t num_streams, uint16_t flags)
rmff_mdpr_trmff_new_mdpr (uint16_t stream_number, uint32_t max_bit_rate, uint32_t avg_bit_rate, uint32_t max_packet_size, uint32_t avg_packet_size, uint32_t start_time, uint32_t preroll, uint32_t duration, const char *stream_name, const char *mime_type, uint32_t type_specific_len, const char *type_specific_data)
rmff_cont_trmff_new_cont (const char *title, const char *author, const char *copyright, const char *comment)
rmff_data_trmff_new_dataheader (uint32_t num_packets, uint32_t next_data_header)
rmff_header_trmff_scan_header (const char *data)
void rmff_scan_pheader (rmff_pheader_t *h, char *data)
rmff_header_trmff_scan_header_stream (int fd)
void rmff_print_header (rmff_header_t *h)
void rmff_fix_header (rmff_header_t *h)
int rmff_get_header_size (rmff_header_t *h)
int rmff_dump_header (rmff_header_t *h, void *buffer, int max)
void rmff_dump_pheader (rmff_pheader_t *h, char *data)
void rmff_free_header (rmff_header_t *h)


Define Documentation

#define CONT_TAG   FOURCC_TAG('C', 'O', 'N', 'T')

Referenced by rmff_new_cont().

#define DATA_TAG   FOURCC_TAG('D', 'A', 'T', 'A')

#define FOURCC_TAG ( ch0,
ch1,
ch2,
ch3   ) 

Value:

(((long)(unsigned char)(ch3)       ) | \
        ( (long)(unsigned char)(ch2) << 8  ) | \
        ( (long)(unsigned char)(ch1) << 16 ) | \
        ( (long)(unsigned char)(ch0) << 24 ) )

#define INDX_TAG   FOURCC_TAG('I', 'N', 'D', 'X')

#define MDPR_TAG   FOURCC_TAG('M', 'D', 'P', 'R')

Referenced by rmff_new_mdpr().

#define MLTI_TAG   FOURCC_TAG('M', 'L', 'T', 'I')

#define PN_LIVE_BROADCAST   0x04

Referenced by rmff_print_header().

#define PN_PERFECT_PLAY_ENABLED   0x02

Referenced by rmff_print_header().

#define PN_SAVE_ENABLED   0x01

Referenced by rmff_print_header().

#define PNA_TAG   FOURCC_TAG('P', 'N', 'A', 0 )

#define PROP_TAG   FOURCC_TAG('P', 'R', 'O', 'P')

Referenced by rmff_new_prop().

#define RMF_TAG   FOURCC_TAG('.', 'R', 'M', 'F')

#define RMFF_CONTHEADER_SIZE   18

Referenced by rmff_dump_cont().

#define RMFF_DATAHEADER_SIZE   18

Referenced by rmff_dump_dataheader().

#define RMFF_FILEHEADER_SIZE   18

Referenced by rmff_dump_fileheader().

#define RMFF_HEADER_SIZE   0x12

#define RMFF_MDPRHEADER_SIZE   46

Referenced by rmff_dump_mdpr().

#define RMFF_PROPHEADER_SIZE   50

Referenced by rmff_dump_prop().


Function Documentation

int rmff_dump_header ( rmff_header_t h,
void *  buffer,
int  max 
)

void rmff_dump_pheader ( rmff_pheader_t h,
char *  data 
)

void rmff_fix_header ( rmff_header_t h  ) 

void rmff_free_header ( rmff_header_t h  ) 

int rmff_get_header_size ( rmff_header_t h  ) 

rmff_cont_t* rmff_new_cont ( const char *  title,
const char *  author,
const char *  copyright,
const char *  comment 
)

rmff_data_t* rmff_new_dataheader ( uint32_t  num_packets,
uint32_t  next_data_header 
)

rmff_fileheader_t* rmff_new_fileheader ( uint32_t  num_headers  ) 

rmff_mdpr_t* rmff_new_mdpr ( uint16_t  stream_number,
uint32_t  max_bit_rate,
uint32_t  avg_bit_rate,
uint32_t  max_packet_size,
uint32_t  avg_packet_size,
uint32_t  start_time,
uint32_t  preroll,
uint32_t  duration,
const char *  stream_name,
const char *  mime_type,
uint32_t  type_specific_len,
const char *  type_specific_data 
)

rmff_prop_t* rmff_new_prop ( uint32_t  max_bit_rate,
uint32_t  avg_bit_rate,
uint32_t  max_packet_size,
uint32_t  avg_packet_size,
uint32_t  num_packets,
uint32_t  duration,
uint32_t  preroll,
uint32_t  index_offset,
uint32_t  data_offset,
uint16_t  num_streams,
uint16_t  flags 
)

void rmff_print_header ( rmff_header_t h  ) 

rmff_header_t* rmff_scan_header ( const char *  data  ) 

rmff_header_t* rmff_scan_header_stream ( int  fd  ) 

void rmff_scan_pheader ( rmff_pheader_t h,
char *  data 
)


Generated on Tue May 25 08:05:08 2010 for VLC by  doxygen 1.5.6