[FFmpeg-devel] [PATCH v08 0/3] *** kmsgrab, fbtile hwdownload_drm, VFs ***

hanishkvc hanishkvc at gmail.com
Sat Jul 11 10:52:36 EEST 2020


This consists of

P1) kmsgrab updated to pickup format_modifier using drm getfb2,
provided

	the user has not explicitly set a format_modifier and

	GetFB2 is part of xf86drmMode.h

Apply this patch set.

P2) hwcontext_drm updated to detile known tile layouts, when user
tries to get data from it. This uses the fbtile helper routines.

fbtile has been configured by default to be non-public and thus is
included into hwcontext_drm.c

fbtile now supports both tiling as well as detiling of supported
tile layouts. It also supports av_frame_copy_with_tiling, its
named as fbtile_frame_copy.

If required in future, one can expose fbtile as a public api by
defining FBTILE_SCOPE_PUBLIC, while compiling.

Apply this patch set.

P3) video filters vf_fbtiler and vf_hwdownload (with detile)

This is provided just for reference, in case someone is interested.

It supports fbtile compiled either as a public api or internal api.

This is a optional patch set.


hanishkvc (3):
  KMSGrab: getfb2 format_modifier if user doesnt specify
  fbtile tile/detile, hwcontext_drm detile NonLinear
  VF fbtiler (tile/detile) and hwdownload (detile)

 Changelog                   |   5 +
 configure                   |   5 +
 doc/filters.texi            | 103 +++++++++
 libavdevice/kmsgrab.c       |  31 ++-
 libavfilter/Makefile        |   1 +
 libavfilter/allfilters.c    |   1 +
 libavfilter/vf_fbtiler.c    | 247 ++++++++++++++++++++
 libavfilter/vf_hwdownload.c |  65 +++++-
 libavutil/Makefile          |   2 +
 libavutil/fbtile.c          | 434 ++++++++++++++++++++++++++++++++++++
 libavutil/fbtile.h          | 255 +++++++++++++++++++++
 libavutil/hwcontext_drm.c   |  36 ++-
 12 files changed, 1181 insertions(+), 4 deletions(-)
 create mode 100644 libavfilter/vf_fbtiler.c
 create mode 100644 libavutil/fbtile.c
 create mode 100644 libavutil/fbtile.h

-- 
2.25.1



More information about the ffmpeg-devel mailing list