void avformat_free_context(AVFormatContext *s)

{

    int i;

    AVStream *st;



    av_opt_free(s);

    if (s->iformat && s->iformat->priv_class && s->priv_data)

        av_opt_free(s->priv_data);



    for(i=0;i<s->nb_streams;i++) {

        /* free all data in a stream component */

        st = s->streams[i];

        if (st->parser) {

            av_parser_close(st->parser);

            av_free_packet(&st->cur_pkt);

        }

        if (st->attached_pic.data)

            av_free_packet(&st->attached_pic);

        av_dict_free(&st->metadata);

        av_free(st->index_entries);

        av_free(st->codec->extradata);

        av_free(st->codec->subtitle_header);

        av_free(st->codec);

        av_free(st->priv_data);

        av_free(st->info);

        av_free(st);

    }

    for(i=s->nb_programs-1; i>=0; i--) {

        av_dict_free(&s->programs[i]->metadata);

        av_freep(&s->programs[i]->stream_index);

        av_freep(&s->programs[i]);

    }

    av_freep(&s->programs);

    av_freep(&s->priv_data);

    while(s->nb_chapters--) {

        av_dict_free(&s->chapters[s->nb_chapters]->metadata);

        av_free(s->chapters[s->nb_chapters]);

    }

    av_freep(&s->chapters);

    av_dict_free(&s->metadata);

    av_freep(&s->streams);

    av_free(s);

}

void avformat_free_context(AVFormatContext *s)

{

    int i;

    AVStream *st;



    av_opt_free(s);

    if (s->iformat && s->iformat->priv_class && s->priv_data)

        av_opt_free(s->priv_data);



    for(i=0;i<s->nb_streams;i++) {

        

        st = s->streams[i];

        if (st->parser) {

            av_parser_close(st->parser);

            av_free_packet(&st->cur_pkt);

        }

        if (st->attached_pic.data)

            av_free_packet(&st->attached_pic);

        av_dict_free(&st->metadata);

        av_free(st->index_entries);

        av_free(st->codec->extradata);

        av_free(st->codec->subtitle_header);

        av_free(st->codec);

        av_free(st->priv_data);

        av_free(st->info);

        av_free(st);

    }

    for(i=s->nb_programs-1; i>=0; i--) {

        av_dict_free(&s->programs[i]->metadata);

        av_freep(&s->programs[i]->stream_index);

        av_freep(&s->programs[i]);

    }

    av_freep(&s->programs);

    av_freep(&s->priv_data);

    while(s->nb_chapters--) {

        av_dict_free(&s->chapters[s->nb_chapters]->metadata);

        av_free(s->chapters[s->nb_chapters]);

    }

    av_freep(&s->chapters);

    av_dict_free(&s->metadata);

    av_freep(&s->streams);

    av_free(s);

}

void FUNC_0(AVFormatContext *VAR_0)

{

    int VAR_1;

    AVStream *st;



    av_opt_free(VAR_0);

    if (VAR_0->iformat && VAR_0->iformat->priv_class && VAR_0->priv_data)

        av_opt_free(VAR_0->priv_data);



    for(VAR_1=0;VAR_1<VAR_0->nb_streams;VAR_1++) {

        

        st = VAR_0->streams[VAR_1];

        if (st->parser) {

            av_parser_close(st->parser);

            av_free_packet(&st->cur_pkt);

        }

        if (st->attached_pic.data)

            av_free_packet(&st->attached_pic);

        av_dict_free(&st->metadata);

        av_free(st->index_entries);

        av_free(st->codec->extradata);

        av_free(st->codec->subtitle_header);

        av_free(st->codec);

        av_free(st->priv_data);

        av_free(st->info);

        av_free(st);

    }

    for(VAR_1=VAR_0->nb_programs-1; VAR_1>=0; VAR_1--) {

        av_dict_free(&VAR_0->programs[VAR_1]->metadata);

        av_freep(&VAR_0->programs[VAR_1]->stream_index);

        av_freep(&VAR_0->programs[VAR_1]);

    }

    av_freep(&VAR_0->programs);

    av_freep(&VAR_0->priv_data);

    while(VAR_0->nb_chapters--) {

        av_dict_free(&VAR_0->chapters[VAR_0->nb_chapters]->metadata);

        av_free(VAR_0->chapters[VAR_0->nb_chapters]);

    }

    av_freep(&VAR_0->chapters);

    av_dict_free(&VAR_0->metadata);

    av_freep(&VAR_0->streams);

    av_free(VAR_0);

}

void FUNC_0(AVFormatContext *VAR_0)
{ int VAR_1; AVStream *st; av_opt_free(VAR_0); if (VAR_0->iformat && VAR_0->iformat->priv_class && VAR_0->priv_data)
av_opt_free(VAR_0->priv_data); for(VAR_1=0;VAR_1<VAR_0->nb_streams;VAR_1++) { st = VAR_0->streams[VAR_1]; if (st->parser) { av_parser_close(st->parser); av_free_packet(&st->cur_pkt); } if (st->attached_pic.data)
av_free_packet(&st->attached_pic); av_dict_free(&st->metadata); av_free(st->index_entries); av_free(st->codec->extradata); av_free(st->codec->subtitle_header); av_free(st->codec); av_free(st->priv_data); av_free(st->info); av_free(st); } for(VAR_1=VAR_0->nb_programs-1; VAR_1>=0; VAR_1--) { av_dict_free(&VAR_0->programs[VAR_1]->metadata); av_freep(&VAR_0->programs[VAR_1]->stream_index); av_freep(&VAR_0->programs[VAR_1]); } av_freep(&VAR_0->programs); av_freep(&VAR_0->priv_data); while(VAR_0->nb_chapters--) { av_dict_free(&VAR_0->chapters[VAR_0->nb_chapters]->metadata); av_free(VAR_0->chapters[VAR_0->nb_chapters]); } av_freep(&VAR_0->chapters); av_dict_free(&VAR_0->metadata); av_freep(&VAR_0->streams); av_free(VAR_0); }