[vlc-devel] [PATCH 00/10] Deinterlace refactoring

Steve Lhomme robux4 at videolabs.io
Mon Jun 26 19:20:09 CEST 2017


This set of patches refactors and cleans the software deinterlacing code.

The idea is that a lot of the code found here can be reused by other
deinterlacer (and will be used) to find the previous fields and compute
the PTS for each field/frame based on the algorithm.

Now the deinterlacing is done via a callback for all methods of deinterlacing.
Other deinterlacers are encouraged to use the same callback and underlying code.

Steve Lhomme (10):
  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: use the same signature for all render
    methods
  video_filter: deinterlace: tell which methods won't care about the
    field element
  video_filter:deinterlace: use a flag to know if we're using the
    phosphor method
  video_filter:deinterlace: use a callback to call do the rendering on a
    field
  video_filter:deinterlace: move some structures in common.h

 modules/video_filter/Makefile.am                 |   3 +-
 modules/video_filter/deinterlace/algo_basic.c    |  42 ++-
 modules/video_filter/deinterlace/algo_basic.h    |  18 +-
 modules/video_filter/deinterlace/algo_ivtc.c     |  40 +--
 modules/video_filter/deinterlace/algo_ivtc.h     |   3 +-
 modules/video_filter/deinterlace/algo_phosphor.c |   7 +-
 modules/video_filter/deinterlace/algo_phosphor.h |   2 +-
 modules/video_filter/deinterlace/algo_x.c        |   7 +-
 modules/video_filter/deinterlace/algo_x.h        |   3 +-
 modules/video_filter/deinterlace/algo_yadif.c    |  12 +-
 modules/video_filter/deinterlace/common.c        | 317 +++++++++++++++++++
 modules/video_filter/deinterlace/common.h        |  62 +++-
 modules/video_filter/deinterlace/deinterlace.c   | 384 +++--------------------
 modules/video_filter/deinterlace/deinterlace.h   |  52 +--
 14 files changed, 514 insertions(+), 438 deletions(-)
 create mode 100644 modules/video_filter/deinterlace/common.c

-- 
2.12.1



More information about the vlc-devel mailing list