Mercurial > libavformat.hg
comparison raw.c @ 3272:07038dc492ab libavformat
Import Dirac demuxer/muxer from SoC branch; written by Marco Gerards,
patch extracted by Anuradha Suraparaju anuradhaAtrdDoTbbcDoTcoDoTuk.
author | lu_zero |
---|---|
date | Fri, 02 May 2008 14:52:39 +0000 |
parents | 55d4f01c9728 |
children | 194be504f61d |
comparison
equal
deleted
inserted
replaced
3271:c702c1c5b890 | 3272:07038dc492ab |
---|---|
252 /* for mpeg4 specify it too (most mpeg4 streams do not have the fixed_vop_rate set ...)*/ | 252 /* for mpeg4 specify it too (most mpeg4 streams do not have the fixed_vop_rate set ...)*/ |
253 if (ap->time_base.num) { | 253 if (ap->time_base.num) { |
254 av_set_pts_info(st, 64, ap->time_base.num, ap->time_base.den); | 254 av_set_pts_info(st, 64, ap->time_base.num, ap->time_base.den); |
255 } else if ( st->codec->codec_id == CODEC_ID_MJPEG || | 255 } else if ( st->codec->codec_id == CODEC_ID_MJPEG || |
256 st->codec->codec_id == CODEC_ID_MPEG4 || | 256 st->codec->codec_id == CODEC_ID_MPEG4 || |
257 st->codec->codec_id == CODEC_ID_DIRAC || | |
257 st->codec->codec_id == CODEC_ID_H264) { | 258 st->codec->codec_id == CODEC_ID_H264) { |
258 av_set_pts_info(st, 64, 1, 25); | 259 av_set_pts_info(st, 64, 1, 25); |
259 } | 260 } |
260 | 261 |
261 return 0; | 262 return 0; |
344 return 50; | 345 return 50; |
345 } | 346 } |
346 return 0; | 347 return 0; |
347 } | 348 } |
348 | 349 |
350 static int dirac_probe(AVProbeData *p) | |
351 { | |
352 if (AV_RL32(p->buf) == MKTAG('B', 'B', 'C', 'D')) | |
353 return AVPROBE_SCORE_MAX; | |
354 else | |
355 return 0; | |
356 } | |
357 | |
349 static int ac3_probe(AVProbeData *p) | 358 static int ac3_probe(AVProbeData *p) |
350 { | 359 { |
351 int max_frames, first_frames = 0, frames; | 360 int max_frames, first_frames = 0, frames; |
352 uint8_t *buf, *buf2, *end; | 361 uint8_t *buf, *buf2, *end; |
353 AC3HeaderInfo hdr; | 362 AC3HeaderInfo hdr; |
467 raw_write_packet, | 476 raw_write_packet, |
468 .flags= AVFMT_NOTIMESTAMPS, | 477 .flags= AVFMT_NOTIMESTAMPS, |
469 }; | 478 }; |
470 | 479 |
471 #endif //CONFIG_MUXERS | 480 #endif //CONFIG_MUXERS |
481 | |
482 AVInputFormat dirac_demuxer = { | |
483 "dirac", | |
484 "raw dirac", | |
485 0, | |
486 dirac_probe, | |
487 video_read_header, | |
488 raw_read_partial_packet, | |
489 raw_read_close, | |
490 .flags= AVFMT_GENERIC_INDEX, | |
491 .value = CODEC_ID_DIRAC, | |
492 }; | |
493 | |
494 #ifdef CONFIG_MUXERS | |
495 AVOutputFormat dirac_muxer = { | |
496 "dirac", | |
497 "raw dirac", | |
498 NULL, | |
499 "drc", | |
500 0, | |
501 0, | |
502 CODEC_ID_DIRAC, | |
503 NULL, | |
504 raw_write_packet, | |
505 .flags= AVFMT_NOTIMESTAMPS, | |
506 }; | |
507 #endif | |
472 | 508 |
473 AVInputFormat dts_demuxer = { | 509 AVInputFormat dts_demuxer = { |
474 "dts", | 510 "dts", |
475 "raw dts", | 511 "raw dts", |
476 0, | 512 0, |