[mythtv-commits] [MythTV/mythtv] 9d0971: MythCoreContext: Squash clang-tidy warning

Mark Kendall noreply at github.com
Mon Jan 18 18:01:13 UTC 2021

  Branch: refs/heads/master
  Home:   https://github.com/MythTV/mythtv
  Commit: 9d09719e2579904169ded4abda90e774e56d19db
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2021-01-18 (Mon, 18 Jan 2021)

  Changed paths:
    M mythtv/libs/libmythbase/mythcorecontext.h

  Log Message:
  MythCoreContext: Squash clang-tidy warning

  Commit: 962ce1e7087b8c24ac705b3e0aba0fd2620313af
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2021-01-18 (Mon, 18 Jan 2021)

  Changed paths:
    M mythtv/libs/libmythui/platforms/drm/mythdrmconnector.cpp

  Log Message:
  MythDRMConnector: Revert to old array initialisation style

  Commit: a2c8bfaa7e9eab09f68dfd98d1a3c59155983f93
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2021-01-18 (Mon, 18 Jan 2021)

  Changed paths:
    M mythtv/libs/libmythui/mythdisplay.cpp
    M mythtv/libs/libmythui/mythdisplay.h
    M mythtv/libs/libmythui/mythmainwindow.cpp
    M mythtv/libs/libmythui/platforms/mythdisplaydrm.cpp
    M mythtv/libs/libmythui/platforms/mythdisplaydrm.h
    M mythtv/libs/libmythui/platforms/mythdrmdevice.cpp
    M mythtv/libs/libmythui/platforms/mythdrmdevice.h

  Log Message:
  libmythui: Extend DRM functionality

- there is code for further video related functionality but this commit
just enables mode switching when using MythDisplayDRM.
- mode switching is only available when we have compile time support for
Qt private headers - as these are needed to retrieve various DRM
- as for the similar raspberry pi specific code, mode switching is
restricted to refresh rate changes only; the Qt eglfs plugin does not
expect anyone else to change the framebuffer size and thus UI
presentation breaks when we change the video mode.
- there may be workarounds available to force Qt to use the largest
possible video mode at startup, and hence the largest possible
framebuffer, and emulate the window size thereafter - but this has not
been tested yet.

  Commit: 82cfccba05cb401c140cd6eed81b2cfe05ee0153
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2021-01-18 (Mon, 18 Jan 2021)

  Changed paths:
    M mythtv/libs/libmythtv/decoders/mythdrmprimecontext.cpp
    A mythtv/libs/libmythtv/drm/mythvideodrm.cpp
    A mythtv/libs/libmythtv/drm/mythvideodrm.h
    A mythtv/libs/libmythtv/drm/mythvideodrmbuffer.cpp
    A mythtv/libs/libmythtv/drm/mythvideodrmbuffer.h
    A mythtv/libs/libmythtv/drm/mythvideodrmutils.cpp
    A mythtv/libs/libmythtv/drm/mythvideodrmutils.h
    M mythtv/libs/libmythtv/libmythtv.pro
    M mythtv/libs/libmythtv/mythframe.h
    M mythtv/libs/libmythtv/opengl/mythdrmprimeinterop.cpp
    M mythtv/libs/libmythtv/opengl/mythdrmprimeinterop.h
    M mythtv/libs/libmythtv/opengl/mythopenglvideo.cpp
    M mythtv/libs/libmythtv/opengl/mythvaapidrminterop.cpp
    M mythtv/libs/libmythtv/opengl/mythvaapidrminterop.h
    M mythtv/libs/libmythtv/opengl/mythvaapiinterop.cpp

  Log Message:
  libmythtv: Initial support for DRM video rendering

- to enable runtime support, set the environment variable
MYTHTV_DRM_VIDEO and ensure the Qt QPA platform is explicitly set to
eglfs (either via the -platform command line argument or the
QT_QPA_PLATFORM environment variable)
- I recommend setting 'QT_LOGGING_RULES=qt.qpa.*=true' as well to confirm
that the MythTV internals are consistent with the Qt view of the DRM
- there is a lot going on here - and some of it even works.
- on all platforms tested (amdgpu, pi4 and tanix tx6), video is
displayed when supplied via a DRM decoder (v4l2_m2m, v4l2_request and
VAAPI with DRM).
- that's about as far as the good news gets. On all platforms there is
significant tearing and/or ordering issues with the video, sundry alpha
blending issues with the video and GUI planes and a number of
predictable, unrecoverable Qt rendering failures with AMD.
- Note: I'm fairly sure that no other player supports DRM rendering of
VAAPI decoded frames - and it is only included here for testing
purposes. If it does not work well on Intel based systems it will be

  Commit: 52e2a21b273f18ca76f4ea4276aea2034a05eb3c
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2021-01-18 (Mon, 18 Jan 2021)

  Changed paths:
    M mythtv/libs/libmythui/platforms/mythdrmdevice.cpp
    M mythtv/libs/libmythui/platforms/mythdrmdevice.h
    M mythtv/libs/libmythui/platforms/mythwaylandextras.cpp

  Log Message:
  libmythui: qEnvironmentVariable requires Qt 5.10

Compare: https://github.com/MythTV/mythtv/compare/f4ca2f3167f2...52e2a21b273f

More information about the mythtv-commits mailing list