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,