Mercurial > libavformat.hg
comparison rtp.c @ 305:ef53bff8bf23 libavformat
use parsers
author | bellard |
---|---|
date | Mon, 10 Nov 2003 18:40:14 +0000 |
parents | 6091b76cfc2a |
children | 845f9de2c883 |
comparison
equal
deleted
inserted
replaced
304:d58c8859ff8c | 305:ef53bff8bf23 |
---|---|
232 s->ts = mpegts_parse_open(s->ic); | 232 s->ts = mpegts_parse_open(s->ic); |
233 if (s->ts == NULL) { | 233 if (s->ts == NULL) { |
234 av_free(s); | 234 av_free(s); |
235 return NULL; | 235 return NULL; |
236 } | 236 } |
237 } else { | |
238 switch(st->codec.codec_id) { | |
239 case CODEC_ID_MPEG1VIDEO: | |
240 case CODEC_ID_MPEG2VIDEO: | |
241 case CODEC_ID_MP2: | |
242 case CODEC_ID_MP3: | |
243 case CODEC_ID_MPEG4: | |
244 st->need_parsing = 1; | |
245 break; | |
246 default: | |
247 break; | |
248 } | |
237 } | 249 } |
238 return s; | 250 return s; |
239 } | 251 } |
240 | 252 |
241 /** | 253 /** |
320 buf += 4; | 332 buf += 4; |
321 av_new_packet(pkt, len); | 333 av_new_packet(pkt, len); |
322 memcpy(pkt->data, buf, len); | 334 memcpy(pkt->data, buf, len); |
323 break; | 335 break; |
324 case CODEC_ID_MPEG1VIDEO: | 336 case CODEC_ID_MPEG1VIDEO: |
325 /* better than nothing: skip mpeg audio RTP header */ | 337 /* better than nothing: skip mpeg video RTP header */ |
326 if (len <= 4) | 338 if (len <= 4) |
327 return -1; | 339 return -1; |
328 h = decode_be32(buf); | 340 h = decode_be32(buf); |
329 buf += 4; | 341 buf += 4; |
330 len -= 4; | 342 len -= 4; |