static int gif_read_header(AVFormatContext * s1,

                           AVFormatParameters * ap)

{

    GifState *s = s1->priv_data;

    ByteIOContext *f = s1->pb;

    AVStream *st;



    s->f = f;

    if (gif_read_header1(s) < 0)

        return -1;



    /* allocate image buffer */

    s->image_linesize = s->screen_width * 3;

    s->image_buf = av_malloc(s->screen_height * s->image_linesize);

    if (!s->image_buf)

        return AVERROR(ENOMEM);

    s->pix_fmt = PIX_FMT_RGB24;

    /* now we are ready: build format streams */

    st = av_new_stream(s1, 0);

    if (!st)

        return -1;



    st->codec->codec_type = CODEC_TYPE_VIDEO;

    st->codec->codec_id = CODEC_ID_RAWVIDEO;

    st->codec->time_base.den = 5;

    st->codec->time_base.num = 1;

    /* XXX: check if screen size is always valid */

    st->codec->width = s->screen_width;

    st->codec->height = s->screen_height;

    st->codec->pix_fmt = PIX_FMT_RGB24;

    return 0;

}

static int gif_read_header(AVFormatContext * s1,

                           AVFormatParameters * ap)

{

    GifState *s = s1->priv_data;

    ByteIOContext *f = s1->pb;

    AVStream *st;



    s->f = f;

    if (gif_read_header1(s) < 0)

        return -1;



    

    s->image_linesize = s->screen_width * 3;

    s->image_buf = av_malloc(s->screen_height * s->image_linesize);

    if (!s->image_buf)

        return AVERROR(ENOMEM);

    s->pix_fmt = PIX_FMT_RGB24;

    

    st = av_new_stream(s1, 0);

    if (!st)

        return -1;



    st->codec->codec_type = CODEC_TYPE_VIDEO;

    st->codec->codec_id = CODEC_ID_RAWVIDEO;

    st->codec->time_base.den = 5;

    st->codec->time_base.num = 1;

    

    st->codec->width = s->screen_width;

    st->codec->height = s->screen_height;

    st->codec->pix_fmt = PIX_FMT_RGB24;

    return 0;

}

    return 0;     s->f = f;     return 0;     return 0;         return -1;         return -1;         return -1;     return 0; static int gif_read_header(AVFormatContext * s1,                            AVFormatParameters * ap)     GifState *s = s1->priv_data;     ByteIOContext *f = s1->pb;     AVStream *st;     s->f = f;     if (gif_read_header1(s) < 0)         return -1;     s->image_linesize = s->screen_width * 3;     s->image_buf = av_malloc(s->screen_height * s->image_linesize);     if (!s->image_buf)         return AVERROR(ENOMEM);     s->pix_fmt = PIX_FMT_RGB24;     st = av_new_stream(s1, 0);     if (!st)         return -1;     st->codec->codec_type = CODEC_TYPE_VIDEO;     st->codec->codec_id = CODEC_ID_RAWVIDEO;     st->codec->time_base.den = 5;     st->codec->time_base.num = 1;     st->codec->width = s->screen_width;     st->codec->height = s->screen_height;     st->codec->pix_fmt = PIX_FMT_RGB24;     return 0;     GifState *s = s1->priv_data;     return 0;     GifState *s = s1->priv_data;     return 0;
static int FUNC_0(AVFormatContext * VAR_0,

                           AVFormatParameters * VAR_1)

{

    GifState *s = VAR_0->priv_data;

    ByteIOContext *f = VAR_0->pb;

    AVStream *st;



    s->f = f;

    if (gif_read_header1(s) < 0)

        return -1;



    

    s->image_linesize = s->screen_width * 3;

    s->image_buf = av_malloc(s->screen_height * s->image_linesize);

    if (!s->image_buf)

        return AVERROR(ENOMEM);

    s->pix_fmt = PIX_FMT_RGB24;

    

    st = av_new_stream(VAR_0, 0);

    if (!st)

        return -1;



    st->codec->codec_type = CODEC_TYPE_VIDEO;

    st->codec->codec_id = CODEC_ID_RAWVIDEO;

    st->codec->time_base.den = 5;

    st->codec->time_base.num = 1;

    

    st->codec->width = s->screen_width;

    st->codec->height = s->screen_height;

    st->codec->pix_fmt = PIX_FMT_RGB24;

    return 0;

}

static int FUNC_0(AVFormatContext * VAR_0,
AVFormatParameters * VAR_1)
{ GifState *s = VAR_0->priv_data; ByteIOContext *f = VAR_0->pb; AVStream *st; s->f = f; if (gif_read_header1(s) < 0)
return -1; s->image_linesize = s->screen_width * 3; s->image_buf = av_malloc(s->screen_height * s->image_linesize); if (!s->image_buf)
return AVERROR(ENOMEM); s->pix_fmt = PIX_FMT_RGB24; st = av_new_stream(VAR_0, 0); if (!st)
return -1; st->codec->codec_type = CODEC_TYPE_VIDEO; st->codec->codec_id = CODEC_ID_RAWVIDEO; st->codec->time_base.den = 5; st->codec->time_base.num = 1; st->codec->width = s->screen_width; st->codec->height = s->screen_height; st->codec->pix_fmt = PIX_FMT_RGB24; return 0; }