Originally committed as revision 3662 to svn://svn.ffmpeg.org/ffmpeg/trunktags/v0.5
@@ -17,7 +17,7 @@ extern "C" { | |||||
#define FFMPEG_VERSION_INT 0x000409 | #define FFMPEG_VERSION_INT 0x000409 | ||||
#define FFMPEG_VERSION "0.4.9-pre1" | #define FFMPEG_VERSION "0.4.9-pre1" | ||||
#define LIBAVCODEC_BUILD 4728 | |||||
#define LIBAVCODEC_BUILD 4729 | |||||
#define LIBAVCODEC_VERSION_INT FFMPEG_VERSION_INT | #define LIBAVCODEC_VERSION_INT FFMPEG_VERSION_INT | ||||
#define LIBAVCODEC_VERSION FFMPEG_VERSION | #define LIBAVCODEC_VERSION FFMPEG_VERSION | ||||
@@ -1996,6 +1996,7 @@ void avcodec_get_chroma_sub_sample(int pix_fmt, int *h_shift, int *v_shift); | |||||
const char *avcodec_get_pix_fmt_name(int pix_fmt); | const char *avcodec_get_pix_fmt_name(int pix_fmt); | ||||
void avcodec_set_dimensions(AVCodecContext *s, int width, int height); | void avcodec_set_dimensions(AVCodecContext *s, int width, int height); | ||||
enum PixelFormat avcodec_get_pix_fmt(const char* name); | enum PixelFormat avcodec_get_pix_fmt(const char* name); | ||||
unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat p); | |||||
#define FF_LOSS_RESOLUTION 0x0001 /* loss due to resolution change */ | #define FF_LOSS_RESOLUTION 0x0001 /* loss due to resolution change */ | ||||
#define FF_LOSS_DEPTH 0x0002 /* loss due to color depth change */ | #define FF_LOSS_DEPTH 0x0002 /* loss due to color depth change */ | ||||
@@ -64,7 +64,7 @@ static int findPixelFormat(unsigned int fourcc) | |||||
return PIX_FMT_YUV420P; | return PIX_FMT_YUV420P; | ||||
} | } | ||||
static unsigned int findFourCC(int fmt) | |||||
unsigned int avcodec_pix_fmt_to_codec_tag(enum PixelFormat fmt) | |||||
{ | { | ||||
const PixelFormatTag * tags = pixelFormatTags; | const PixelFormatTag * tags = pixelFormatTags; | ||||
while (tags->pix_fmt >= 0) { | while (tags->pix_fmt >= 0) { | ||||
@@ -152,7 +152,7 @@ static int raw_init_encoder(AVCodecContext *avctx) | |||||
avctx->coded_frame->pict_type = FF_I_TYPE; | avctx->coded_frame->pict_type = FF_I_TYPE; | ||||
avctx->coded_frame->key_frame = 1; | avctx->coded_frame->key_frame = 1; | ||||
if(!avctx->codec_tag) | if(!avctx->codec_tag) | ||||
avctx->codec_tag = findFourCC(avctx->pix_fmt); | |||||
avctx->codec_tag = avcodec_pix_fmt_to_codec_tag(avctx->pix_fmt); | |||||
return 0; | return 0; | ||||
} | } | ||||
@@ -1748,10 +1748,12 @@ int av_find_stream_info(AVFormatContext *ic) | |||||
count++; | count++; | ||||
} | } | ||||
/* set real frame rate info */ | |||||
for(i=0;i<ic->nb_streams;i++) { | for(i=0;i<ic->nb_streams;i++) { | ||||
st = ic->streams[i]; | st = ic->streams[i]; | ||||
if (st->codec.codec_type == CODEC_TYPE_VIDEO) { | if (st->codec.codec_type == CODEC_TYPE_VIDEO) { | ||||
if(st->codec.codec_id == CODEC_ID_RAWVIDEO && !st->codec.codec_tag) | |||||
st->codec.codec_tag= avcodec_pix_fmt_to_codec_tag(st->codec.pix_fmt); | |||||
/* set real frame rate info */ | |||||
/* compute the real frame rate for telecine */ | /* compute the real frame rate for telecine */ | ||||
if ((st->codec.codec_id == CODEC_ID_MPEG1VIDEO || | if ((st->codec.codec_id == CODEC_ID_MPEG1VIDEO || | ||||
st->codec.codec_id == CODEC_ID_MPEG2VIDEO) && | st->codec.codec_id == CODEC_ID_MPEG2VIDEO) && | ||||