[vlc-devel] [PATCH 00/15] Deinterlace refactoring v4
Steve Lhomme
robux4 at videolabs.io
Fri Jun 30 14:19:53 CEST 2017
Following the discussions I changed a few things:
- remove the b_single_field flag, it's actually the opposite of b_double_rate
- use 2 prototypes for the rendering callback depending if it's double rate
or not.
- rework the deinterlacing mode selection using a table
- move the IVTC timestamp handling in the generic code, via a flag to enable
Steve Lhomme (15):
video_filter:deinterlace: use an array of metadata rather than the
array in the metadata
video_filter:deinterlace: only compute the field duration when needed
video_filter:deinterlace: make sure we use the same setup for auto and
X
video_filter:deinterlace: use a union to store phosphor and ivtc
parameters
video_filter:deinterlace: don't use the field parameter in
RenderDiscard()
video_filter:deinterlace: move all phosphor handling after
GetOutputFormat
video_filter:deinterlace: remove useless fallback values
video_filter:deinterlace: normalize render callback signatures
video_filter:deinterlace: use a callback to call do the rendering on a
field
video_filter:deinterlace: move some structures in common.h
video_filter:deinterlace: assume the field duration from the output
framerate
video_filter:deinterlace: add function to initialize the deinterlacing
context
video_filter:deinterlace: move the deinterlacing parameters in a
structure
video_filter:deinterlace: group all algorithms in a table
video_filter:deinterlace: move the IVTC PTS handling in the common
code
modules/video_filter/Makefile.am | 3 +-
modules/video_filter/deinterlace/algo_basic.c | 31 +-
modules/video_filter/deinterlace/algo_basic.h | 16 +-
modules/video_filter/deinterlace/algo_ivtc.c | 40 +-
modules/video_filter/deinterlace/algo_ivtc.h | 4 +-
modules/video_filter/deinterlace/algo_phosphor.c | 7 +-
modules/video_filter/deinterlace/algo_phosphor.h | 2 +-
modules/video_filter/deinterlace/algo_x.c | 4 +-
modules/video_filter/deinterlace/algo_x.h | 2 +-
modules/video_filter/deinterlace/algo_yadif.c | 17 +-
modules/video_filter/deinterlace/algo_yadif.h | 5 +
modules/video_filter/deinterlace/common.c | 356 ++++++++++++++++
modules/video_filter/deinterlace/common.h | 91 ++++-
modules/video_filter/deinterlace/deinterlace.c | 496 ++++-------------------
modules/video_filter/deinterlace/deinterlace.h | 50 +--
15 files changed, 607 insertions(+), 517 deletions(-)
create mode 100644 modules/video_filter/deinterlace/common.c
--
2.12.1
More information about the vlc-devel
mailing list