DXVA: fixes related to ffmpeg

Currently DXVA is broken on older Radeon HW which only allow a single instance of a DXVA decoder at a given time. The problem is that we can't destruct the entire DXVA object when ffmpeg call GetFormat, ffmpeg has still references like the hwaccel_context.
This PR fixes it by instructing all other potential DXVA objects to release the dxva decoder. All dxva decoder related interface calls are factored out into the DXVAContext.
Further it is required to refcount the CDecoder object when ffmpeg requests a buffer. Otherwise it may happen the ReleaseBuffer is called after the object was deleted.