when picking a decoder config, sandersd@ points out that this:
if (dec_config.ConfigBitstreamRaw == 2)
break;
might never happen. in which case, what should we do when the loop runs out of options?
Not a conclusion but some facts.
ConfigBitstreamRaw == 2 means it supports DXVA_Slice_H264_Short.
ConfigBitstreamRaw == 1 means it supports DXVA_Slice_H264_Long, which can also be populated from slice_hdr, pps, and sps data.
So if the driver only supports 1, then the accelerator could use the long format. But that has to be signaled to the accelerator.
OTOH, I think most drivers today support short format, and if it doesn't then init_cb(false) should be called.
Comment 1 by rkuroiwa@chromium.org
, Oct 25 2017