I think we are talking about different versions vdpau. I was referring to #870, this is completely re-written vdpau. It has removed all that ugly things and callback from renderer back into vdpau. works more like vaapi where renderer releases video surface when buffer is released. As long the surface is referenced by a render buffer, vdpau won't reuse.