From 25bdacf7a72c1abae24e7e7e82b53505408dc4a9 Mon Sep 17 00:00:00 2001 From: Julian Scheel Date: Mon, 8 Dec 2008 11:24:37 +0000 Subject: Block surfaces until they are not used as reference frames any more. --- src/libvdpau/dpb.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/libvdpau/dpb.c') diff --git a/src/libvdpau/dpb.c b/src/libvdpau/dpb.c index a13e758bf..d6a6c25df 100644 --- a/src/libvdpau/dpb.c +++ b/src/libvdpau/dpb.c @@ -10,14 +10,16 @@ #include #include "dpb.h" +#include "video_out.h" struct decoded_picture* init_decoded_picture(struct nal_unit *src_nal, - VdpVideoSurface surface) + VdpVideoSurface surface, vo_frame_t *img) { struct decoded_picture *pic = malloc(sizeof(struct decoded_picture)); pic->nal = init_nal_unit(); copy_nal_unit(pic->nal, src_nal); pic->surface = surface; + pic->img = img; pic->next = NULL; return pic; @@ -25,6 +27,7 @@ struct decoded_picture* init_decoded_picture(struct nal_unit *src_nal, void free_decoded_picture(struct decoded_picture *pic) { + pic->img->free(pic->img); free_nal_unit(pic->nal); } -- cgit v1.2.3