From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by yocto-www.yoctoproject.org (Postfix, from userid 118) id 51E49E00C5D; Wed, 6 Apr 2016 01:29:10 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on yocto-www.yoctoproject.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_PASS autolearn=ham version=3.3.1 X-Spam-HAM-Report: * -0.0 SPF_HELO_PASS SPF: HELO matches SPF record * -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] Received: from ptmx.org (ptmx.org [178.63.28.110]) by yocto-www.yoctoproject.org (Postfix) with ESMTP id 41DDBE00C43 for ; Wed, 6 Apr 2016 01:29:04 -0700 (PDT) Received: from [172.16.1.4] (chello062178118086.5.14.vie.surfer.at [62.178.118.86]) by ptmx.org (Postfix) with ESMTPSA id 2774B34DA4; Wed, 6 Apr 2016 10:29:02 +0200 (CEST) To: Gary Bisson References: <1459928193-4771-1-git-send-email-dv@pseudoterminal.org> From: Carlos Rafael Giani Message-ID: <5704C8CE.2090908@pseudoterminal.org> Date: Wed, 6 Apr 2016 10:29:02 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: Cc: meta-freescale@yoctoproject.org Subject: Re: [meta-fsl-arm][PATCH] gstreamer1.0-plugins-imx: Update to version 0.12.1 X-BeenThere: meta-freescale@yoctoproject.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Usage and development list for the meta-fsl-* layers List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Apr 2016 08:29:10 -0000 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 2016-04-06 10:10, Gary Bisson wrote: > Carlos, All, > > On Wed, Apr 6, 2016 at 9:36 AM, Carlos Rafael Giani > wrote: >> The recipe now uses PACKAGECONFIG to allow for enabling/disabling plugins. >> Also, mx7 support has been added, and the libfslcodec->imx_codec renaming >> has been included. >> >> Changes: >> >> * compositor: Rename ImxCompositor(Pad) to ImxVideoCompositor(Pad) >> This prevents conflicts if both the NXP plugins and the gstreamer-imx >> are installed in the same rootfs >> >> * Add switches to wscript configuration to enable/disable plugins >> Until now, all plugins were built (unless their dependencies were >> missing). On some i.MX machines, some features are missing. For >> example, the i.MX7 has no VPU. To ensure deterministic builds, it is >> useful to selectively disable plugins in the build. >> >> * ipu+pxp: : Fix deadlocks and incorrect logging in case of init error >> This was causing a freeze if for example one tries to use PxP elements >> on an i.MX6 Dual/Quad >> >> * imxv4l2videosrc fixes and enhancements: >> * fixes to interlacing support (incl. workarounds for analog TV input) >> * remove format restriction in get_caps function >> this removes the limitation on I420 formats >> * simplified determination of fps (necessary due to driver limitations) >> >> * eglvivsink: wayland: Do not commit before buffers are swapped >> This fixes eglSwapBuffer swaps with damaged frames >> >> * Documentation additions >> Adds GPU memory leak notess to the FAQ >> >> * vpu: encoder: Expose motion estimation range as property >> >> * vpu: decoder: Drop output frame if its buffer cannot be allocated >> >> Signed-off-by: Carlos Rafael Giani >> --- >> ....12.0.bb => gstreamer1.0-plugins-imx_0.12.1.bb} | 34 +++++++++++++++++----- >> 1 file changed, 26 insertions(+), 8 deletions(-) >> rename recipes-multimedia/gstreamer/{gstreamer1.0-plugins-imx_0.12.0.bb => gstreamer1.0-plugins-imx_0.12.1.bb} (61%) >> >> diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.1.bb >> similarity index 61% >> rename from recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.0.bb >> rename to recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.1.bb >> index eaccb29..852388d 100644 >> --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.0.bb >> +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.12.1.bb >> @@ -2,11 +2,9 @@ DESCRIPTION = "GStreamer 1.0 plugins for i.MX platforms" >> LICENSE = "LGPLv2+" >> LIC_FILES_CHKSUM = "file://LICENSE;md5=55ca817ccb7d5b5b66355690e9abc605" >> SECTION = "multimedia" >> -# gstreamer1.0-plugins-bad is in DEPENDS because imxv4l2videosrc requires >> -# the GstPhotography headers and libraries >> -DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad imx-gpu-viv \ >> - libfslcodec libimxvpuapi virtual/kernel virtual/egl virtual/libgles2 \ >> - ${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)}" >> +# gstreamer1.0-plugins-bad is in DEPENDS because the build script scans for the >> +# GstPhotography headers and libraries >> +DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad virtual/kernel" > Shouldn't plugins-bad be a dependency for v4l2src only? The configuration switches only switch on/off the actual plugins (and their immediate dependencies, like GLES libraries, or libimxvpuapi). And, gstphotography is a dependency-less component of -bad. In the -bad tree, gstphotography can be found in gst-libs/ , while stuff that has external dependencies is in ext/. What this means is that gstphotography is *not* enabled/disabled by the v4l2src switch in the build script. This is intentional - dependency-less GStreamer *libraries* might be used by more than one gstreamer-imx plugin in the future, which is why they are autoconfigured in the root build script. (For example, gstreamer-video-1.0 is used by the vpu plugins as well as the ipu and pxp ones.) If I put -bad as a v4l2src dependency, then the build script would still scan for gstphotography if you turn off the v4l2src plugin. bitbake would then print a warning that -bad is a dependency but is not part of the DEPENDS list. > >> # add the audioparsers and the videoparsersbad plugins as RDEPENDS ; audioparsers >> # for the uniaudio decoder, videoparsersbad for the VPU video decoder >> # the gstreamer1.0-plugins-imx RDEPENDS is necessary to ensure the -good recipe is > Same for the RDEPENDS, I think they should be runtime dependencies of > uniaudiodec and vpu. True. I will fix this in a v2 recipe. > >> @@ -16,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 = "f8ad953c458be6a89f474a948b6401664a6a1745" >> +SRCREV = "11a7b366f211e54e0ec67c692287603a02640ff6" >> SRC_URI = "git://github.com/Freescale/gstreamer-imx.git;branch=${SRCBRANCH}" >> >> S = "${WORKDIR}/git" >> @@ -33,7 +31,27 @@ EGLVIVSINK_PLATFORM = "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', \ >> base_contains('DISTRO_FEATURES', 'wayland', 'wayland', \ >> 'fb', d),d)}" >> >> -EXTRA_OECONF = "--egl-platform=${EGLVIVSINK_PLATFORM} --kernel-headers=${STAGING_KERNEL_DIR}/include" >> +EGL_PLATFORM_CONF = "--egl-platform=${EGLVIVSINK_PLATFORM}" >> +EXTRA_OECONF = "--kernel-headers=${STAGING_KERNEL_DIR}/include" >> + >> +EGLVIVSINK_DEPENDS = " \ >> + virtual/egl virtual/libgles2 \ >> + ${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', \ >> + base_contains('DISTRO_FEATURES', 'wayland', 'wayland', \ >> + '', d),d)}" >> + >> +PACKAGECONFIG ?= "" >> +PACKAGECONFIG_mx6 = "g2d pxp ipu vpu eglvivsink v4l2src uniaudiodec mp3encoder" > Wouldn't it be better to split things here for each version of the > mx6, mx6sx doesn't need vpu nor ipu for instance, mx6sl doesn't need > eglvivsink either. > >> +PACKAGECONFIG_mx7 = "g2d pxp ipu v4l2src uniaudiodec mp3encoder" > i.MX7 doesn't have an IPU nor a 2D GPU. > > Hm yes, I do not have a full overview over all these variants. If you have a list handy that I can directly use, it would help, otherwise I'll get it from the reference manual and the individual SoC specs.