mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-08 13:22:53 +02:00
lavc decoders: properly initialize AVFrame.
This commit is contained in:
parent
759001c534
commit
3b199d29cd
@ -158,8 +158,10 @@ avs_decode_frame(AVCodecContext * avctx,
|
||||
|
||||
static av_cold int avs_decode_init(AVCodecContext * avctx)
|
||||
{
|
||||
AvsContext *s = avctx->priv_data;
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
avcodec_set_dimensions(avctx, 318, 198);
|
||||
avcodec_get_frame_defaults(&s->picture);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -42,6 +42,7 @@ static av_cold int bethsoftvid_decode_init(AVCodecContext *avctx)
|
||||
{
|
||||
BethsoftvidContext *vid = avctx->priv_data;
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
avcodec_get_frame_defaults(&vid->frame);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -48,7 +48,10 @@ typedef enum {
|
||||
|
||||
static av_cold int decode_init(AVCodecContext *avctx)
|
||||
{
|
||||
C93DecoderContext *s = avctx->priv_data;
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
avcodec_get_frame_defaults(&s->pictures[0]);
|
||||
avcodec_get_frame_defaults(&s->pictures[1]);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -414,7 +414,7 @@ static av_cold int cinepak_decode_init(AVCodecContext *avctx)
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
}
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -96,7 +96,7 @@ static av_cold int cinvideo_decode_init(AVCodecContext *avctx)
|
||||
cin->avctx = avctx;
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
|
||||
cin->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&cin->frame);
|
||||
|
||||
cin->bitmap_size = avctx->width * avctx->height;
|
||||
for (i = 0; i < 3; ++i) {
|
||||
|
@ -313,6 +313,7 @@ av_cold int ff_dvvideo_init(AVCodecContext *avctx)
|
||||
s->idct_put[1] = ff_simple_idct248_put; // FIXME: need to add it to DSP
|
||||
memcpy(s->dv_zigzag[1], ff_zigzag248_direct, 64);
|
||||
|
||||
avcodec_get_frame_defaults(&s->picture);
|
||||
avctx->coded_frame = &s->picture;
|
||||
s->avctx = avctx;
|
||||
avctx->chroma_sample_location = AVCHROMA_LOC_TOPLEFT;
|
||||
|
@ -115,7 +115,7 @@ static av_cold int flashsv_decode_init(AVCodecContext *avctx)
|
||||
return 1;
|
||||
}
|
||||
avctx->pix_fmt = AV_PIX_FMT_BGR24;
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -123,7 +123,7 @@ static av_cold int flic_decode_init(AVCodecContext *avctx)
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
s->new_palette = 0;
|
||||
|
||||
return 0;
|
||||
|
@ -66,6 +66,8 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
||||
s->avctx = avctx;
|
||||
s->tmpbuf = NULL;
|
||||
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
ff_dsputil_init(&s->dsp, avctx);
|
||||
|
||||
return 0;
|
||||
|
@ -168,6 +168,8 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
||||
if (!s->planebuf)
|
||||
return AVERROR(ENOMEM);
|
||||
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -219,6 +219,8 @@ static av_cold int ir2_decode_init(AVCodecContext *avctx)
|
||||
|
||||
avctx->pix_fmt= AV_PIX_FMT_YUV410P;
|
||||
|
||||
avcodec_get_frame_defaults(&ic->picture);
|
||||
|
||||
ir2_vlc.table = vlc_tables;
|
||||
ir2_vlc.table_allocated = 1 << CODE_VLC_BITS;
|
||||
#ifdef BITSTREAM_READER_LE
|
||||
|
@ -61,6 +61,8 @@ static av_cold int mm_decode_init(AVCodecContext *avctx)
|
||||
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -64,6 +64,7 @@ static av_cold int mp_decode_init(AVCodecContext *avctx)
|
||||
mp->vpt = av_mallocz(avctx->height * sizeof(YuvPixel));
|
||||
mp->hpt = av_mallocz(h4 * w4 / 16 * sizeof(YuvPixel));
|
||||
avctx->pix_fmt = AV_PIX_FMT_RGB555;
|
||||
avcodec_get_frame_defaults(&mp->frame);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -66,7 +66,7 @@ static av_cold int msrle_decode_init(AVCodecContext *avctx)
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -72,7 +72,7 @@ static av_cold int msvideo1_decode_init(AVCodecContext *avctx)
|
||||
avctx->pix_fmt = AV_PIX_FMT_RGB555;
|
||||
}
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -295,6 +295,8 @@ static av_cold int decode_init(AVCodecContext *avctx){
|
||||
avctx->pix_fmt= AV_PIX_FMT_PAL8;
|
||||
a->refdata = av_malloc(avctx->width * avctx->height);
|
||||
|
||||
avcodec_get_frame_defaults(&a->pic);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -385,7 +385,7 @@ static av_cold int qtrle_decode_init(AVCodecContext *avctx)
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -239,7 +239,7 @@ static av_cold int rpza_decode_init(AVCodecContext *avctx)
|
||||
s->avctx = avctx;
|
||||
avctx->pix_fmt = AV_PIX_FMT_RGB555;
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -518,7 +518,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
||||
c->avctx = avctx;
|
||||
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
|
||||
avcodec_get_frame_defaults(&c->pic);
|
||||
|
||||
/* decode huffman trees from extradata */
|
||||
if(avctx->extradata_size < 16){
|
||||
|
@ -417,7 +417,7 @@ static av_cold int smc_decode_init(AVCodecContext *avctx)
|
||||
s->avctx = avctx;
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -217,7 +217,7 @@ static av_cold int seqvideo_decode_init(AVCodecContext *avctx)
|
||||
seq->avctx = avctx;
|
||||
avctx->pix_fmt = AV_PIX_FMT_PAL8;
|
||||
|
||||
seq->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&seq->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -468,7 +468,7 @@ static av_cold int truemotion1_decode_init(AVCodecContext *avctx)
|
||||
// else
|
||||
// avctx->pix_fmt = AV_PIX_FMT_RGB555;
|
||||
|
||||
s->frame.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
/* there is a vertical predictor for each pixel in a line; each vertical
|
||||
* predictor is 0 to start with */
|
||||
|
@ -900,7 +900,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
||||
}
|
||||
|
||||
l->avctx = avctx;
|
||||
l->pic.data[0] = NULL;
|
||||
avcodec_get_frame_defaults(&l->pic);
|
||||
avctx->pix_fmt = AV_PIX_FMT_BGR24;
|
||||
|
||||
ff_dsputil_init(&l->dsp, avctx);
|
||||
|
@ -53,6 +53,7 @@ static av_cold int ulti_decode_init(AVCodecContext *avctx)
|
||||
avctx->pix_fmt = AV_PIX_FMT_YUV410P;
|
||||
avctx->coded_frame = &s->frame;
|
||||
s->ulti_codebook = ulti_codebook;
|
||||
avcodec_get_frame_defaults(&s->frame);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -488,6 +488,8 @@ static av_cold int decode_init(AVCodecContext *avctx)
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
avcodec_get_frame_defaults(&c->pic);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user