aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFabrice Bellard <fabrice@bellard.org>2003-10-29 14:08:18 +0000
committerFabrice Bellard <fabrice@bellard.org>2003-10-29 14:08:18 +0000
commit985180a1b85b366dc649fe1334ed27ac1941644f (patch)
tree7fe4c0aa99a089c4e6e2273b319242bbbaa24cf3
parentb623bbcba2626c3976378bf06675267c1726f4af (diff)
downloadffmpeg-985180a1b85b366dc649fe1334ed27ac1941644f.tar.gz
added fake codec CODEC_ID_MPEG2TS of type CODEC_TYPE_DATA (needed for simpler handling of raw transport streams in ffserver and RTP - better solutions are welcomed)
Originally committed as revision 2445 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/avcodec.h6
-rw-r--r--libavcodec/utils.c8
2 files changed, 13 insertions, 1 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 90cffd697a..ad3eb546a1 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -16,7 +16,7 @@ extern "C" {
#define FFMPEG_VERSION_INT 0x000408
#define FFMPEG_VERSION "0.4.8"
-#define LIBAVCODEC_BUILD 4687
+#define LIBAVCODEC_BUILD 4688
#define LIBAVCODEC_VERSION_INT FFMPEG_VERSION_INT
#define LIBAVCODEC_VERSION FFMPEG_VERSION
@@ -117,6 +117,9 @@ enum CodecID {
CODEC_ID_ROQ_DPCM,
CODEC_ID_INTERPLAY_DPCM,
CODEC_ID_XAN_DPCM,
+
+ CODEC_ID_MPEG2TS, /* _FAKE_ codec to indicate a raw MPEG2 transport
+ stream (only used by libavformat) */
};
/* CODEC_ID_MP3LAME is absolete */
@@ -126,6 +129,7 @@ enum CodecType {
CODEC_TYPE_UNKNOWN = -1,
CODEC_TYPE_VIDEO,
CODEC_TYPE_AUDIO,
+ CODEC_TYPE_DATA,
};
/**
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 34051ad3a4..79552f4b61 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -523,6 +523,10 @@ void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode)
else if (enc->sub_id == 1)
codec_name = "mp1";
}
+ } else if (enc->codec_id == CODEC_ID_MPEG2TS) {
+ /* fake mpeg2 transport stream codec (currently not
+ registered) */
+ codec_name = "mpeg2ts";
} else if (enc->codec_name[0] != '\0') {
codec_name = enc->codec_name;
} else {
@@ -605,6 +609,10 @@ void avcodec_string(char *buf, int buf_size, AVCodecContext *enc, int encode)
break;
}
break;
+ case CODEC_TYPE_DATA:
+ snprintf(buf, buf_size, "Data: %s", codec_name);
+ bitrate = enc->bit_rate;
+ break;
default:
av_abort();
}