[vlc-devel] [PATCH 0/3] Add plugins for MMAL/Raspberry Pi

Julian Scheel julian at jusst.de
Fri Apr 4 14:54:40 CEST 2014


This patch series introduces a decoder as well as a video output plugin using
the Multi Media Abstraction Layer (mmal) by Broadcom, found on the Raspberry
Pi. While there is support for the Raspberry Pi in the VLC OMX plugins already
these plugins come with some advantages:

 - Support for zerocopy through opaque pointers
 - Support for native overlay blending through DispManX
 - Support for automatic HDMI mode adaptation through tvservice
 - Dramatically smaller/simpler code-base than the OMX plugins have, due to
   the ease of the MMAL API compared to OMX

In our testing the plugins work very reliable already. As of now for building
the decoder module the rpi-userland needs to be patched manually with the
patches from:
https://github.com/raspberrypi/userland/pull/160

They should be mainlined into rpi-userland soon and will then be available
through common Raspberry distribution updates.

For the future we plan to add a deinterlace plugin, but for this we are
pending on the Broadcom/Raspberry team to expose the deinterlace filters
through MMAL API.

Looking forward to see some comments!

Cheers,
Julian & Dennis

Dennis Hamester (2):
  video_output/mmal: Add mmal based video output plugin
  codec/mmal: Add MMAL-based decoder plugin

Julian Scheel (1):
  mmal: Register opaque fourcc in core as fake_fmt

 configure.ac                    |  21 +
 include/vlc_fourcc.h            |   3 +
 modules/codec/Makefile.am       |  10 +
 modules/codec/mmal.c            | 566 +++++++++++++++++++++++++
 modules/video_output/Modules.am |   8 +
 modules/video_output/mmal.c     | 910 ++++++++++++++++++++++++++++++++++++++++
 src/misc/fourcc.c               |   4 +-
 7 files changed, 1520 insertions(+), 2 deletions(-)
 create mode 100644 modules/codec/mmal.c
 create mode 100644 modules/video_output/mmal.c

-- 
1.9.1




More information about the vlc-devel mailing list