diff options
author | wm4 <wm4@nowhere> | 2017-12-02 03:58:04 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2017-12-02 04:53:51 +0100 |
commit | 0780d3832997056b581cdecb29e605132fae9417 (patch) | |
tree | 340313db84f48ed4d7f43a7601cfc27e4f7347a8 /video/out/opengl/hwdec_dxva2egl.c | |
parent | 8b3dbab19eafee2da3685bb0a8550db448fad757 (diff) | |
download | mpv-0780d3832997056b581cdecb29e605132fae9417.tar.bz2 mpv-0780d3832997056b581cdecb29e605132fae9417.tar.xz |
hwdec: don't require setting legacy hwdec fields
With the recent changes, mpv's internal mechanisms got synced to
libavcodec's once more. Some things are still needed for filters (until
the mechanism gets replaced), but there's no need to require other hwdec
methods to use these fields. So remove them where they are unnecessary.
Also fix some minor leaks in the dxva2 backends, and set the driver_name
field in the Apple ones. Untested on Apple crap.
Diffstat (limited to 'video/out/opengl/hwdec_dxva2egl.c')
-rw-r--r-- | video/out/opengl/hwdec_dxva2egl.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/video/out/opengl/hwdec_dxva2egl.c b/video/out/opengl/hwdec_dxva2egl.c index 838cc80c8d..0f8a4adbb1 100644 --- a/video/out/opengl/hwdec_dxva2egl.c +++ b/video/out/opengl/hwdec_dxva2egl.c @@ -58,8 +58,8 @@ static void uninit(struct ra_hwdec *hw) { struct priv_owner *p = hw->priv; - if (p->hwctx.ctx) - hwdec_devices_remove(hw->devs, &p->hwctx); + hwdec_devices_remove(hw->devs, &p->hwctx); + av_buffer_unref(&p->hwctx.av_device_ref); if (p->device9ex) IDirect3DDevice9Ex_Release(p->device9ex); @@ -180,9 +180,7 @@ static int init(struct ra_hwdec *hw) ra_hwdec_mapper_free(&mapper); p->hwctx = (struct mp_hwdec_ctx){ - .type = HWDEC_DXVA2, .driver_name = hw->driver->name, - .ctx = (IDirect3DDevice9 *)p->device9ex, .av_device_ref = d3d9_wrap_device_ref((IDirect3DDevice9 *)p->device9ex), }; hwdec_devices_add(hw->devs, &p->hwctx); |