[vlc-devel] [PATCH 00/20] Group Direct3D filters

Steve Lhomme robux4 at videolabs.io
Wed Nov 22 18:18:19 CET 2017


This set of patches group the D3D11 and D3D9 filters into a single DLL
respectively. They all share a reference to the same d3d_device_t so
that the ones with no direct access to a picture pool with this device
can deduce it from the environment.

The last 2 patches create the missing texture for such pictures coming
from a pool that didn't know about the opaque nature or the format. This
fixes #18936

This set of patches apply on top of https://patches.videolan.org/patch/18803/
to https://patches.videolan.org/patch/18806/

It can also be found on this branch https://code.videolan.org/robUx4/vlc/commits/direct3d11/global_ctx/9

Steve Lhomme (20):
  hw:d3d11: move the filter modules declaration in modules/hw/d3d11
  hw:d3d9: move the filter modules declaration in modules/hw/d3d9
  hw:d3d11: move the filters code in hw/d3d11
  hw:d3d9: move the filters code in hw/d3d9
  hw:d3d11: clean code
  dxa9: clean code
  dxva2_deinterlace: clean code
  d3d11_filters: fix adjust output when all values are default
  hw:d3d11: rename the Open/Close for each module
  hw:d3d9: rename the Open/Close for each module
  hw:d3d11: move all the filters into a single module
  hw:d3d9: move all the filters into a single module
  hw:d3d11: add a file to control the D3D11 device common to all filters
  hw:d3d9: add a file to control the D3D9 device common to all filters
  hw:d3d9: use d3d9_device_t instead of IDirect3DDevice9
  hw:d3d11: use d3d11_device_t instead of ID3D11Device
  hw:d3d11: make use of D3D11_FilterHoldInstance()
  hw:d3d9: make use of D3D9_FilterHoldInstance()
  d3d11_deinterlace: create the texture for pictures coming from a bogus
    pool
  dxva2_deinterlace: create the texture for pictures coming from a bogus
    pool

 configure.ac                                       |   4 +-
 modules/Makefile.am                                |   2 +
 modules/hw/d3d11/Makefile.am                       |  16 +++
 .../win32 => hw/d3d11}/d3d11_deinterlace.c         | 129 +++++++++++++--------
 .../d3d11_adjust.c => hw/d3d11/d3d11_filters.c}    | 128 ++++++++++++--------
 modules/hw/d3d11/d3d11_filters.h                   |  40 +++++++
 modules/hw/d3d11/d3d11_instance.c                  | 106 +++++++++++++++++
 modules/{video_chroma => hw/d3d11}/d3d11_surface.c |  53 ++++-----
 modules/hw/d3d9/Makefile.am                        |  14 +++
 .../win32/d3d9_adjust.c => hw/d3d9/d3d9_filters.c} |  67 ++++++-----
 modules/hw/d3d9/d3d9_filters.h                     |  40 +++++++
 modules/hw/d3d9/d3d9_instance.c                    | 107 +++++++++++++++++
 modules/{video_chroma => hw/d3d9}/dxa9.c           |  75 +++++-------
 .../win32 => hw/d3d9}/dxva2_deinterlace.c          |  96 +++++++--------
 modules/video_chroma/Makefile.am                   |  21 ----
 modules/video_output/Makefile.am                   |  24 +---
 16 files changed, 620 insertions(+), 302 deletions(-)
 create mode 100644 modules/hw/d3d11/Makefile.am
 rename modules/{video_output/win32 => hw/d3d11}/d3d11_deinterlace.c (84%)
 rename modules/{video_output/win32/d3d11_adjust.c => hw/d3d11/d3d11_filters.c} (86%)
 create mode 100644 modules/hw/d3d11/d3d11_filters.h
 create mode 100644 modules/hw/d3d11/d3d11_instance.c
 rename modules/{video_chroma => hw/d3d11}/d3d11_surface.c (95%)
 create mode 100644 modules/hw/d3d9/Makefile.am
 rename modules/{video_output/win32/d3d9_adjust.c => hw/d3d9/d3d9_filters.c} (93%)
 create mode 100644 modules/hw/d3d9/d3d9_filters.h
 create mode 100644 modules/hw/d3d9/d3d9_instance.c
 rename modules/{video_chroma => hw/d3d9}/dxa9.c (89%)
 rename modules/{video_output/win32 => hw/d3d9}/dxva2_deinterlace.c (89%)

-- 
2.14.2



More information about the vlc-devel mailing list