[mythtv-commits] [MythTV/mythtv] dd0b7f: MythOpenGLVideo: Use custom defines for default/RG...

Mark Kendall noreply at github.com
Sun Nov 10 09:54:48 UTC 2019


  Branch: refs/heads/devel/2019-render
  Home:   https://github.com/MythTV/mythtv
  Commit: dd0b7f3f6a36210bcfb48def642e3ac70c366393
      https://github.com/MythTV/mythtv/commit/dd0b7f3f6a36210bcfb48def642e3ac70c366393
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2019-11-09 (Sat, 09 Nov 2019)

  Changed paths:
    M mythtv/libs/libmythtv/opengl/mythopenglvideo.cpp

  Log Message:
  -----------
  MythOpenGLVideo: Use custom defines for default/RGBA shader

- as well as YUV shaders.


  Commit: 64f2a157e043bbffabfc6ee0a41b47cfb62821ee
      https://github.com/MythTV/mythtv/commit/64f2a157e043bbffabfc6ee0a41b47cfb62821ee
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2019-11-09 (Sat, 09 Nov 2019)

  Changed paths:
    M mythtv/libs/libmythtv/libmythtv.pro
    A mythtv/libs/libmythtv/opengl/mythegldefs.h
    M mythtv/libs/libmythtv/opengl/mythmmalinterop.cpp

  Log Message:
  -----------
  Pi: Workaround conflicting EGL headers for open/closed source

- when MMAL is enabled, the Broadcom specific EGL headers are picked up
from (typically) /opt/vc/include
- this does not contain sundry extension definitions required when
building for open source OpenGL support.
- so add an extra header and define what is missing...


  Commit: 356ca4b6bf1535b3bc92cfd2a4690a528842e7c7
      https://github.com/MythTV/mythtv/commit/356ca4b6bf1535b3bc92cfd2a4690a528842e7c7
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2019-11-09 (Sat, 09 Nov 2019)

  Changed paths:
    M mythtv/libs/libmythtv/mythavutil.cpp
    M mythtv/libs/libmythtv/mythframe.cpp
    M mythtv/libs/libmythtv/mythframe.h

  Log Message:
  -----------
  MythFrame: Add a DRM PRIME pixel format


  Commit: cc7572f9b26189ad5d5d504c05f08e53e4e61b54
      https://github.com/MythTV/mythtv/commit/cc7572f9b26189ad5d5d504c05f08e53e4e61b54
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2019-11-09 (Sat, 09 Nov 2019)

  Changed paths:
    M mythtv/configure
    M mythtv/external/FFmpeg/configure
    M mythtv/external/FFmpeg/libavcodec/v4l2_buffers.c
    M mythtv/external/FFmpeg/libavcodec/v4l2_buffers.h
    M mythtv/external/FFmpeg/libavcodec/v4l2_context.c
    M mythtv/external/FFmpeg/libavcodec/v4l2_context.h
    M mythtv/external/FFmpeg/libavcodec/v4l2_m2m.c
    M mythtv/external/FFmpeg/libavcodec/v4l2_m2m.h
    M mythtv/external/FFmpeg/libavcodec/v4l2_m2m_dec.c

  Log Message:
  -----------
  FFmpeg: Patch FFmpeg for V4L2 codecs DRM PRIME support

- patches taken from https://github.com/lrusak/FFmpeg/commits/v4l2-
drmprime-v4
- all credit to Lukas Rusak (and the LibreELEC team?)
- libdrm is required


  Commit: 07e17d7e67042b7736003ba7dfa698e376ee30ee
      https://github.com/MythTV/mythtv/commit/07e17d7e67042b7736003ba7dfa698e376ee30ee
  Author: Mark Kendall <mark.kendall at gmail.com>
  Date:   2019-11-10 (Sun, 10 Nov 2019)

  Changed paths:
    M mythtv/libs/libmythtv/decoders/mythcodeccontext.cpp
    M mythtv/libs/libmythtv/decoders/mythv4l2m2mcontext.cpp
    M mythtv/libs/libmythtv/decoders/mythv4l2m2mcontext.h
    M mythtv/libs/libmythtv/libmythtv.pro
    A mythtv/libs/libmythtv/opengl/mythdrmprimeinterop.cpp
    A mythtv/libs/libmythtv/opengl/mythdrmprimeinterop.h
    M mythtv/libs/libmythtv/opengl/mythopenglinterop.cpp
    M mythtv/libs/libmythtv/opengl/mythopenglinterop.h
    M mythtv/libs/libmythtv/opengl/mythvideooutopengl.cpp
    M mythtv/libs/libmythtv/opengl/mythvideotexture.cpp
    M mythtv/libs/libmythtv/videobuffers.cpp

  Log Message:
  -----------
  V4L2 Codecs: Add DRM PRIME direct rendering support

- tested on a Pi 3
- significant performance improvement but far from perfect and still
doesn't feel as fast as it should be.
- returned texture is RGB so limited colourspace support and no
deinterlacing (as noted however, the VC4 driver does not return
interlacing flags - also appears to be an issue on other drivers)
- the DRM PRIME code should be generic and not tied to V4L2 - it could
in theory be used to display VAAPI frames.
- configure/configuration may need a little more work with respect to
libdrm


Compare: https://github.com/MythTV/mythtv/compare/6bdd15bab3bf...07e17d7e6704


More information about the mythtv-commits mailing list