25#ifdef HAVE_SYS_SOCKET_H
26#include <sys/socket.h>
28#ifdef HAVE_NETINET_IN_H
29#include <netinet/in.h>
46#define RMFF_HEADER_SIZE 0x12
48#define RMFF_FILEHEADER_SIZE 18
49#define RMFF_PROPHEADER_SIZE 50
50#define RMFF_MDPRHEADER_SIZE 46
51#define RMFF_CONTHEADER_SIZE 18
52#define RMFF_DATAHEADER_SIZE 18
54#define FOURCC_TAG( ch0, ch1, ch2, ch3 ) \
55 (((long)(unsigned char)(ch3) ) | \
56 ( (long)(unsigned char)(ch2) << 8 ) | \
57 ( (long)(unsigned char)(ch1) << 16 ) | \
58 ( (long)(unsigned char)(ch0) << 24 ) )
61#define RMF_TAG FOURCC_TAG('.', 'R', 'M', 'F')
62#define PROP_TAG FOURCC_TAG('P', 'R', 'O', 'P')
63#define MDPR_TAG FOURCC_TAG('M', 'D', 'P', 'R')
64#define CONT_TAG FOURCC_TAG('C', 'O', 'N', 'T')
65#define DATA_TAG FOURCC_TAG('D', 'A', 'T', 'A')
66#define INDX_TAG FOURCC_TAG('I', 'N', 'D', 'X')
67#define PNA_TAG FOURCC_TAG('P', 'N', 'A', 0 )
69#define MLTI_TAG FOURCC_TAG('M', 'L', 'T', 'I')
72#define PN_SAVE_ENABLED 0x01
73#define PN_PERFECT_PLAY_ENABLED 0x02
74#define PN_LIVE_BROADCAST 0x04
191 uint32_t max_bit_rate,
192 uint32_t avg_bit_rate,
193 uint32_t max_packet_size,
194 uint32_t avg_packet_size,
195 uint32_t num_packets,
198 uint32_t index_offset,
199 uint32_t data_offset,
200 uint16_t num_streams,
204 uint16_t stream_number,
205 uint32_t max_bit_rate,
206 uint32_t avg_bit_rate,
207 uint32_t max_packet_size,
208 uint32_t avg_packet_size,
212 const char *stream_name,
213 const char *mime_type,
214 uint32_t type_specific_len,
215 const char *type_specific_data );
220 const char *copyright,
221 const char *comment);
224 uint32_t num_packets, uint32_t next_data_header);
#define XINE_MALLOC
Definition: attributes.h:141
int rmff_dump_header(rmff_header_t *h, void *buffer, int max)
Definition: rmff.c:243
rmff_header_t * rmff_scan_header(const char *data)
Definition: rmff.c:440
rmff_cont_t * rmff_new_cont(const char *title, const char *author, const char *copyright, const char *comment)
Definition: rmff.c:659
void rmff_dump_pheader(rmff_pheader_t *h, uint8_t *data)
Definition: rmff.c:280
rmff_fileheader_t * rmff_new_fileheader(uint32_t num_headers)
Definition: rmff.c:566
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)
Definition: rmff.c:579
void rmff_fix_header(rmff_header_t *h)
Definition: rmff.c:779
rmff_data_t * rmff_new_dataheader(uint32_t num_packets, uint32_t next_data_header)
Definition: rmff.c:697
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)
Definition: rmff.c:613
uint16_t comment_len
Definition: rmff.h:148
char * comment
Definition: rmff.h:149
uint16_t object_version
Definition: rmff.h:140
uint16_t copyright_len
Definition: rmff.h:146
uint16_t title_len
Definition: rmff.h:142
uint32_t size
Definition: rmff.h:139
char * author
Definition: rmff.h:145
char * title
Definition: rmff.h:143
uint16_t author_len
Definition: rmff.h:144
char * copyright
Definition: rmff.h:147
uint32_t object_id
Definition: rmff.h:138
uint32_t object_id
Definition: rmff.h:155
uint16_t object_version
Definition: rmff.h:157
uint32_t num_packets
Definition: rmff.h:159
uint32_t size
Definition: rmff.h:156
uint32_t next_data_header
Definition: rmff.h:160
uint16_t object_version
Definition: rmff.h:114
uint32_t avg_bit_rate
Definition: rmff.h:118
uint32_t max_packet_size
Definition: rmff.h:119
uint32_t avg_packet_size
Definition: rmff.h:120
uint32_t duration
Definition: rmff.h:123
uint32_t max_bit_rate
Definition: rmff.h:117
char * stream_name
Definition: rmff.h:125
uint16_t stream_number
Definition: rmff.h:116
char * type_specific_data
Definition: rmff.h:129
uint32_t size
Definition: rmff.h:113
uint32_t start_time
Definition: rmff.h:121
char * mime_type
Definition: rmff.h:127
uint32_t type_specific_len
Definition: rmff.h:128
uint32_t preroll
Definition: rmff.h:122
uint32_t object_id
Definition: rmff.h:112
uint8_t mime_type_size
Definition: rmff.h:126
char * mlti_data
Definition: rmff.h:132
int mlti_data_size
Definition: rmff.h:131
uint8_t stream_name_size
Definition: rmff.h:124
uint32_t size
Definition: rmff.h:93
uint32_t object_id
Definition: rmff.h:92
uint32_t data_offset
Definition: rmff.h:104
uint32_t duration
Definition: rmff.h:101
uint32_t num_packets
Definition: rmff.h:100
uint32_t avg_packet_size
Definition: rmff.h:99
uint16_t object_version
Definition: rmff.h:94
uint32_t max_packet_size
Definition: rmff.h:98
uint16_t num_streams
Definition: rmff.h:105
uint16_t flags
Definition: rmff.h:106
uint32_t avg_bit_rate
Definition: rmff.h:97
uint32_t max_bit_rate
Definition: rmff.h:96
uint32_t index_offset
Definition: rmff.h:103
uint32_t preroll
Definition: rmff.h:102