https://bugs.freedesktop.org/show_bug.cgi?id=92220
--- Comment #14 from Christian König <deathsimple at vodafone.de> --- (In reply to Peter Frühberger from comment #13) > So @Christian happy for pointers on how to get it going. Yeah, completely agree with you. Software workarounds are very common in OpenGL and nothing unusual. Here are a few pointers into the code: 1. vlVdpVideoSurfaceGallium() in src/gallium/state_trackers/vdpau/surface.c. That one is called to "export" video surfaces to OpenGL and the right place to convert from frame to field. 2. vlVdpDecoderRender() in src/gallium/state_trackers/vdpau/decode.c. Here we reallocate the buffer backing the surface before the decoding if the frame/field flag doesn't match what the decoder expects. 3. vlVdpVideoMixerRender() in src/gallium/state_trackers/vdpau/mixer.c. Here we use a vl_compositor_render() to compose the mixed output picture. Essentially you only need to test if the surface is field based and if not reallocate it and either use vl_compositor_render() or pipe->blit() to copy the frame into fields. -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20151005/09b9750f/attachment.html>