xine-lib 1.2.11
|
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <fcntl.h>
#include <stdlib.h>
#include <string.h>
#include <inttypes.h>
#include <xine/attributes.h>
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 |
Macros | |
#define | HAVE_RMFF_H |
#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_t * | rmff_new_fileheader (uint32_t num_headers) |
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) |
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_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_header_t * | rmff_scan_header (const char *data) |
void | rmff_fix_header (rmff_header_t *h) |
int | rmff_dump_header (rmff_header_t *h, void *buffer, int max) |
void | rmff_dump_pheader (rmff_pheader_t *h, uint8_t *data) |
#define CONT_TAG FOURCC_TAG('C', 'O', 'N', 'T') |
#define DATA_TAG FOURCC_TAG('D', 'A', 'T', 'A') |
#define FOURCC_TAG | ( | ch0, | |
ch1, | |||
ch2, | |||
ch3 | |||
) |
#define HAVE_RMFF_H |
#define INDX_TAG FOURCC_TAG('I', 'N', 'D', 'X') |
#define MDPR_TAG FOURCC_TAG('M', 'D', 'P', 'R') |
#define MLTI_TAG FOURCC_TAG('M', 'L', 'T', 'I') |
#define PN_LIVE_BROADCAST 0x04 |
#define PN_PERFECT_PLAY_ENABLED 0x02 |
#define PN_SAVE_ENABLED 0x01 |
#define PNA_TAG FOURCC_TAG('P', 'N', 'A', 0 ) |
#define PROP_TAG FOURCC_TAG('P', 'R', 'O', 'P') |
#define RMF_TAG FOURCC_TAG('.', 'R', 'M', 'F') |
#define RMFF_CONTHEADER_SIZE 18 |
#define RMFF_DATAHEADER_SIZE 18 |
#define RMFF_FILEHEADER_SIZE 18 |
#define RMFF_HEADER_SIZE 0x12 |
#define RMFF_MDPRHEADER_SIZE 46 |
#define RMFF_PROPHEADER_SIZE 50 |
int rmff_dump_header | ( | rmff_header_t * | h, |
void * | buffer, | ||
int | max | ||
) |
void rmff_dump_pheader | ( | rmff_pheader_t * | h, |
uint8_t * | data | ||
) |
void rmff_fix_header | ( | rmff_header_t * | h | ) |
References rmff_prop_t::avg_bit_rate, rmff_prop_t::avg_packet_size, rmff_header_t::cont, rmff_header_t::data, rmff_prop_t::data_offset, DATA_TAG, rmff_prop_t::duration, rmff_fileheader_t::file_version, rmff_header_t::fileheader, lprintf, rmff_data_t::next_data_header, rmff_fileheader_t::num_headers, rmff_prop_t::num_packets, rmff_data_t::num_packets, rmff_prop_t::num_streams, rmff_fileheader_t::object_id, rmff_data_t::object_id, rmff_fileheader_t::object_version, rmff_data_t::object_version, rmff_header_t::prop, RMF_TAG, rmff_fileheader_t::size, rmff_prop_t::size, rmff_mdpr_t::size, rmff_cont_t::size, rmff_data_t::size, and rmff_header_t::streams.
Referenced by real_parse_sdp(), and real_setup_and_get_header().
rmff_cont_t * rmff_new_cont | ( | const char * | title, |
const char * | author, | ||
const char * | copyright, | ||
const char * | comment | ||
) |
References rmff_cont_t::author, rmff_cont_t::author_len, rmff_cont_t::comment, rmff_cont_t::comment_len, CONT_TAG, rmff_cont_t::copyright, rmff_cont_t::copyright_len, NULL, rmff_cont_t::object_id, rmff_cont_t::object_version, rmff_cont_t::size, rmff_cont_t::title, and rmff_cont_t::title_len.
Referenced by real_parse_sdp().
rmff_data_t * rmff_new_dataheader | ( | uint32_t | num_packets, |
uint32_t | next_data_header | ||
) |
References DATA_TAG, rmff_data_t::next_data_header, rmff_data_t::num_packets, rmff_data_t::object_id, rmff_data_t::object_version, and rmff_data_t::size.
Referenced by real_parse_sdp().
rmff_fileheader_t * rmff_new_fileheader | ( | uint32_t | num_headers | ) |
References rmff_fileheader_t::file_version, rmff_fileheader_t::num_headers, rmff_fileheader_t::object_id, rmff_fileheader_t::object_version, RMF_TAG, and rmff_fileheader_t::size.
Referenced by real_parse_sdp().
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 | ||
) |
References rmff_mdpr_t::avg_bit_rate, rmff_mdpr_t::avg_packet_size, rmff_mdpr_t::duration, rmff_mdpr_t::max_bit_rate, rmff_mdpr_t::max_packet_size, MDPR_TAG, rmff_mdpr_t::mime_type, rmff_mdpr_t::mime_type_size, rmff_mdpr_t::mlti_data, NULL, rmff_mdpr_t::object_id, rmff_mdpr_t::object_version, rmff_mdpr_t::preroll, rmff_mdpr_t::size, rmff_mdpr_t::start_time, rmff_mdpr_t::stream_name, rmff_mdpr_t::stream_name_size, rmff_mdpr_t::stream_number, rmff_mdpr_t::type_specific_data, rmff_mdpr_t::type_specific_len, and xine_memdup().
Referenced by real_parse_sdp().
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 | ||
) |
References rmff_prop_t::avg_bit_rate, rmff_prop_t::avg_packet_size, rmff_prop_t::data_offset, rmff_prop_t::duration, rmff_prop_t::flags, rmff_prop_t::index_offset, rmff_prop_t::max_bit_rate, rmff_prop_t::max_packet_size, rmff_prop_t::num_packets, rmff_prop_t::num_streams, rmff_prop_t::object_id, rmff_prop_t::object_version, rmff_prop_t::preroll, PROP_TAG, and rmff_prop_t::size.
Referenced by real_parse_sdp().
rmff_header_t * rmff_scan_header | ( | const char * | data | ) |
References _X_BE_32, rmff_header_t::cont, CONT_TAG, rmff_header_t::data, DATA_TAG, rmff_header_t::fileheader, lprintf, MDPR_TAG, NULL, rmff_fileheader_t::num_headers, rmff_header_t::prop, PROP_TAG, RMF_TAG, rmff_scan_cont(), rmff_scan_dataheader(), rmff_scan_fileheader(), rmff_scan_mdpr(), rmff_scan_prop(), rmff_fileheader_t::size, rmff_prop_t::size, rmff_mdpr_t::size, rmff_cont_t::size, rmff_mdpr_t::stream_number, rmff_header_t::streams, and xine_hexdump().