Try to gracefully abort when the HW does not support the requested
profile. There is no fallback unless profiles are correctly parsed
and matched through caps beforehand.
Copyright (C) 2011 Collabora
Version 0.3.7 - DD.Apr.2012
+* Fix vaapidecode to report unsupported codec profiles
* Don't forcibly resize user provided X windows (Holger Kaelberer)
* Recalculate render rect only if caps are negotiated (Holger Kaelberer)
error_decode:
{
GST_DEBUG("decode error %d", status);
- return GST_FLOW_UNEXPECTED;
+ switch (status) {
+ case GST_VAAPI_DECODER_STATUS_ERROR_UNSUPPORTED_CODEC:
+ case GST_VAAPI_DECODER_STATUS_ERROR_UNSUPPORTED_PROFILE:
+ case GST_VAAPI_DECODER_STATUS_ERROR_UNSUPPORTED_CHROMA_FORMAT:
+ ret = GST_FLOW_NOT_SUPPORTED;
+ break;
+ default:
+ ret = GST_FLOW_UNEXPECTED;
+ break;
+ }
+ return ret;
}
error_create_buffer:
{