[meta-freescale] [PATCH] gstreamer1.0-plugins-imx: Update to version 0.13.0

Carlos Rafael Giani dv at pseudoterminal.org
Tue Nov 21 13:10:09 PST 2017


Changes:

* New imxv4l2videosink element
  Currently only supports input physically contiguous memory blocks
  as input (so, for example, no videotestsrc)

* New Pango-based overlay elements using G2D for rendering

* gstimxcommon library is now public
  Necessary when implementing external sinks to retrieve the mapped
  physical memory address from gstreamer buffers
  (NOTE: ABI may change in the next few releases until this is stabilized)

* New optional ability to use GstPhysMemory from gst-plugins-bad

* imxv4l2videosrc:
  * Add checks for V4L XRGB555X and GStreamer NV61 pixel formats
  * Add UYVY support and make it the new default
    UYVY works better with IPU-based deinterlacing, since with I420,
    deinterlaced frames may exhibit a green band at the bottom, which
    is apparently an IPU bug related to the plane offsets.
  * Fix compile prior to Gstreamer 1.3.1
  * v4l2_buffer_pool: Add special case for tw6869 driver
    The tw6869 driver requires a different physical address to allow
    DMA'able buffers for decreasing latency between chip and display
  * v4l2src: add fractional "fps" property
    (obsoletes the "fps-n" property)
  * Add GstImxV4l2Meta init function
    This avoids the g_assert() that was caused by the missing init
    function
  * Add num-additional-buffers property
    This can be useful if capturing video isn't smooth; it sets the
    number of internal additional buffers, so if downstream consumes
    too many buffers, imxv4l2videosrc might end up doing a blocking
    wait until buffers are returned

* imxv4l2src plugin is now called imxv4l2video, because it also
  contains imxv4l2videosink
  Also, the v4l2 elements can be enabled/disabled in the build
  configuration individually now

* compositor:
  * Clear output also if the input format has an alpha channel
  * Only copy compositor input buffers to DMA memory once
    If a single input frame is used for multiple output frames, we would
    otherwise copy multiple times which can easily go to the limit of the
    memory bandwidth

* vpu:
  * Fix leak causd by missing GstVideoCodecState unref
  * Release decoder context GCond during flush to fix potential deadlock
  * Add memory tag to VPU framebuffer meta to avoid meta related crashes
  * Add support for GRAY8 frames as a "fake grayscale mode"
    Grayscale is actually encoded as I420, with the U and V planes
    filled with 0x80 bytes. This feature also makes libimxvpuapi 0.10.3
    the new minimum requirement.
  * Remove 8-pixel alignment from width & height sinkcaps
  * Framebuffer array: fix memory leak if we got out of memory
  * Handle releasing of buffers without assigned framebuffer
    This can happen if the buffer is released before it was actually
    used, e.g. when renegotiating at the very beginning; prevents
    a crash that would otherwise occur
  * Add parameter check to avoid encoder crash on flush

* g2d:
  * Always enable blending if the input frames have an alpha channel
    G2D automatically makes use not only of global alpha, but also of
    per-pixel alpha. Therefore, it makes sense to enable blending even
    if global alpha is set to 255, as long as the input frames have an
    alpha channel. Such blending is useful for composing a video frame
    with some partially-transparent overlays for example (not to be
    confused with hardware overlays though).
  * Add build configuration switches to explicitely specify G2D include
    and library paths
  * Disable cacheable memory allocation
    Several issues were reported with cacheable DMA memory, so it is
    turned off, at least for now

* blitter:
  * Add property to clear screen to black in blitter sinks
  * Add output-rotation property to videotransform base class

* audio:
  * Fix SIGFPE when restarting mp3 encoder
  * Fix reference counting for caps
  * Mark static codec caps as may be leaked
    This gets rid of the false positive in the leak tracer

* misc:
  * Update waf to 1.9.3 to fix compilation with Python 3.4+

Signed-off-by: Carlos Rafael Giani <dv at pseudoterminal.org>
---
 ...lugins-imx_0.12.2.bb => gstreamer1.0-plugins-imx_0.13.0.bb} | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)
 rename recipes-multimedia/gstreamer/{gstreamer1.0-plugins-imx_0.12.2.bb => gstreamer1.0-plugins-imx_0.13.0.bb} (89%)

diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.2.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.13.0.bb
similarity index 89%
rename from recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.2.bb
rename to recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.13.0.bb
index e7f75680..efd4ee19 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.2.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.13.0.bb
@@ -14,7 +14,7 @@ RDEPENDS_gstreamer1.0-plugins-imx-imxaudio = "gstreamer1.0-plugins-good-audiopar
 RDEPENDS_gstreamer1.0-plugins-imx-imxvpu = "gstreamer1.0-plugins-bad-videoparsersbad"
 
 SRCBRANCH ?= "master"
-SRCREV = "50ddcd9f2b6ecc3d94d0d2f71b6de841d8a8fb7b"
+SRCREV = "048d596dfc657f16d235029c39221b0a118e5c87"
 SRC_URI = "git://github.com/Freescale/gstreamer-imx.git;branch=${SRCBRANCH}"
 
 S = "${WORKDIR}/git"
@@ -41,19 +41,21 @@ EGLVIVSINK_DEPENDS = " \
        '', d), d)} \
 "
 
-PACKAGECONFIG ?= "uniaudiodec mp3encoder v4l2src"
+PACKAGECONFIG ?= "uniaudiodec mp3encoder v4l2src v4l2sink"
 PACKAGECONFIG_append_imxgpu3d = " eglvivsink"
-PACKAGECONFIG_append_imxgpu2d = " g2d"
+PACKAGECONFIG_append_imxgpu2d = " g2d g2dpango"
 PACKAGECONFIG_append_imxipu   = " ipu"
 PACKAGECONFIG_append_imxvpu   = " vpu"
 PACKAGECONFIG_append_imxpxp   = " pxp"
 
 PACKAGECONFIG[g2d] = ",--disable-g2d,imx-gpu-viv"
+PACKAGECONFIG[g2dpango] = ",--disable-g2dpango,imx-gpu-viv pango"
 PACKAGECONFIG[pxp] = ",--disable-pxp,"
 PACKAGECONFIG[ipu] = ",--disable-ipu,"
 PACKAGECONFIG[vpu] = ",--disable-vpu,libimxvpuapi"
 PACKAGECONFIG[eglvivsink] = "${EGL_PLATFORM_CONF},--disable-eglvivsink,${EGLVIVSINK_DEPENDS}"
-PACKAGECONFIG[v4l2src] = ",--disable-v4l2src,"
+PACKAGECONFIG[v4l2src] = ",--disable-imxv4l2videosrc,"
+PACKAGECONFIG[v4l2sink] = ",--disable-imxv4l2videosink,"
 PACKAGECONFIG[uniaudiodec] = ",--disable-uniaudiodec,imx-codec"
 PACKAGECONFIG[mp3encoder] = ",--disable-mp3encoder,imx-codec"
 
-- 
2.11.0



More information about the meta-freescale mailing list