Propagate errors from PostConnect to the filter graph.

This fixes an issue when DXVA2 Native is refused during PostConnect,
and the software decoder is unavailable (wmv9 dmo not present)
Destruct the decoder object when init failed.

This avoids a half-initialized decoder lingering around and possibly
causing issues.
Check that the decoder object exists before dispatching commands to it.

This fixes an occasional crash when the decode thread enters an
unpredicted error state.
Fallback to avcodec for WMV3/VC-1 if the DMO decoder is not available.
Move the  EC_LENGTH_CHANGED event to after actually executing the change.
Add a DTS-HD subtype when the stream is HD.
Support Duck TrueMotion 1/2
Update ffmpeg
ffmpeg update for TS timestamp fix
avfilter dll version was increased to 4.
Build FFmpeg as LGPL

Since YADIF is now LGPL, nothing requires GPL anymore.
Block WMP/WMC from overwriting the initial track choice.
Fix TS duration retrieval on a bunch of files.
ITrackInfo should be enabled by default.
Disable AV_EF_CAREFUL

Its only used by two audio codecs, and can cause more harm than good.
Additionally, this matches the default error flags of ffmpeg.
Support signaling BT.2020 transfer matrix and primaries to madVR.

Additionally, clean up the code that keeps custom matrix/primaries out of
the media type.
Support BT.2020 in the YCbCr -> RGB conversion
Remove SHIFTFIX hack, not needed anymore in VS2013
Fix shift in buffer size calculation which resulted in too large allocs.

Fixes issue 426.
Check allocation of the conversion buffer