diff options
author | Christian König <[email protected]> | 2011-04-07 20:10:55 +0200 |
---|---|---|
committer | Christian König <[email protected]> | 2011-04-07 20:10:55 +0200 |
commit | fcdf50f74befad8d89eb3f9cdfd88b82d1daa98c (patch) | |
tree | a3da251236f76a641124102aa6701717d49aeb3f /src/gallium/state_trackers | |
parent | 9d2e630cd02362bfa8f090640a55cf2dea9d64b3 (diff) |
[g3dvl] add support for different decoding entry points
Diffstat (limited to 'src/gallium/state_trackers')
-rw-r--r-- | src/gallium/state_trackers/xorg/xvmc/context.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/xorg/xvmc/context.c b/src/gallium/state_trackers/xorg/xvmc/context.c index 2690f8046a8..6f136f2b121 100644 --- a/src/gallium/state_trackers/xorg/xvmc/context.c +++ b/src/gallium/state_trackers/xorg/xvmc/context.c @@ -209,7 +209,7 @@ Status XvMCCreateContext(Display *dpy, XvPortID port, int surface_type_id, XVMC_MSG(XVMC_ERR, "[XvMC] Cannot decode requested surface type. Unsupported chroma format.\n"); return BadImplementation; } - if (mc_type != (XVMC_IDCT | XVMC_MOCOMP | XVMC_MPEG_2)) { + if ((mc_type & ~XVMC_IDCT) != (XVMC_MOCOMP | XVMC_MPEG_2)) { XVMC_MSG(XVMC_ERR, "[XvMC] Cannot decode requested surface type. Non-MPEG2/Mocomp/iDCT acceleration unsupported.\n"); return BadImplementation; } @@ -241,6 +241,9 @@ Status XvMCCreateContext(Display *dpy, XvPortID port, int surface_type_id, context_priv->decoder = vctx->vpipe->create_decoder(vctx->vpipe, ProfileToPipe(mc_type), + (mc_type & XVMC_IDCT) ? + PIPE_VIDEO_ENTRYPOINT_IDCT : + PIPE_VIDEO_ENTRYPOINT_MC, FormatToPipe(chroma_format), width, height); |