[vlc-devel] [PATCH v2 00/20] Add draining support to filters
Steve Lhomme
robux4 at ycbcr.xyz
Wed Oct 14 14:39:00 CEST 2020
Changes since v1:
- fix misc compilation issues
- rework the fps code so that the extra pictures can actually be added
- rework the fps draining with more explanation. Using the p_sys->p_previous_pic->date
was incorrect as it was shifted already.
- keep the reference date for VDPAU x2 deinterlacing draining
- add truncated commit text in last patch
This patchset plus a few other patches can be found at
https://code.videolan.org/robUx4/vlc/-/commits/filters/refactor-ops/2
Steve Lhomme (20):
filter: add a drain callback for video filters
d3d11_surface: make sure the converter doesn't expect draining calls
dxa9: make sure the converter doesn't expect draining calls
vout_subpictures: make sure the scaler/converter doesn't expect
draining calls
ci_filters: make sure converters doesn't expect draining calls
image: make sure the converter doesn't expect draining calls
fps: only set the start date if there wasn't one set
fps: implement draining of extra pictures
deinterlace: implement draining of extra pictures
vaapi: implement draining of extra pictures in x2 deinterlacer
vdpau: implement draining of extra pictures in deinterlacer
mmal/deinterlace: implement draining of extra pictures in deinterlacer
transcode: video: don't drain the secondary filters
transcode: video: reindent code
filter_chain: separate the picture filtering from filter draining
filters: drain filter chains after the regular picture filtering
filters: drain internal filter chains when draining
transcode: video: drain all filter chains sequentially until they're
dry
filter_chain: do not drain pictures inside filter_chain_VideoFilter()
filter_chain: rework filter_chain_VideoDrain()
include/vlc_filter.h | 25 ++-
modules/hw/d3d11/d3d11_deinterlace.c | 12 ++
modules/hw/d3d11/d3d11_surface.c | 3 +
modules/hw/d3d9/dxa9.c | 3 +
modules/hw/d3d9/dxva2_deinterlace.c | 7 +
modules/hw/mmal/deinterlace.c | 37 +++--
modules/hw/vaapi/filters.c | 106 +++++++-----
modules/hw/vdpau/deinterlace.c | 61 ++++---
modules/stream_out/mosaic_bridge.c | 13 ++
modules/stream_out/sdi/SDIStream.cpp | 12 +-
modules/stream_out/transcode/video.c | 49 +++---
modules/video_chroma/chain.c | 9 +-
modules/video_chroma/cvpx.c | 7 +
modules/video_filter/canvas.c | 8 +-
modules/video_filter/ci_filters.m | 2 +
modules/video_filter/deinterlace/common.c | 152 +++++++++---------
modules/video_filter/deinterlace/common.h | 5 +
.../video_filter/deinterlace/deinterlace.c | 7 +
modules/video_filter/edgedetection.c | 27 +++-
modules/video_filter/fps.c | 58 +++----
src/libvlccore.sym | 1 +
src/misc/filter_chain.c | 47 +++---
src/misc/image.c | 2 +
src/video_output/video_output.c | 2 +-
src/video_output/vout_subpictures.c | 2 +
25 files changed, 420 insertions(+), 237 deletions(-)
--
2.26.2
More information about the vlc-devel
mailing list