From 985180a1b85b366dc649fe1334ed27ac1941644f Mon Sep 17 00:00:00 2001 From: Fabrice Bellard Date: Wed, 29 Oct 2003 14:08:18 +0000 Subject: [PATCH] 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 --- libavcodec/avcodec.h | 6 +++++- libavcodec/utils.c | 8 ++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index 90cffd6..ad3eb54 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 34051ad..79552f4 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(); } -- 2.7.4