GNOME Bugzilla – Bug 792589
msdk: decode: Add VC1 decoder
Last modified: 2018-02-13 23:08:08 UTC
Enable VC1 decoder in MSDK plugin. VC1 enablement is not straightforward like other codecs because of the input stream formats supported by MediaSDK. * Simple & Main profile (WMV3) We can enable Simple and Main profile decode with the usage of vc1parse in the pipeline. MSDK expecting in-stream sequence layer (SMPTE 421M Annex L, Table 265) for simple and main profile. The decodebin/playbin won't work because: 1: most of the asf streams output codec-data with 4 bytes sequence header (Table SMPTE 421M Annex L 263) 2: vc1parse is not yet an autoplugging element in the pipeline. 3: we don't have format conversion support in msdkvc1dec yet. * Advanced Profile (WVC1) Adding support for WVC1 requires more changes in msdk base decoder because: The current implementation of msdk base decoder expecting a full frame at the input, which mandates a parser before the decoder in many cases(eg: avc decoder only supports "byte-stream+au"). So there is no global mfxBitstream tacking (no support for bitstream appending to the same mfxBitstream) is enabled.
Created attachment 366910 [details] [review] Enable VC1 decode support in msdk plugin
Created attachment 367122 [details] [review] msdk: dec: Add non-packetized stream handling support
Created attachment 367123 [details] [review] msdk: vc1_dec: Add Advanced profile (WVC1) support
Created attachment 368330 [details] [review] Enable VC1 decode support in msdk plugin
Created attachment 368331 [details] [review] msdk: dec: Add non-packetized stream handling support
Created attachment 368332 [details] [review] msdk: vc1_dec: Add Advanced profile (WVC1) support
Review of attachment 368330 [details] [review]: commit 760e6e54a7353584f4933ced7202a326f4be84d9
Review of attachment 368331 [details] [review]: commit 55c0d7205d99adaea8edf7690861107cab085cb7
Review of attachment 368332 [details] [review]: commit 173b07ba11b48ae837351d4c6ac3c6d3c843ff28