gst1-plugins-imx: add package
PATCH 1/1 gst1-plugins-imx: add package
Open-source GStreamer 1.0 plugins for i.MX platforms. More info at https://github.com/Freescale/gstreamer-imx
---
This patch has been tested using an i.MX6Q SabreLite (nitrogen6x config) along with the usual Tears of Steel movie in 1080p:
http://media.xiph.org/mango/tears_of_steel_1080p.webm
Below are the commands used to test the different sinks:
$ gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm $ gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \ matroskademux ! imxvpudec ! imxipusink $ gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \ matroskademux ! imxvpudec ! imxeglvivsink
The toolchain used was the Sourcery CodeBench 2014.05. The video above also requires the following extra configuration in order to demux the content:
BR2_PACKAGE_GST1_PLUGINS_GOOD=y BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA=y
I'm not fond of all the dependencies of this package but I couldn't seem to find a way to do it differently. A try has been made to select the Vivante package automatically but it requires doing a select of BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q which doesn't work. Let me know if you'd like another mechanism to be able to select this plugin.
Thanks,
Gary
package/gstreamer1/Config.in | 1 + package/gstreamer1/gst1-plugins-imx/Config.in | 35 +++++++++++++ .../gst1-plugins-imx/gst1-plugins-imx.mk | 57 ++++++++++++++++++++++ 3 files changed, 93 insertions(+) create mode 100644 package/gstreamer1/gst1-plugins-imx/Config.in create mode 100644 package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk
package/gstreamer1/Config.in +1 -0
@@ -6,6 +6,7 @@ source "package/gstreamer1/gst1-plugins-base/Config.in" source "package/gstreamer1/gst1-plugins-good/Config.in" source "package/gstreamer1/gst1-plugins-bad/Config.in" source "package/gstreamer1/gst1-plugins-ugly/Config.in" +source "package/gstreamer1/gst1-plugins-imx/Config.in" source "package/gstreamer1/gst1-libav/Config.in" source "package/gstreamer1/gst-omx/Config.in" endif
package/gstreamer1/gst1-plugins-imx/Config.in new file +35 -0
@@ -0,0 +1,35 @@ +comment "gst1-plugins-imx needs an imx-specific Linux kernel to be built" + depends on BR2_arm && !BR2_LINUX_KERNEL + +comment "gst1-plugins-imx needs an (e)glibc toolchain" + depends on BR2_arm + depends on !BR2_TOOLCHAIN_USES_GLIBC + +comment "gst1-plugins-imx requires Freescale VPU wrapper libraries" + depends on BR2_arm + depends on !BR2_PACKAGE_LIBFSLVPUWRAP + +comment "gst1-plugins-imx requires Freescale GPU libraries for i.MX6" + depends on BR2_arm + depends on BR2_PACKAGE_LIBFSLVPUWRAP + depends on !BR2_PACKAGE_GPU_VIV_BIN_MX6Q + +config BR2_PACKAGE_GST1_PLUGINS_IMX + bool "gst1-plugins-imx" + depends on BR2_LINUX_KERNEL + depends on BR2_arm # Only relevant for i.MX + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_PACKAGE_GPU_VIV_BIN_MX6Q + depends on BR2_PACKAGE_LIBFSLVPUWRAP + select BR2_PACKAGE_GST1_PLUGINS_BASE + help + This is a set of GStreamer 1.0 plugins for plugins for Freescale's + i.MX platform, with emphasis on video en/decoding using the i.MX + VPU engine. + + Currently, this software has been tested only with the i.MX6 SoC + family. + + The software as a whole is currently in beta stage. + + More info at https://github.com/Freescale/gstreamer-imx
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk new file +57 -0
57 lines not on this page · raw message
Signature · 1 line
2.1.1
PATCH 1/1 gst1-plugins-imx: add package
Dear Gary, Peter,
Peter Seiderer submitted a different patch to add the same package back in March. Arnout and I compared them, see below our findings.
Quoted 18 lines · Gary Bisson
Open-source GStreamer 1.0 plugins for i.MX platforms. More info at https://github.com/Freescale/gstreamer-imx
Signed-off-by Gary Bisson <[email protected]>---
This patch has been tested using an i.MX6Q SabreLite (nitrogen6x config) along with the usual Tears of Steel movie in 1080p:
http://media.xiph.org/mango/tears_of_steel_1080p.webmBelow are the commands used to test the different sinks:
$ gst-launch-1.0 playbin uri=file:///root/tears_of_steel_1080p.webm $ gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \ matroskademux ! imxvpudec ! imxipusink $ gst-launch-1.0 filesrc location=/root/tears_of_steel_1080p.webm ! \ matroskademux ! imxvpudec ! imxeglvivsink
Quoted 4 lines
The toolchain used was the Sourcery CodeBench 2014.05. The video above also requires the following extra configuration in order to demux the content:
BR2_PACKAGE_GST1_PLUGINS_GOOD=y BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA=y
Thanks for providing details on how to test this.
Except that I'm in D?sseldorf for the Buildroot Developers Days right now and have no board with me for testing...
Quoted 22 lines
I'm not fond of all the dependencies of this package but I couldn't seem to find a way to do it differently. A try has been made to select the Vivante package automatically but it requires doing a select of
BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Qwhich doesn't work. Let me know if you'd like another mechanism to be able to select this plugin.Thanks,
Garypackage/gstreamer1/Config.in | 1 + package/gstreamer1/gst1-plugins-imx/Config.in | 35 +++++++++++++ .../gst1-plugins-imx/gst1-plugins-imx.mk | 57 ++++++++++++++++++++++ 3 files changed, 93 insertions(+)create mode 100644 package/gstreamer1/gst1-plugins-imx/Config.in create mode 100644
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mkpackage/gstreamer1/Config.in +0
-0
package/gstreamer1/Config.in source "package/gstreamer1/gst1-plugins-base/Config.in" · line 9
Quoted 4 lines
package/gstreamer1/Config.in +1
-0@@ -6,6 +6,7 @@ source "package/gstreamer1/gst1-plugins-base/Config.in" source "package/gstreamer1/gst1-plugins-good/Config.in" source "package/gstreamer1/gst1-plugins-bad/Config.in" source "package/gstreamer1/gst1-plugins-ugly/Config.in" +source "package/gstreamer1/gst1-plugins-imx/Config.in"
The package name is consistent with the other gst1 plugins. To me, This is better than the name chosen by Peter Seiderer (gstreamer1-imx).
Quoted 14 lines
package/gstreamer1/Config.in +0
-0source "package/gstreamer1/gst1-libav/Config.in" source "package/gstreamer1/gst-omx/Config.in" endifpackage/gstreamer1/gst1-plugins-imx/Config.in new file +5
-0@@ -0,0 +1,35 @@ +comment "gst1-plugins-imx needs an imx-specific Linux kernel to be built" + depends on BR2_arm && !BR2_LINUX_KERNEL + +comment "gst1-plugins-imx needs an (e)glibc toolchain" + depends on BR2_arm
package/gstreamer1/gst1-plugins-imx/Config.in line 15
Quoted 10 lines
package/gstreamer1/gst1-plugins-imx/Config.in new file +10
-0+ depends on !BR2_TOOLCHAIN_USES_GLIBC + +comment "gst1-plugins-imx requires Freescale VPU wrapper libraries" + depends on BR2_arm + depends on !BR2_PACKAGE_LIBFSLVPUWRAP + +comment "gst1-plugins-imx requires Freescale GPU libraries for i.MX6" + depends on BR2_arm + depends on BR2_PACKAGE_LIBFSLVPUWRAP + depends on !BR2_PACKAGE_GPU_VIV_BIN_MX6Q
It would be better to have only one comment showing all the dependencies at once to avoid cluttering the menuconfig screen when the dependencies are not met. Also, please format it according to the guidelines in
http://nightly.buildroot.org/manual.html#dependencies-target-toolchain-options
BTW, the last warning should be shown regardless of the value of BR2_PACKAGE_LIBFSLVPUWRAP, nope?
package/gstreamer1/gst1-plugins-imx/Config.in line 24
Quoted 9 lines
package/gstreamer1/gst1-plugins-imx/Config.in new file +9
-0+ +config BR2_PACKAGE_GST1_PLUGINS_IMX + bool "gst1-plugins-imx" + depends on BR2_LINUX_KERNEL + depends on BR2_arm # Only relevant for i.MX + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_PACKAGE_GPU_VIV_BIN_MX6Q + depends on BR2_PACKAGE_LIBFSLVPUWRAP + select BR2_PACKAGE_GST1_PLUGINS_BASE
Your depends + selects and Peter's ones are pretty different. Here are Peter's:
package/gstreamer1/gst1-plugins-imx/Config.in line 31
Quoted 7 lines
package/gstreamer1/gst1-plugins-imx/Config.in new file +7
-0+ depends on BR2_LINUX_KERNEL # imx-lib + depends on BR2_arm # Only relevant for i.MX + select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_LIBFSLVPUWRAP + select BR2_PACKAGE_IMX_LIB + select BR2_PACKAGE_LIBFSLPARSER + select BR2_PACKAGE_LIBFSLCODEC
According to Gary, (e)glibc is needed. Peter, did you build-test with uClibc (or musl)?
How about imx-lib, libfslparser and libfslcodec?
It would be great if you could have a list that really matches the package. It's probably going to be a mix of the two, but I don't know exactly which pieces should be picked.
package/gstreamer1/gst1-plugins-imx/Config.in line 33
Quoted 9 lines
package/gstreamer1/gst1-plugins-imx/Config.in new file +9
-0+ help + This is a set of GStreamer 1.0 plugins for plugins for Freescale's + i.MX platform, with emphasis on video en/decoding using the i.MX + VPU engine. + + Currently, this software has been tested only with the i.MX6 SoC + family. + + The software as a whole is currently in beta stage.
Some of Peter's comments are really informative, such as:
package/gstreamer1/gst1-plugins-imx/Config.in
Quoted 6 lines
package/gstreamer1/gst1-plugins-imx/Config.in new file +6
-0+ [...] It requires a kernel that + includes the i.MX6 specific headers to be built. + + To use the VPU, its firmware blob must be installed as well. This + can be found in the firmware-imx package in the "Hardware handling" + menu.
Can you merge the two statements?
Quoted 8 lines
package/gstreamer1/gst1-plugins-imx/Config.in new file +2
-0+ + More info at https://github.com/Freescale/gstreamer-imxpackage/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk new file +0
-0
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk line 9
Quoted 9 lines
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk new file +9
-0@@ -0,0 +1,57 @@ +################################################################################ +# +# gst1-plugins-imx +# +################################################################################ + +GST1_PLUGINS_IMX_VERSION = 0.9.9 +GST1_PLUGINS_IMX_SITE = https://github.com/Freescale/gstreamer-imx.git +GST1_PLUGINS_IMX_SITE_METHOD = git
Use the github helper macro:
http://nightly.buildroot.org/manual.html#github-download-url
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk line 17
Quoted 8 lines
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk new file +8
-0+ +GST1_PLUGINS_IMX_LICENSE = LGPLv2+ +GST1_PLUGINS_IMX_LICENSE_FILES = LICENSE + +GST1_PLUGINS_IMX_INSTALL_STAGING = YES + +GST1_PLUGINS_IMX_DEPENDENCIES += host-pkgconf host-python \ + gpu-viv-bin-mx6q gstreamer1 gst1-plugins-base libfslvpuwrap
Peter's version does not depend on host-python, yours does.
Actually that dependency is needed becase waf does not work with recent python3 interpreters. That's why all Buildroot packages that use waf (jack2, midori, samba4) depend on it.
Quoted 7 lines
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk new file +7
-0+ +# needs access to imx-specific kernel headers +GST1_PLUGINS_IMX_DEPENDENCIES += linux +GST1_PLUGINS_IMX_CONF_OPTS += --prefix="/usr" \ + --kernel-headers="$(LINUX_DIR)/include" + +ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y)
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk line 34
Quoted 10 lines
package/gstreamer1/gst1-plugins-imx/gst1-plugins-imx.mk new file +10
-0+GST1_PLUGINS_IMX_DEPENDENCIES += xlib_libX11 +GST1_PLUGINS_IMX_CONF_OPTS += --egl-platform=x11 +else +ifeq ($(BR2_PACKAGE_WAYLAND),y) +GST1_PLUGINS_IMX_DEPENDENCIES += wayland +GST1_PLUGINS_IMX_CONF_OPTS += --egl-platform=wayland +else +GST1_PLUGINS_IMX_CONF_OPTS += --egl-platform=fb +endif +endif
...and you support X11 and Wayland, which is good.
Overall your patch looks better, except Peter lists more mandatory dependencies (perhaps some or all are actually neede), has a more informative package description and uses the github helper. Merging the two patches to get the best of each would be good, and it would be great if you could cooperate to do that!
I'm afraid I haven't much experience on i.MX to help, but I'll be glad to test your work (but please keep me in Cc:).
Signature · 1 line
Luca
PATCH 1/1 gst1-plugins-imx: add package
Hi Luca,
Thanks for your feedback, below are my comments.
Sorry Peter I didn't see your patch from March.
Quoted 1 line · Luca Ceresoli
Dear Gary, Peter,
[...]
Quoted 5 lines
It would be better to have only one comment showing all the dependencies at once to avoid cluttering the menuconfig screen when the dependencies are not met. Also, please format it according to the guidelines in
http://nightly.buildroot.org/manual.html#dependencies-target-toolchain-options
Ok I can rework those comments.
Quoted 3 lines
BTW, the last warning should be shown regardless of the value of
BR2_PACKAGE_LIBFSLVPUWRAP, nope?
The goal here was to show only one comment at a time. Both comments will be merged in one.
Quoted 3 lines
[...]
According to Gary, (e)glibc is needed. Peter, did you build-test with uClibc (or musl)?
Actually this dependency is not required as it is implicit, the real eglibc dependency comes from the GPU_VIV package.
Quoted 2 lines
How about imx-lib, libfslparser and libfslcodec?
No, Peter's dependencies seem to have some legacy from the old gstreamer plugin, see package/gstreamer/gst-fsl-plugins/Config.in. Moreover it is missing the GPU_VIV package dependency required to have the imxg2d and imxegl plugins and also narrows this plugin to iMX6 platforms only.
Quoted 4 lines
It would be great if you could have a list that really matches the package. It's probably going to be a mix of the two, but I don't know exactly which pieces should be picked.
The best is to compare the dependencies from the Yocto recipe:
https://github.com/Freescale/meta-fsl-arm/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.9.9.bb
This is what I've based my package on.
Quoted 2 lines
[...]
Can you merge the two statements?
I can add the Kernel header comment but regarding the VPU I've offered a patch for the firmware to be selected when imx-vpu package is enabled:
http://lists.busybox.net/pipermail/buildroot/2014-October/107894.html
Quoted 3 lines
[...]
Use the github helper macro:
http://nightly.buildroot.org/manual.html#github-download-url
Ok.
Quoted 6 lines
[...]
Peter's version does not depend on host-python, yours does.Actually that dependency is needed becase waf does not work with recent python3 interpreters. That's why all Buildroot packages that use waf (jack2, midori, samba4) depend on it.
Yes host-python is required.
Quoted 12 lines
[...]
...and you support X11 and Wayland, which is good.Overall your patch looks better, except Peter lists more mandatory dependencies (perhaps some or all are actually neede), has a more informative package description and uses the github helper. Merging the two patches to get the best of each would be good, and it would be great if you could cooperate to do that!
I'm afraid I haven't much experience on i.MX to help, but I'll be glad to test your work (but please keep me in Cc:).
No problem I'll keep you in cc. But what is the plan now? Should I offer a v2 or let Peter integrate the remarks above in his patch?
Thanks,
Gary
PATCH 1/1 gst1-plugins-imx: add package
Dear Gary,
Quoted 17 lines · Gary Bisson
Hi Luca,
Thanks for your feedback, below are my comments.
Sorry Peter I didn't see your patch from March.Quoted 1 line · Luca Ceresoli
Dear Gary, Peter,
[...]
Quoted 5 lines
It would be better to have only one comment showing all the dependencies at once to avoid cluttering the menuconfig screen when the dependencies are not met. Also, please format it according to the guidelines in
http://nightly.buildroot.org/manual.html#dependencies-target-toolchain-optionsOk I can rework those comments.
Quoted 3 lines
BTW, the last warning should be shown regardless of the value of
BR2_PACKAGE_LIBFSLVPUWRAP, nope?
Quoted 7 lines
The goal here was to show only one comment at a time. Both comments will be merged in one.
Quoted 3 lines
[...]
According to Gary, (e)glibc is needed. Peter, did you build-test with uClibc (or musl)?Actually this dependency is not required as it is implicit, the real eglibc dependency comes from the
GPU_VIVpackage.
I see. A brief comment would be helpful, as it is for all inherited dependencies. Example:
# Required by gpu-viv-bin-mx6q
comment "gst1-plugins-imx needs an (e)glibc toolchain"
depends on BR2_arm
depends on !BR2_TOOLCHAIN_USES_GLIBC
Quoted 7 lines
Quoted 2 lines
How about imx-lib, libfslparser and libfslcodec?
No, Peter's dependencies seem to have some legacy from the old gstreamer plugin, see package/gstreamer/gst-fsl-plugins/Config.in. Moreover it is missing the
GPU_VIVpackage dependency required to have the imxg2d and imxegl plugins and also narrows this plugin to iMX6 platforms only.Quoted 1 line
Quoted 5 lines
Quoted 3 lines
It would be great if you could have a list that really matches the package. It's probably going to be a mix of the two, but I don't know exactly which pieces should be picked.
The best is to compare the dependencies from the Yocto recipe:
https://github.com/Freescale/meta-fsl-arm/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.9.9.bb
Ok.
Quoted 7 lines
This is what I've based my package on.
Quoted 2 lines
[...]
Can you merge the two statements?I can add the Kernel header comment but regarding the VPU I've offered a patch for the firmware to be selected when imx-vpu package is enabled:
http://lists.busybox.net/pipermail/buildroot/2014-October/107894.html
Ouch, I almost forgot that patch. I just added my Reviewed-by:.
Quoted 20 lines
Quoted 3 lines
[...]
Use the github helper macro:
http://nightly.buildroot.org/manual.html#github-download-urlOk.
Quoted 6 lines
[...]
Peter's version does not depend on host-python, yours does.Actually that dependency is needed becase waf does not work with recent python3 interpreters. That's why all Buildroot packages that use waf (jack2, midori, samba4) depend on it.
Yes host-python is required.
Quoted 9 lines
[...]
...and you support X11 and Wayland, which is good.Overall your patch looks better, except Peter lists more mandatory dependencies (perhaps some or all are actually neede), has a more informative package description and uses the github helper. Merging the two patches to get the best of each would be good, and it would be great if you could cooperate to do that!
Quoted 5 lines
Quoted 3 lines
I'm afraid I haven't much experience on i.MX to help, but I'll be glad to test your work (but please keep me in Cc:).
No problem I'll keep you in cc. But what is the plan now? Should I offer a v2 or let Peter integrate the remarks above in his patch?
Well, you can send your own patch, or if Peter wants to cooperate then he may be helpful. But he's not been active in the latest months, so unless he gets in touch I'd go on anyway if I were you.
Signature · 1 line
Luca
PATCH 1/1 gst1-plugins-imx: add package
Quoted 9 lines · Luca Ceresoli
Dear Gary,
Quoted 6 lines · Gary Bisson
Hi Luca,
Thanks for your feedback, below are my comments.
Sorry Peter I didn't see your patch from March.On 10/12/2014 07:43 AM, Luca Ceresoli wrote:
[snip]
Quoted 5 lines
Quoted 4 lines
Quoted 2 lines
According to Gary, (e)glibc is needed. Peter, did you build-test with uClibc (or musl)?
Actually this dependency is not required as it is implicit, the real eglibc dependency comes from the
GPU_VIVpackage.
Quoted 7 lines
I see. A brief comment would be helpful, as it is for all inherited dependencies. Example:
# Required by gpu-viv-bin-mx6q
comment "gst1-plugins-imx needs an (e)glibc toolchain"
depends onBR2_arm
depends on !BR2_TOOLCHAIN_USES_GLIBC
That's not the right place for pointing to gpu-viv-bin-mx6q. It should be
something like:
config BR2_PACKAGE_GST1_PLUGINS_IMX
bool "gst1-plugins-imx"
depends on BR2_LINUX_KERNEL
depends on BR2_arm # Only relevant for i.MX
depends on BR2_TOOLCHAIN_USES_GLIBC # gpu-viv-bin-mx6q select BR2_PACKAGE_GPU_VIV_BIN_MX6Q
# Cannot select libfslvpuwrap because user must select the CPU depends on BR2_PACKAGE_LIBFSLVPUWRAP
(I added that thing about libfslvpuwrap but I'm not sure of it...)
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH 1/1 gst1-plugins-imx: add package
Arnout, all,
Quoted 18 lines · Arnout Vandecappelle
[snip]
Quoted 4 lines
# Required by gpu-viv-bin-mx6q
comment "gst1-plugins-imx needs an (e)glibc toolchain"
depends onBR2_arm
depends on !BR2_TOOLCHAIN_USES_GLIBCThat's not the right place for pointing to gpu-viv-bin-mx6q. It should be
something like:config
BR2_PACKAGE_GST1_PLUGINS_IMX
bool "gst1-plugins-imx"
depends onBR2_LINUX_KERNEL
depends onBR2_arm# Only relevant for i.MX
depends onBR2_TOOLCHAIN_USES_GLIBC# gpu-viv-bin-mx6q selectBR2_PACKAGE_GPU_VIV_BIN_MX6Q
# Cannot select libfslvpuwrap because user must select the CPU depends onBR2_PACKAGE_LIBFSLVPUWRAP
Quoted 3 lines
(I added that thing about libfslvpuwrap but I'm not sure of it...)
That is actually what I said in the first e-mail, I am not proud of all those dependencies but I couldn't find a way to select GPU_VIV_MX6Q as it is only selectable if FREESCALE_IMX_PLATFORM is set
to FREESCALE_IMX_PLATFORM_IMX6Q. A select like above would give an error but I'm open to any other solution.
Thanks,
Gary
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20141014/98b98695/attachment.html>
PATCH 1/1 gst1-plugins-imx: add package
Quoted 23 lines · Gary Bisson
Arnout, all,
On Tue, Oct 14, 2014 at 7:31 AM, Arnout Vandecappelle <[email protected] <mailto:[email protected]>> wrote:
[snip]
> # Required by gpu-viv-bin-mx6q
> comment "gst1-plugins-imx needs an (e)glibc toolchain"
> depends onBR2_arm
> depends on !BR2_TOOLCHAIN_USES_GLIBCThat's not the right place for pointing to gpu-viv-bin-mx6q. It should be
something like:config
BR2_PACKAGE_GST1_PLUGINS_IMX
bool "gst1-plugins-imx"
depends onBR2_LINUX_KERNEL
depends onBR2_arm# Only relevant for i.MX depends onBR2_TOOLCHAIN_USES_GLIBC# gpu-viv-bin-mx6q selectBR2_PACKAGE_GPU_VIV_BIN_MX6Q
# Cannot select libfslvpuwrap because user must select the CPU depends onBR2_PACKAGE_LIBFSLVPUWRAP
Quoted 7 lines
(I added that thing about libfslvpuwrap but I'm not sure of it...)
That is actually what I said in the first e-mail, I am not proud of all those dependencies but I couldn't find a way to select
GPU_VIV_MX6Qas it is only selectable ifFREESCALE_IMX_PLATFORMis set toFREESCALE_IMX_PLATFORM_IMX6Q. A select like above would give an error but I'm open to any other solution.
Actually, you can do
select BR2_PACKAGE_FREESCALE_IMX select BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
I'm not entirely sure if that's good though, because if the user has selected
one of the other i.MX platforms and he thinks that he can use GStreamer with it, he'll get something completely different from what he expected...
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH 1/1 gst1-plugins-imx: add package
Arnout, All,
On 2014-10-14 23:05 +0200, Arnout Vandecappelle spake thusly:
Quoted 25 lines · Gary Bisson
Quoted 24 lines
On Tue, Oct 14, 2014 at 7:31 AM, Arnout Vandecappelle <[email protected] <mailto:[email protected]>> wrote:
[snip]
> # Required by gpu-viv-bin-mx6q
> comment "gst1-plugins-imx needs an (e)glibc toolchain"
> depends onBR2_arm
> depends on !BR2_TOOLCHAIN_USES_GLIBCThat's not the right place for pointing to gpu-viv-bin-mx6q. It should be
something like:config
BR2_PACKAGE_GST1_PLUGINS_IMX
bool "gst1-plugins-imx"
depends onBR2_LINUX_KERNEL
depends onBR2_arm# Only relevant for i.MX depends onBR2_TOOLCHAIN_USES_GLIBC# gpu-viv-bin-mx6q selectBR2_PACKAGE_GPU_VIV_BIN_MX6Q
# Cannot select libfslvpuwrap because user must select the CPU depends onBR2_PACKAGE_LIBFSLVPUWRAP(I added that thing about libfslvpuwrap but I'm not sure of it...)
Quoted 8 lines
Quoted 4 lines
That is actually what I said in the first e-mail, I am not proud of all those dependencies but I couldn't find a way to select
GPU_VIV_MX6Qas it is only selectable ifFREESCALE_IMX_PLATFORMis set toFREESCALE_IMX_PLATFORM_IMX6Q. A select like above would give an error but I'm open to any other solution.Actually, you can do
selectBR2_PACKAGE_FREESCALE_IMXselectBR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q
No you can't do that, because BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q is part of a choice, and you can not select a choice entry.
So a 'depends on' it must be in this case.
Not sure what to do about the comment, though. We currently have no such case documented in the manual; only comments about toolchain deps are described...
I'm not against adding comments about dependencies on other packages, but I think we should keep them to a minimal level, like dependencies on biggish stuff (like X.org), or non-obvious stuff.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 gst1-plugins-imx: add package
Yann, All,
Quoted 10 lines · Yann E. MORIN
[snip]
No you can't do that, becauseBR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Qis part of a choice, and you can not select a choice entry.So a 'depends on' it must be in this case.
Not sure what to do about the comment, though. We currently have no such case documented in the manual; only comments about toolchain deps are described...
Quoted 6 lines
I'm not against adding comments about dependencies on other packages, but I think we should keep them to a minimal level, like dependencies on biggish stuff (like X.org), or non-obvious stuff.
Regards,
Yann E. MORIN.
I agree that a dependency seemed like the only option. Regarding the comment it was more about showing the package exists. Although doing a search will tell you about it and its dependencies I'm afraid people would think the package is missing.
As a comparison the Gstreamer 0.10 fsl plugin always shows up as it does not depend on iMX6 GPU libs.
Anyway, would it make sense for me to offer a patch v2 or should we wait to agree first on modifications?
So far I have listed those modifications to be made on the current version:
- Use of github helper macro
- Modify package comment with Peter S. original patch
- Remove eglibc dependency (already from GPU libs)
But I am still unclear on two items:
- Package naming: although Peter K. did prefer gstreamer1-imx over gstreamer-imx [1], gst1-plugins-imx still looks closer to BR plugin naming. Also consider the Yocto recipe name [2] which is gstreamer1.0-plugins-imx, pretty close from gst1-plugins-imx.
- Comments: comments on package dependencies could be removed at first and if people find it confusing we could work on it later.
Regards,
Gary
[1] http://lists.busybox.net/pipermail/buildroot/2014-February/090496.html
[2]
https://github.com/Freescale/meta-fsl-arm/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_0.9.9.bb
PATCH 1/1 gst1-plugins-imx: add package
Gary, All,
On 2014-10-17 14:28 -0700, Gary Bisson spake thusly:
Quoted 25 lines · Yann E. MORIN
Quoted 10 lines
[snip]
No you can't do that, becauseBR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Qis part of a choice, and you can not select a choice entry.So a 'depends on' it must be in this case.
Not sure what to do about the comment, though. We currently have no such case documented in the manual; only comments about toolchain deps are described...
Quoted 6 lines
I'm not against adding comments about dependencies on other packages, but I think we should keep them to a minimal level, like dependencies on biggish stuff (like X.org), or non-obvious stuff.
Regards,
Yann E. MORIN.I agree that a dependency seemed like the only option. Regarding the comment it was more about showing the package exists.
Although doing a search will tell you about it and its dependencies I'm afraid people would think the package is missing.
As a comparison the Gstreamer 0.10 fsl plugin always shows up as it does not depend on iMX6 GPU libs.
Quoted 2 lines
Anyway, would it make sense for me to offer a patch v2 or should we wait to agree first on modifications?
Yup, let people get back home from D?sseldorf and get some rest aftert the heavy use they put their neurons at during LinuxCon/ELCE this past week... ;-)
Quoted 4 lines
So far I have listed those modifications to be made on the current version:
- Use of github helper macro
- Modify package comment with Peter S. original patch
- Remove eglibc dependency (already from GPU libs)
Are we sure gst1-plugins-imx does not itself require glibc? If there are pre-built libraries, check they are not linked with libc.so.6:
readelf -d libgst-imx-something.so
Quoted 5 lines
But I am still unclear on two items:
- Package naming: although Peter K. did prefer gstreamer1-imx over gstreamer-imx [1], gst1-plugins-imx still looks closer to BR plugin naming. Also consider the Yocto recipe name [2] which is gstreamer1.0-plugins-imx, pretty close from gst1-plugins-imx.
Well, gst1-plugins-imx seems quite correctly aligned to existing packages names, so I'd vote for that.
Quoted 2 lines
- Comments: comments on package dependencies could be removed at first and if people find it confusing we could work on it later.
Agreed.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 gst1-plugins-imx: add package
Dear Gary,
Quoted 45 lines · Yann E. MORIN
Gary, All,
On 2014-10-17 14:28 -0700, Gary Bisson spake thusly:
Quoted 25 lines · Yann E. MORIN
Quoted 10 lines
[snip]
No you can't do that, becauseBR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Qis part of a choice, and you can not select a choice entry.So a 'depends on' it must be in this case.
Not sure what to do about the comment, though. We currently have no such case documented in the manual; only comments about toolchain deps are described...
Quoted 6 lines
I'm not against adding comments about dependencies on other packages, but I think we should keep them to a minimal level, like dependencies on biggish stuff (like X.org), or non-obvious stuff.
Regards,
Yann E. MORIN.I agree that a dependency seemed like the only option. Regarding the comment it was more about showing the package exists.
Although doing a search will tell you about it and its dependencies I'm afraid people would think the package is missing.
As a comparison the Gstreamer 0.10 fsl plugin always shows up as it does not depend on iMX6 GPU libs.Quoted 2 lines
Anyway, would it make sense for me to offer a patch v2 or should we wait to agree first on modifications?
Yup, let people get back home from D?sseldorf and get some rest aftert the heavy use they put their neurons at during LinuxCon/ELCE this past week... ;-)
Quoted 4 lines
So far I have listed those modifications to be made on the current version:
- Use of github helper macro
- Modify package comment with Peter S. original patch
- Remove eglibc dependency (already from GPU libs)Are we sure gst1-plugins-imx does not itself require glibc? If there are pre-built libraries, check they are not linked with libc.so.6:
readelf -d libgst-imx-something.so
Quoted 11 lines
Quoted 5 lines
But I am still unclear on two items:
- Package naming: although Peter K. did prefer gstreamer1-imx over gstreamer-imx [1], gst1-plugins-imx still looks closer to BR plugin naming. Also consider the Yocto recipe name [2] which is gstreamer1.0-plugins-imx, pretty close from gst1-plugins-imx.Well, gst1-plugins-imx seems quite correctly aligned to existing packages names, so I'd vote for that.
Quoted 2 lines
- Comments: comments on package dependencies could be removed at first and if people find it confusing we could work on it later.
I agree with Yann. You addressed the most relevant issues, so now you may send a v3 with all agreed changes. It might be not yet perfect, but I (and hopefully Yann and others) will review it and I'm pretty sure it's going to be very close to be accepted.
Signature · 1 line
Luca