summaryrefslogtreecommitdiff
path: root/src/libvdpau/dpb.h
diff options
context:
space:
mode:
authorJulian Scheel <julian@jusst.de>2008-12-08 11:24:37 +0000
committerJulian Scheel <julian@jusst.de>2008-12-08 11:24:37 +0000
commit25bdacf7a72c1abae24e7e7e82b53505408dc4a9 (patch)
treeb8ebbd421abc8cedd2b779059b0d27a6281bb963 /src/libvdpau/dpb.h
parentfcceca2c84e5b1cb24262591ee8de98ccedca1db (diff)
downloadxine-lib-25bdacf7a72c1abae24e7e7e82b53505408dc4a9.tar.gz
xine-lib-25bdacf7a72c1abae24e7e7e82b53505408dc4a9.tar.bz2
Block surfaces until they are not used as reference frames any more.
Diffstat (limited to 'src/libvdpau/dpb.h')
-rw-r--r--src/libvdpau/dpb.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libvdpau/dpb.h b/src/libvdpau/dpb.h
index 8aa430c26..857f2fa5f 100644
--- a/src/libvdpau/dpb.h
+++ b/src/libvdpau/dpb.h
@@ -9,9 +9,12 @@
#define DPB_H_
#include "nal.h"
+#include "video_out.h"
struct decoded_picture {
VdpVideoSurface surface;
+ vo_frame_t *img; /* this is the image we block, to make sure
+ * the surface is not double-used */
struct nal_unit *nal;
struct decoded_picture *next;
@@ -23,7 +26,7 @@ struct dpb {
};
struct decoded_picture* init_decoded_picture(struct nal_unit *src_nal,
- VdpVideoSurface surface);
+ VdpVideoSurface surface, vo_frame_t *img);
void free_decoded_picture(struct decoded_picture *pic);
struct decoded_picture* dpb_get_picture(struct dpb *dpb, uint32_t picnum);