1
mirror of https://git.videolan.org/git/ffmpeg.git synced 2024-09-28 16:02:17 +02:00

Change 4xm demuxer and video decoder to pass the video format version in

extradata instead of codec_tag.

Originally committed as revision 10253 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Roberto Togni 2007-08-27 21:58:39 +00:00
parent e89d9fd89c
commit b6f508bbcc
2 changed files with 9 additions and 2 deletions

View File

@ -789,7 +789,12 @@ static void common_init(AVCodecContext *avctx){
static int decode_init(AVCodecContext *avctx){
FourXContext * const f = avctx->priv_data;
f->version= avctx->codec_tag == 0x40000;
if(avctx->extradata_size != 4 || !avctx->extradata) {
av_log(avctx, AV_LOG_ERROR, "extradata wrong or missing\n");
return 1;
}
f->version= AV_RL32(avctx->extradata) == 0x40000;
common_init(avctx);
init_vlcs(f);

View File

@ -149,7 +149,9 @@ static int fourxm_read_header(AVFormatContext *s,
st->codec->codec_type = CODEC_TYPE_VIDEO;
st->codec->codec_id = CODEC_ID_4XM;
st->codec->codec_tag = AV_RL32(&header[i + 16]);
st->codec->extradata_size = 4;
st->codec->extradata = av_malloc(4);
AV_WL32(st->codec->extradata, AV_RL32(&header[i + 16]));
st->codec->width = fourxm->width;
st->codec->height = fourxm->height;