WebpContext *w = s->priv_data;
if (w->using_webp_anim_encoder) {
- if ((w->frame_count > 1) && w->loop) { // Write loop count.
+ if (w->loop) { // Write loop count.
avio_seek(s->pb, 42, SEEK_SET);
avio_wl16(s->pb, w->loop);
}
return 0;
}
+static void webp_deinit(AVFormatContext *s)
+{
+ WebpContext *w = s->priv_data;
+
+ av_packet_unref(&w->last_pkt);
+}
+
#define OFFSET(x) offsetof(WebpContext, x)
#define ENC AV_OPT_FLAG_ENCODING_PARAM
static const AVOption options[] = {
.init = webp_init,
.write_packet = webp_write_packet,
.write_trailer = webp_write_trailer,
+ .deinit = webp_deinit,
.priv_class = &webp_muxer_class,
.flags = AVFMT_VARIABLE_FPS,
};