[vlc-devel] [PATCH 00/23] DXVA cleaning v2
Steve Lhomme
robux4 at videolabs.io
Wed Jun 21 14:14:45 CEST 2017
Some more cleaning and rebasing.
In the previous set va_surface.h still had references to D3D stuff. Now it's
all gone.
We also rely more on the input video_format_t to initalize the surfaces.
The surface count is now unsigned.
Steve Lhomme (23):
dxva: fix compilation warning
d3d11va: fix wrong array initialization
direct3d11: remove dead code
directx_va: make surface_count unsigned
directx_va: pass the surface count to pf_create_decoder_surfaces
directx_va: release the d3ddev in pf_destroy_device()
directx_va: do the d3ddec release in pf_destroy_video_service()
dxva: split the directx related parts from the pool/va parts
dxva2: move the device check in dxva since it's the only one that
supports it
directx_va: remove unused parameter
dxva: create the context copy when calling va_pool_Get()
va_surface: remove the unused decoderSurface
dxva: use the surface width/height from input format in
create_decoder_surfaces
directx_va: don't pass the AVCodecContext and es_format_t to
directx_va_Open
d3d11va: it's safe to load/unload d3d11.dll even in direct rendering
directx_va: make va_pic_context public via va_surface.h
directx_va: the context copy is responsible for the va_surface
refcount increment
directx_va: move the pre-allocated hw_surface in directx_va
dxva: we don't need a special release or Extract callback
va: remove vlc_va_Release() and vlc_va_Extract()
va_surface: release the surfaces held locally in DestroyVideoDecoder()
d3d11_fmt: don't nullify after a release
va: remove the deprecated setup() callback
modules/codec/Makefile.am | 2 +
modules/codec/avcodec/d3d11va.c | 227 +++++++++++-----------------
modules/codec/avcodec/directx_va.c | 182 +++-------------------
modules/codec/avcodec/directx_va.h | 56 +------
modules/codec/avcodec/dxva2.c | 176 +++++++++------------
modules/codec/avcodec/va.c | 13 --
modules/codec/avcodec/va.h | 40 +----
modules/codec/avcodec/va_surface.c | 202 +++++++++++++++++++++++++
modules/codec/avcodec/va_surface.h | 39 +++++
modules/codec/avcodec/va_surface_internal.h | 90 +++++++++++
modules/codec/avcodec/vaapi.c | 10 --
modules/codec/avcodec/video.c | 10 +-
modules/hw/vdpau/avcodec.c | 8 -
modules/video_chroma/d3d11_fmt.h | 30 +---
modules/video_chroma/d3d9_fmt.h | 10 +-
modules/video_output/win32/direct3d11.c | 17 ---
16 files changed, 528 insertions(+), 584 deletions(-)
create mode 100644 modules/codec/avcodec/va_surface.c
create mode 100644 modules/codec/avcodec/va_surface.h
create mode 100644 modules/codec/avcodec/va_surface_internal.h
--
2.12.1
More information about the vlc-devel
mailing list