comparison demux_mpg.c @ 494:16204dea362c

Bad interpretation of a constant by me ...
author lgb
date Tue, 17 Apr 2001 22:34:19 +0000
parents 888a85621f50
children bfc86f5a5ba7
comparison
equal deleted inserted replaced
493:b8f1ed2b411b 494:16204dea362c
32 if(id==0x1BE) return -1; // padding stream 32 if(id==0x1BE) return -1; // padding stream
33 if(id==0x1BF) return -1; // private2 33 if(id==0x1BF) return -1; // private2
34 34
35 len=stream_read_word(demux->stream); 35 len=stream_read_word(demux->stream);
36 if(verbose>=3) printf("PACKET len=%d",len); 36 if(verbose>=3) printf("PACKET len=%d",len);
37 if(len==0 || len>STREAM_BUFFER_SIZE) return -2; // invalid packet !!!!!! 37 if(len==0 || len>4096) return -2; // invalid packet !!!!!!
38 38
39 while(len>0){ // Skip stuFFing bytes 39 while(len>0){ // Skip stuFFing bytes
40 c=stream_read_char(demux->stream);--len; 40 c=stream_read_char(demux->stream);--len;
41 if(c!=0xFF)break; 41 if(c!=0xFF)break;
42 } 42 }
128 } else { 128 } else {
129 //if(c!=0x0f) printf(" {ERROR5,c=%d} \n",c); 129 //if(c!=0x0f) printf(" {ERROR5,c=%d} \n",c);
130 } 130 }
131 if(verbose>=3) printf(" => len=%d\n",len); 131 if(verbose>=3) printf(" => len=%d\n",len);
132 132
133 if(len<=0 || len>STREAM_BUFFER_SIZE) return -1; // Invalid packet size 133 if(len<=0 || len>4096) return -1; // Invalid packet size
134 134
135 if(id>=0x1C0 && id<=0x1DF){ 135 if(id>=0x1C0 && id<=0x1DF){
136 // mpeg audio 136 // mpeg audio
137 int aid=id-0x1C0; 137 int aid=id-0x1C0;
138 if(!avi_header.a_streams[aid]) new_sh_audio(aid); 138 if(!avi_header.a_streams[aid]) new_sh_audio(aid);
174 int demux_mpg_es_fill_buffer(demuxer_t *demux){ 174 int demux_mpg_es_fill_buffer(demuxer_t *demux){
175 //if(demux->type==DEMUXER_TYPE_MPEG_ES) 175 //if(demux->type==DEMUXER_TYPE_MPEG_ES)
176 // Elementary video stream 176 // Elementary video stream
177 if(demux->stream->eof) return 0; 177 if(demux->stream->eof) return 0;
178 demux->filepos=stream_tell(demux->stream); 178 demux->filepos=stream_tell(demux->stream);
179 ds_read_packet(demux->video,demux->stream,STREAM_BUFFER_SIZE,0,0); 179 ds_read_packet(demux->video,demux->stream,4096,0,0);
180 return 1; 180 return 1;
181 } 181 }
182 182
183 int demux_mpg_fill_buffer(demuxer_t *demux){ 183 int demux_mpg_fill_buffer(demuxer_t *demux){
184 unsigned int head=0; 184 unsigned int head=0;