2013-12-26, 11:49
Concerning VC-1 interlaced on linux, see here what Intel does:
That's from libva-driver-intel. So it just asserts down there and kills xbmc - sad. We need to workaround prior to opening any decoder, which is hard, as you don't know if VC1 is interlaced at all at this time. You have to check the priva-data of the avctx. And disabling VC1 completely is for sure not an option.
Code:
if (pic_param->sequence_fields.bits.interlace == 1 &&
pic_param->picture_fields.bits.frame_coding_mode != 0) { /*
frame-interlace or field-interlace */
/* FIXME: calculate reference field picture polarity */
assert(0);
ref_field_pic_polarity = 0;
}
That's from libva-driver-intel. So it just asserts down there and kills xbmc - sad. We need to workaround prior to opening any decoder, which is hard, as you don't know if VC1 is interlaced at all at this time. You have to check the priva-data of the avctx. And disabling VC1 completely is for sure not an option.