[FFmpeg-devel] [PATCH 2/2] avformat/avienc: add deinit function
Paul B Mahol
onemda at gmail.com
Sat Oct 19 17:18:53 EEST 2019
LGTM
On 10/19/19, James Almer <jamrial at gmail.com> wrote:
> Fixes ticket #8302
>
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
> libavformat/avienc.c | 20 +++++++++++++++-----
> 1 file changed, 15 insertions(+), 5 deletions(-)
>
> diff --git a/libavformat/avienc.c b/libavformat/avienc.c
> index ac0f04c354..5f143bccce 100644
> --- a/libavformat/avienc.c
> +++ b/libavformat/avienc.c
> @@ -909,7 +909,7 @@ static int avi_write_trailer(AVFormatContext *s)
> AVIContext *avi = s->priv_data;
> AVIOContext *pb = s->pb;
> int res = 0;
> - int i, j, n, nb_frames;
> + int i, n, nb_frames;
> int64_t file_size;
>
> for (i = 0; i < s->nb_streams; i++) {
> @@ -962,10 +962,6 @@ static int avi_write_trailer(AVFormatContext *s)
>
> for (i = 0; i < s->nb_streams; i++) {
> AVIStream *avist = s->streams[i]->priv_data;
> - for (j = 0; j < avist->indexes.ents_allocated /
> AVI_INDEX_CLUSTER_SIZE; j++)
> - av_freep(&avist->indexes.cluster[j]);
> - av_freep(&avist->indexes.cluster);
> - avist->indexes.ents_allocated = avist->indexes.entry = 0;
> if (pb->seekable & AVIO_SEEKABLE_NORMAL) {
> avio_seek(pb, avist->frames_hdr_strm + 4, SEEK_SET);
> avio_wl32(pb, avist->max_size);
> @@ -975,6 +971,19 @@ static int avi_write_trailer(AVFormatContext *s)
> return res;
> }
>
> +static void avi_deinit(AVFormatContext *s)
> +{
> + for (int i = 0; i < s->nb_streams; i++) {
> + AVIStream *avist = s->streams[i]->priv_data;
> + if (!avist)
> + continue;
> + for (int j = 0; j < avist->indexes.ents_allocated /
> AVI_INDEX_CLUSTER_SIZE; j++)
> + av_freep(&avist->indexes.cluster[j]);
> + av_freep(&avist->indexes.cluster);
> + avist->indexes.ents_allocated = avist->indexes.entry = 0;
> + }
> +}
> +
> #define OFFSET(x) offsetof(AVIContext, x)
> #define ENC AV_OPT_FLAG_ENCODING_PARAM
> static const AVOption options[] = {
> @@ -999,6 +1008,7 @@ AVOutputFormat ff_avi_muxer = {
> .audio_codec = CONFIG_LIBMP3LAME ? AV_CODEC_ID_MP3 :
> AV_CODEC_ID_AC3,
> .video_codec = AV_CODEC_ID_MPEG4,
> .init = avi_init,
> + .deinit = avi_deinit,
> .write_header = avi_write_header,
> .write_packet = avi_write_packet,
> .write_trailer = avi_write_trailer,
> --
> 2.23.0
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
More information about the ffmpeg-devel
mailing list