--- On Wed, 19/1/11, Torgeir Veimo torgeir@netenviron.com wrote:
From: Torgeir Veimo torgeir@netenviron.com Subject: Re: [vdr] Deinterlace video (was: Replacing aging VDR for DVB-S2) To: "VDR Mailing List" vdr@linuxtv.org Date: Wednesday, 19 January, 2011, 11:24 On 19 January 2011 20:18, Stuart Morris stuart_morris@talk21.com wrote:
IMHO the best way to go for a low power HTPC is to
decode in hardware e.g. VDPAU, VAAPI, but output interlaced video to your TV and let the TV sort out deinterlacing and inverse telecine.
Unfortunately, with VDPAU, the hardware combines fields into frames, then scales, which results in ghosting with interlaced material.
So this approach would not work with stock xineliboutput, which uses a fixed output resolution. If you could avoid the scaling altogether with interlaced material, eg with a modified xineliboutput setup, then this would be feasible I guess.
One would need to be able to access the decoded frame containing 2 fields and perhaps use an OpenGL shader to perform field based colour space conversion and then draw the first field to the frame buffer. At the next vertical sync the shader would convert the second field and draw that to the frame buffer. With VDPAU is there a new OpenGL interop function that allows access to the decoded frame?
I should add I have not yet ventured into writing OpenGL shaders!
Stu-e