diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2013-07-23 13:08:05 +0800 |
---|---|---|
committer | Xiang, Haihao <haihao.xiang@intel.com> | 2013-09-06 15:27:12 +0800 |
commit | 188004b83afd2dd7f8bde16e7c724aa50d5a90c1 (patch) | |
tree | 9abb53448a10145d728548500f106fa85b4e3d02 | |
parent | 5f037849ff4ece789ec4a7af20f8fa3905076fbd (diff) |
VPP: check the filter when query the video filter capabilities
Return VA_STATUS_ERROR_UNSUPPORTED_FILTER if an unsupported filter
was supplied
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
(cherry picked from commit 428723853f88b4d5cac436f5fd62e6cc64a9e8e9)
-rwxr-xr-x | src/i965_drv_video.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c index 4097750..bd6aa9a 100755 --- a/src/i965_drv_video.c +++ b/src/i965_drv_video.c @@ -4587,6 +4587,17 @@ VAStatus i965_QueryVideoProcFilterCaps( if (!filter_caps || !num_filter_caps) return VA_STATUS_ERROR_INVALID_PARAMETER; + for (i = 0; i < i965->codec_info->num_filters; i++) { + if (type == i965->codec_info->filters[i].type && + i965_os_has_ring_support(ctx, i965->codec_info->filters[i].ring)) + break; + } + + if (i == i965->codec_info->num_filters) + return VA_STATUS_ERROR_UNSUPPORTED_FILTER; + + i = 0; + switch (type) { case VAProcFilterNoiseReduction: case VAProcFilterSharpening: |