decoder: vc1: fails only on advanced profile
In commit 2eb4394 the frame coding mode was verified for progressive regardless the profile. But the FCM is only valid in the advanced profile. This patch checks for the advanced profile before verifying FCM for progressive. https://bugzilla.gnome.org/show_bug.cgi?id=769250
This commit is contained in:
parent
59821a21e9
commit
7ebef58093
@ -957,7 +957,9 @@ decode_frame (GstVaapiDecoderVC1 * decoder, GstVC1BDU * rbdu, GstVC1BDU * ebdu)
|
||||
return get_status (result);
|
||||
}
|
||||
|
||||
if (frame_hdr->pic.advanced.fcm != GST_VC1_FRAME_PROGRESSIVE) {
|
||||
/* @FIXME: intel-driver cannot handle interlaced frames */
|
||||
if (priv->profile == GST_VAAPI_PROFILE_VC1_ADVANCED
|
||||
&& frame_hdr->pic.advanced.fcm != GST_VC1_FRAME_PROGRESSIVE) {
|
||||
GST_ERROR ("interlaced video not supported");
|
||||
return GST_VAAPI_DECODER_STATUS_ERROR_UNSUPPORTED_PROFILE;
|
||||
}
|
||||
@ -1304,6 +1306,7 @@ gst_vaapi_decoder_vc1_parse (GstVaapiDecoder * base_decoder,
|
||||
flags |= GST_VAAPI_DECODER_UNIT_FLAG_SLICE;
|
||||
break;
|
||||
case GST_VC1_FIELD:
|
||||
/* @FIXME: intel-driver cannot handle interlaced frames */
|
||||
GST_ERROR ("interlaced video not supported");
|
||||
return GST_VAAPI_DECODER_STATUS_ERROR_UNSUPPORTED_PROFILE;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user