comparison libmpdemux/demuxer.h @ 10687:f8d6f7d59ceb

- initial support for MPEG4 in TS (M4V is working, but not AAC yet) patch by Nico <nsabbi@libero.it>
author arpi
date Sun, 24 Aug 2003 18:08:54 +0000
parents 0df8816f4665
children ef7e39061188
comparison
equal deleted inserted replaced
10686:8eb690f0e342 10687:f8d6f7d59ceb
40 #define DEMUXER_TYPE_MPEG_TS 29 40 #define DEMUXER_TYPE_MPEG_TS 29
41 #define DEMUXER_TYPE_H264_ES 30 41 #define DEMUXER_TYPE_H264_ES 30
42 #define DEMUXER_TYPE_MATROSKA 31 42 #define DEMUXER_TYPE_MATROSKA 31
43 #define DEMUXER_TYPE_REALAUDIO 32 43 #define DEMUXER_TYPE_REALAUDIO 32
44 #define DEMUXER_TYPE_MPEG_TY 33 44 #define DEMUXER_TYPE_MPEG_TY 33
45 #define DEMUXER_TYPE_MPEG4_IN_TS 34
45 46
46 // This should always match the higest demuxer type number. 47 // This should always match the higest demuxer type number.
47 // Unless you want to disallow users to force the demuxer to some types 48 // Unless you want to disallow users to force the demuxer to some types
48 #define DEMUXER_TYPE_MIN 0 49 #define DEMUXER_TYPE_MIN 0
49 #define DEMUXER_TYPE_MAX 33 50 #define DEMUXER_TYPE_MAX 33
153 dp->buffer=len?(unsigned char*)malloc(len+8):NULL; 154 dp->buffer=len?(unsigned char*)malloc(len+8):NULL;
154 if(len) memset(dp->buffer+len,0,8); 155 if(len) memset(dp->buffer+len,0,8);
155 return dp; 156 return dp;
156 } 157 }
157 158
159 inline static void resize_demux_packet(demux_packet_t* dp, int len)
160 {
161 if(len)
162 {
163 dp->buffer=(unsigned char *)realloc(dp->buffer,len+8);
164 memset(dp->buffer+len,0,8);
165 }
166 else
167 {
168 if(dp->buffer) free(dp->buffer);
169 dp->buffer=NULL;
170 }
171 dp->len=len;
172 }
173
158 inline static demux_packet_t* clone_demux_packet(demux_packet_t* pack){ 174 inline static demux_packet_t* clone_demux_packet(demux_packet_t* pack){
159 demux_packet_t* dp=(demux_packet_t*)malloc(sizeof(demux_packet_t)); 175 demux_packet_t* dp=(demux_packet_t*)malloc(sizeof(demux_packet_t));
160 while(pack->master) pack=pack->master; // find the master 176 while(pack->master) pack=pack->master; // find the master
161 memcpy(dp,pack,sizeof(demux_packet_t)); 177 memcpy(dp,pack,sizeof(demux_packet_t));
162 dp->next=NULL; 178 dp->next=NULL;