[vlc-devel] [PATCH 00/14] mmal: Optimise buffer handling
Julian Scheel
julian at jusst.de
Wed Jun 3 09:50:25 CEST 2015
This patch series requires the previous cleanup series to be applied first.
These patches contain a major rework of the buffer handling wrt the relation
of mmal buffers and vlc pictures. The new approach of having mmal buffers tied
statically to vlc pictures avoid some pitfalls which could be easily hit with
the old approach when not being overly careful with the buffer code.
Furthermore this allows us to make use of the "zerocopy" mmal port feature,
which avoids a copy of the buffers being made between GPU and CPU. Right now
this can be only used for opaque buffers, which are a few byte only, but still
this gains a little extra performance. At some point in time we might be able
to use it for non-opaque mode as well.
Julian Scheel (14):
mmal/vout: Use fixed binding of mmal buffer to picture
mmal/codec: Try to apply fmt changes without disabling port
mmal/codec: Clear data from buffer header before release
mmal/codec: Do not disable ports for flushing
mmal/deinterlace: Clear data from buffer header before release
mmal/deinterlace: Release picture if unable to process
mmal/deinterlace: Rework to use pictures from vout pool
mmal/codec: Rename mmal-zerocopy option to mmal-opaque
mmal/codec: Do not use local buffer pool in opaque mode
mmal/deinterlace: Do not use local buffer pools
mmal/deinterlace: Do not filter the same picture twice
mmal/deinterlace: Free unusable buffers
mmal/vout: Use port bound pool allocation
mmal: Use zerocopy ports for opaque mode
modules/hw/mmal/codec.c | 176 +++++++++++++++++-----------
modules/hw/mmal/deinterlace.c | 259 ++++++++++++++++-------------------------
modules/hw/mmal/mmal_picture.c | 33 +-----
modules/hw/mmal/mmal_picture.h | 4 -
modules/hw/mmal/vout.c | 25 +++-
5 files changed, 230 insertions(+), 267 deletions(-)
--
2.4.0
More information about the vlc-devel
mailing list