diff libvo/vo_vdpau.c @ 36322:d649e84ea8d5

Make VDPAU support work again with latest FFmpeg.
author reimar
date Sun, 11 Aug 2013 18:28:58 +0000
parents 4e5239ebd43d
children 9de70162224b
line wrap: on
line diff
--- a/libvo/vo_vdpau.c	Sat Aug 10 04:02:17 2013 +0000
+++ b/libvo/vo_vdpau.c	Sun Aug 11 18:28:58 2013 +0000
@@ -1009,8 +1009,8 @@
                       int x, int y)
 {
     VdpStatus vdp_st;
-    struct vdpau_render_state *rndr = (struct vdpau_render_state *)image[0];
-    int max_refs = image_format == IMGFMT_VDPAU_H264 ? rndr->info.h264.num_ref_frames : 2;
+    struct vdpau_frame_data *rndr = (struct vdpau_frame_data *)image[0];
+    int max_refs = image_format == IMGFMT_VDPAU_H264 ? ((VdpPictureInfoH264 *)rndr->info)->num_ref_frames : 2;
 
     if (handle_preemption() < 0)
         return VO_TRUE;
@@ -1021,7 +1021,7 @@
         && !create_vdp_decoder(image_format, vid_width, vid_height, max_refs))
         return VO_FALSE;
 
-    vdp_st = vdp_decoder_render(decoder, rndr->surface, (void *)&rndr->info, rndr->bitstream_buffers_used, rndr->bitstream_buffers);
+    vdp_st = vdp_decoder_render(decoder, rndr->render_state->surface, rndr->info, rndr->bitstream_buffers_used, rndr->bitstream_buffers);
     CHECK_ST_WARNING("Failed VDPAU decoder rendering");
     return VO_TRUE;
 }