Am 19.08.2013 18:17, schrieb Emil Velikov:
On 19/08/13 17:09, Christian König wrote:
Am 19.08.2013 18:00, schrieb Emil Velikov:
Not seen in the wild yet, but seems like a reasonable thing to do.
[suggested by Christian]

Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com>
Reviewed-by: Christian König <christian.koe...@amd.com>

Do you have commit access? And by the way I have enough on my to do list
for the VDPAU state tracker if you're bored.

I do not have commit access, so please feel free to push if things look
good. Bug in the nouveau vdpau driver hinted me to look this way,
although I would not mind doing a few more things when I have some time
(after 27 August).

Patches are committed, thanks for the help.

I have a something like 50% done implementation of NV_vdpau_interop, but no time to finish it. The patch can be found here:
http://cgit.freedesktop.org/~deathsimple/mesa/commit/?id=39f64342ca6400fb4bf163232848c23e0a192b92

If you want to work on something I suggest to start with implementing some piglit tests for VDPAU interop which should work with the NVidia binary driver.

An alternative is to dig into advanced deinterlacing, something like YADIF (https://trac.handbrake.fr/wiki/yadif) in shaders for example.

Cheers,
Christian.

Cheers,
Emil

Cheers,
Christian.

---
   src/gallium/state_trackers/vdpau/surface.c | 5 ++++-
   1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/gallium/state_trackers/vdpau/surface.c
b/src/gallium/state_trackers/vdpau/surface.c
index ab4d725..8e39d68 100644
--- a/src/gallium/state_trackers/vdpau/surface.c
+++ b/src/gallium/state_trackers/vdpau/surface.c
@@ -88,7 +88,10 @@ vlVdpVideoSurfaceCreate(VdpDevice device,
VdpChromaType chroma_type,
         PIPE_VIDEO_ENTRYPOINT_BITSTREAM,
         PIPE_VIDEO_CAP_PREFERS_INTERLACED
      );
-   p_surf->video_buffer = pipe->create_video_buffer(pipe,
&p_surf->templat);
+   if (p_surf->templat.buffer_format != PIPE_FORMAT_NONE)
+      p_surf->video_buffer = pipe->create_video_buffer(pipe,
&p_surf->templat);
+
+   /* do not mandate early allocation of a video buffer */
      vlVdpVideoSurfaceClear(p_surf);
      pipe_mutex_unlock(dev->mutex);




_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to