Patchwork [meta-fsl-arm,v4] Add gstreamer-imx GStreamer 1.0 plugins

login
register
mail settings
Submitter Carlos Rafael Giani
Date Feb. 2, 2014, 10:16 p.m.
Message ID <1391379360-18295-1-git-send-email-dv@pseudoterminal.org>
Download mbox | patch
Permalink /patch/66229/
State Changes Requested
Delegated to: Otavio Salvador
Headers show

Comments

Carlos Rafael Giani - Feb. 2, 2014, 10:16 p.m.
gstreamer-imx is an ongoing project to write GStreamer 1.0 plugins for
using the i.MX VPU,IPU, and GPU. With the plugins, the VPU en- and decoding
features can be used, the IPU can transform images (deinterlacing,
colorspace conversion etc.), and the GPU can display frames using
OpenGL ES and the Vivante direct textures. Currently, the plugins have
only been tested with the i.MX6 SoC series.

All plugins are based on appropriate GStreamer base classes. Physical
memory metadata structures make it possible to avoid costly frame copies,
making it possible to use transcoding chains that do not involve
CPU copies for example.

This recipe is sent to meta-fsl-arm to make these plugins more visible
and available to others.

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
---
 .../gstreamer/gstreamer1.0-imx_0.9.2.bb            | 29 ++++++++++++++++++++++
 1 file changed, 29 insertions(+)
 create mode 100644 recipes-multimedia/gstreamer/gstreamer1.0-imx_0.9.2.bb

Patch

diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-imx_0.9.2.bb b/recipes-multimedia/gstreamer/gstreamer1.0-imx_0.9.2.bb
new file mode 100644
index 0000000..2bbd3f9
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-imx_0.9.2.bb
@@ -0,0 +1,29 @@ 
+DESCRIPTION = "GStreamer 1.0 plugins for i.MX platforms"
+LICENSE = "LGPLv2+"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=55ca817ccb7d5b5b66355690e9abc605"
+SECTION = "multimedia"
+DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base libfslvpuwrap virtual/kernel virtual/egl \
+           virtual/libgles2 ${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)}"
+
+SRCBRANCH ?= "master"
+SRCREV = "331f268b3bc282351b82c3548e703ea04be72b2c"
+SRC_URI = "git://github.com/Freescale/gstreamer-imx.git;branch=${SRCBRANCH}"
+
+S = "${WORKDIR}/git"
+
+inherit waf
+
+CFLAGS += "-I${STAGING_KERNEL_DIR}/include"
+
+# configure the eglvivsink element to use the appropiate EGL platform code
+EGLVIVSINK_PLATFORM = "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', 'fb', d)}"
+EXTRA_OECONF = "--egl-platform=${EGLVIVSINK_PLATFORM}"
+
+# LIBV is used by gst-plugins-package.inc to specify the GStreamer version (0.10 vs 1.0)
+LIBV = "1.0"
+require recipes-multimedia/gstreamer/gst-plugins-package.inc
+
+# the following line is required to produce one package for each plugin
+PACKAGES_DYNAMIC = "^${PN}-.*"
+
+COMPATIBLE_MACHINE = "(mx6)"