diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2008-05-02 14:52:39 +0000 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2008-05-02 14:52:39 +0000 |
commit | 17ac9f1c38cb831ffc9938d92afe63e5f687bfc3 (patch) | |
tree | 6bc55decc6c0041a9b0a37e75011d929bbef45df /libavformat/raw.c | |
parent | 8a0684f4c4a0d4375907807034ad2fc27953f5d6 (diff) | |
download | ffmpeg-17ac9f1c38cb831ffc9938d92afe63e5f687bfc3.tar.gz |
Import Dirac demuxer/muxer from SoC branch; written by Marco Gerards,
patch extracted by Anuradha Suraparaju anuradhaAtrdDoTbbcDoTcoDoTuk.
Originally committed as revision 13031 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/raw.c')
-rw-r--r-- | libavformat/raw.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/libavformat/raw.c b/libavformat/raw.c index ac44b845ab..10eeda0830 100644 --- a/libavformat/raw.c +++ b/libavformat/raw.c @@ -254,6 +254,7 @@ static int video_read_header(AVFormatContext *s, av_set_pts_info(st, 64, ap->time_base.num, ap->time_base.den); } else if ( st->codec->codec_id == CODEC_ID_MJPEG || st->codec->codec_id == CODEC_ID_MPEG4 || + st->codec->codec_id == CODEC_ID_DIRAC || st->codec->codec_id == CODEC_ID_H264) { av_set_pts_info(st, 64, 1, 25); } @@ -346,6 +347,14 @@ static int h261_probe(AVProbeData *p) return 0; } +static int dirac_probe(AVProbeData *p) +{ + if (AV_RL32(p->buf) == MKTAG('B', 'B', 'C', 'D')) + return AVPROBE_SCORE_MAX; + else + return 0; +} + static int ac3_probe(AVProbeData *p) { int max_frames, first_frames = 0, frames; @@ -470,6 +479,33 @@ AVOutputFormat dts_muxer = { #endif //CONFIG_MUXERS +AVInputFormat dirac_demuxer = { + "dirac", + "raw dirac", + 0, + dirac_probe, + video_read_header, + raw_read_partial_packet, + raw_read_close, + .flags= AVFMT_GENERIC_INDEX, + .value = CODEC_ID_DIRAC, +}; + +#ifdef CONFIG_MUXERS +AVOutputFormat dirac_muxer = { + "dirac", + "raw dirac", + NULL, + "drc", + 0, + 0, + CODEC_ID_DIRAC, + NULL, + raw_write_packet, + .flags= AVFMT_NOTIMESTAMPS, +}; +#endif + AVInputFormat dts_demuxer = { "dts", "raw dts", |