Mesa (master): mesa/st: don't advertise NV_vdpau_interop if it doesn' t work.

Christian König deathsimple at kemper.freedesktop.org
Mon Sep 8 14:54:43 UTC 2014


Module: Mesa
Branch: master
Commit: 12fb74fe895fe9954df127ca0ec6e4422fffb156
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=12fb74fe895fe9954df127ca0ec6e4422fffb156

Author: Christian König <christian.koenig at amd.com>
Date:   Fri Aug 29 11:46:06 2014 +0200

mesa/st: don't advertise NV_vdpau_interop if it doesn't work.

As long as we don't have a workaround for frame based
decoding in VDPAU we should not advertise NV_vdpau_interop.

v2: fix commit message, check if get_video_param is present

Signed-off-by: Christian König <christian.koenig at amd.com>
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
Cc: mesa-stable at lists.freedesktop.org

---

 src/mesa/state_tracker/st_extensions.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 286c56a..07bd125 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -620,7 +620,6 @@ void st_init_extensions(struct pipe_screen *screen,
    extensions->NV_fog_distance = GL_TRUE;
    extensions->NV_texture_env_combine4 = GL_TRUE;
    extensions->NV_texture_rectangle = GL_TRUE;
-   extensions->NV_vdpau_interop = GL_TRUE;
 
    extensions->OES_EGL_image = GL_TRUE;
    extensions->OES_EGL_image_external = GL_TRUE;
@@ -885,4 +884,11 @@ void st_init_extensions(struct pipe_screen *screen,
                                    PIPE_BIND_SAMPLER_VIEW)) {
       extensions->ARB_ES3_compatibility = GL_TRUE;
    }
+
+   if (screen->get_video_param &&
+       screen->get_video_param(screen, PIPE_VIDEO_PROFILE_UNKNOWN,
+                               PIPE_VIDEO_ENTRYPOINT_BITSTREAM,
+                               PIPE_VIDEO_CAP_SUPPORTS_INTERLACED)) {
+      extensions->NV_vdpau_interop = GL_TRUE;
+   }
 }




More information about the mesa-commit mailing list