summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZhao Yakui <yakui.zhao@intel.com>2015-01-07 12:45:34 +0800
committerXiang, Haihao <haihao.xiang@intel.com>2015-03-09 12:49:33 +0800
commit79b2c01caf9b12708148739c40dcf715e51c520b (patch)
treee129e6b9a8f56af2b10c0c3f512b587fff8e217d
parente49f43eea9ca6574a30011159018ba92d2ec6214 (diff)
Fix the broken attribute setting of i965_GetConfigAttrib
Now the some attributes are incorrectly reported. It is not supported while VA_ATTRIB_NOT_SUPPORTED flag is not returned. Signed-off-by: Zhao Yakui <yakui.zhao@intel.com> Reviewed-by: Xiang Haihao <haihao.xiang@intel.com> (cherry picked from commit dd23d450f5b2b70c36a0053a0892c0ff1e32e8cf)
-rw-r--r--src/i965_drv_video.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c
index ba14825..29ccf05 100644
--- a/src/i965_drv_video.c
+++ b/src/i965_drv_video.c
@@ -704,6 +704,7 @@ i965_GetConfigAttributes(VADriverContextP ctx,
/* Other attributes don't seem to be defined */
/* What to do if we don't know the attribute? */
for (i = 0; i < num_attribs; i++) {
+ attrib_list[i].value = VA_ATTRIB_NOT_SUPPORTED;
switch (attrib_list[i].type) {
case VAConfigAttribRTFormat:
attrib_list[i].value = i965_get_default_chroma_formats(ctx,
@@ -719,6 +720,7 @@ i965_GetConfigAttributes(VADriverContextP ctx,
attrib_list[i].value |= VA_RC_CBR;
break;
}
+ break;
case VAConfigAttribEncPackedHeaders:
if (entrypoint == VAEntrypointEncSlice) {
@@ -733,12 +735,14 @@ i965_GetConfigAttributes(VADriverContextP ctx,
}
break;
}
+ break;
case VAConfigAttribEncMaxRefFrames:
if (entrypoint == VAEntrypointEncSlice) {
attrib_list[i].value = (1 << 16) | (1 << 0);
break;
}
+ break;
case VAConfigAttribEncQualityRange:
if (entrypoint == VAEntrypointEncSlice) {
@@ -749,6 +753,7 @@ i965_GetConfigAttributes(VADriverContextP ctx,
attrib_list[i].value = ENCODER_QUALITY_RANGE;
break;
}
+ break;
case VAConfigAttribEncJPEG:
if( entrypoint == VAEntrypointEncPicture) {