summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nvfx
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/nvfx')
-rw-r--r--src/gallium/drivers/nvfx/nvfx_video_context.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/gallium/drivers/nvfx/nvfx_video_context.c b/src/gallium/drivers/nvfx/nvfx_video_context.c
index 58e1c0baa27..0456926c9ad 100644
--- a/src/gallium/drivers/nvfx/nvfx_video_context.c
+++ b/src/gallium/drivers/nvfx/nvfx_video_context.c
@@ -26,7 +26,8 @@
**************************************************************************/
#include "nvfx_video_context.h"
-#include <softpipe/sp_video_context.h>
+#include "util/u_video.h"
+#include <vl/vl_mpeg12_context.h>
struct pipe_video_context *
nvfx_video_create(struct pipe_screen *screen, enum pipe_video_profile profile,
@@ -41,8 +42,14 @@ nvfx_video_create(struct pipe_screen *screen, enum pipe_video_profile profile,
if (!pipe)
return NULL;
- return sp_video_create_ex(pipe, profile, chroma_format, width, height,
- VL_MPEG12_MC_RENDERER_BUFFER_PICTURE,
- true,
- PIPE_FORMAT_VUYX);
+ switch (u_reduce_video_profile(profile)) {
+ case PIPE_VIDEO_CODEC_MPEG12:
+ return vl_create_mpeg12_context(pipe, profile,
+ chroma_format,
+ width, height,
+ true,
+ PIPE_FORMAT_XYUV);
+ default:
+ return NULL;
+ }
}