[FFmpeg-soc] [soc]: r1618 - dirac/ffmpeg.diff
lu_zero
subversion at mplayerhq.hu
Thu Dec 20 18:23:37 CET 2007
Author: lu_zero
Date: Thu Dec 20 18:23:37 2007
New Revision: 1618
Log:
forgot the raw demuxer in the previous patch
Modified:
dirac/ffmpeg.diff
Modified: dirac/ffmpeg.diff
==============================================================================
--- dirac/ffmpeg.diff (original)
+++ dirac/ffmpeg.diff Thu Dec 20 18:23:37 2007
@@ -87,3 +87,88 @@ Index: libavcodec/avcodec.h
/* various PCM "codecs" */
CODEC_ID_PCM_S16LE= 0x10000,
+Index: libavformat/riff.c
+===================================================================
+--- libavformat/riff.c (revision 11230)
++++ libavformat/riff.c (working copy)
+@@ -37,6 +37,7 @@
+ { CODEC_ID_H263P, MKTAG('H', '2', '6', '3') },
+ { CODEC_ID_H263I, MKTAG('I', '2', '6', '3') }, /* intel h263 */
+ { CODEC_ID_H261, MKTAG('H', '2', '6', '1') },
++ { CODEC_ID_DIRAC, MKTAG('D', 'R', 'A', 'C') },
+
+ /* added based on MPlayer */
+ { CODEC_ID_H263P, MKTAG('U', '2', '6', '3') },
+Index: libavformat/raw.c
+===================================================================
+--- libavformat/raw.c (revision 11230)
++++ libavformat/raw.c (working copy)
+@@ -312,6 +312,7 @@
+ 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);
+ }
+@@ -404,6 +405,14 @@
+ 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;
+@@ -506,6 +515,33 @@
+ };
+ #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,
++ "dirac",
++ 0,
++ 0,
++ CODEC_ID_DIRAC,
++ NULL,
++ raw_write_packet,
++ .flags= AVFMT_NOTIMESTAMPS,
++};
++#endif
++
+ AVInputFormat dts_demuxer = {
+ "dts",
+ "raw dts",
+Index: libavformat/allformats.c
+===================================================================
+--- libavformat/allformats.c (revision 11230)
++++ libavformat/allformats.c (working copy)
+@@ -67,6 +67,7 @@
+ REGISTER_DEMUXER (C93, c93);
+ REGISTER_MUXER (CRC, crc);
+ REGISTER_DEMUXER (DAUD, daud);
++ REGISTER_MUXDEMUX (DIRAC, dirac);
+ REGISTER_DEMUXER (DSICIN, dsicin);
+ REGISTER_DEMUXER (DTS, dts);
+ REGISTER_MUXDEMUX (DV, dv);
More information about the FFmpeg-soc
mailing list