void avformat_free_context(AVFormatContext *s)

{

    int i;



    if (!s)

        return;



    av_opt_free(s);

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

        av_opt_free(s->priv_data);

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

        av_opt_free(s->priv_data);



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

        ff_free_stream(s, s->streams[i]);

    }

    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_freep(&s->chapters[s->nb_chapters]);

    }

    av_freep(&s->chapters);

    av_dict_free(&s->metadata);

    av_freep(&s->streams);

    av_freep(&s->internal);


    av_free(s);

}
void avformat_free_context(AVFormatContext *s)

{

    int i;



    if (!s)

        return;



    av_opt_free(s);

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

        av_opt_free(s->priv_data);

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

        av_opt_free(s->priv_data);



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

        ff_free_stream(s, s->streams[i]);

    }

    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_freep(&s->chapters[s->nb_chapters]);

    }

    av_freep(&s->chapters);

    av_dict_free(&s->metadata);

    av_freep(&s->streams);

    av_freep(&s->internal);


    av_free(s);

}
void FUNC_0(AVFormatContext *VAR_0)

{

    int VAR_1;



    if (!VAR_0)

        return;



    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);

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

        av_opt_free(VAR_0->priv_data);



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

        ff_free_stream(VAR_0, VAR_0->streams[VAR_1]);

    }

    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_freep(&VAR_0->chapters[VAR_0->nb_chapters]);

    }

    av_freep(&VAR_0->chapters);

    av_dict_free(&VAR_0->metadata);

    av_freep(&VAR_0->streams);

    av_freep(&VAR_0->internal);


    av_free(VAR_0);

}
void FUNC_0(AVFormatContext *VAR_0)
{ int VAR_1; if (!VAR_0)
return; 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); if (VAR_0->oformat && VAR_0->oformat->priv_class && VAR_0->priv_data)
av_opt_free(VAR_0->priv_data); for (VAR_1 = VAR_0->nb_streams - 1; VAR_1 >= 0; VAR_1--) { ff_free_stream(VAR_0, VAR_0->streams[VAR_1]); } 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_freep(&VAR_0->chapters[VAR_0->nb_chapters]); } av_freep(&VAR_0->chapters); av_dict_free(&VAR_0->metadata); av_freep(&VAR_0->streams); av_freep(&VAR_0->internal); av_free(VAR_0); }