diff options
-rw-r--r-- | libmpcodecs/ve_nuv.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/libmpcodecs/ve_nuv.c b/libmpcodecs/ve_nuv.c index f88e558cb9..1cff9e28a2 100644 --- a/libmpcodecs/ve_nuv.c +++ b/libmpcodecs/ve_nuv.c @@ -176,6 +176,17 @@ static int put_image(struct vf_instance_s* vf, mp_image_t *mpi){ return 1; } +static void uninit(struct vf_instance_s* vf) { + + if(vf->priv->buffer) + free(vf->priv->buffer); + if(vf->priv->zbuffer) + free(vf->priv->zbuffer); + if(vf->priv->zmem) + free(vf->priv->zmem); + +} + //===========================================================================// static int vf_open(vf_instance_t *vf, char* args){ @@ -183,9 +194,9 @@ static int vf_open(vf_instance_t *vf, char* args){ vf->control=control; vf->query_format=query_format; vf->put_image=put_image; + vf->uninit = uninit; vf->priv=malloc(sizeof(struct vf_priv_s)); memcpy(vf->priv, &nuv_priv_dflt,sizeof(struct vf_priv_s)); - //memset(vf->priv,0,sizeof(struct vf_priv_s)); vf->priv->mux=(muxer_stream_t*)args; mux_v->bih=malloc(sizeof(BITMAPINFOHEADER)); |