Patchwork [meta-fsl-arm,v4] packagegroup-imx-gstreamer1.0: Add new package groups for GStreamer 1.0

login
register
mail settings
Submitter Carlos Rafael Giani
Date July 1, 2014, 7:21 p.m.
Message ID <1404242465-15388-1-git-send-email-dv@pseudoterminal.org>
Download mbox | patch
Permalink /patch/74547/
State Changes Requested
Delegated to: Otavio Salvador
Headers show

Comments

Carlos Rafael Giani - July 1, 2014, 7:21 p.m.
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
---
 .../packagegroup-imx-gstreamer1.0-commercial.bb    |  20 ++++
 .../packagegroup-imx-gstreamer1.0-full.bb          |  19 ++++
 .../packagegroups/packagegroup-imx-gstreamer1.0.bb | 118 +++++++++++++++++++++
 3 files changed, 157 insertions(+)
 create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-commercial.bb
 create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-full.bb
 create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0.bb
Daiane Angolini - July 2, 2014, 4:31 p.m.
On Tue, Jul 1, 2014 at 4:21 PM, Carlos Rafael Giani
<dv@pseudoterminal.org> wrote:
> Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
> ---
>  .../packagegroup-imx-gstreamer1.0-commercial.bb    |  20 ++++
>  .../packagegroup-imx-gstreamer1.0-full.bb          |  19 ++++
>  .../packagegroups/packagegroup-imx-gstreamer1.0.bb | 118 +++++++++++++++++++++
>  3 files changed, 157 insertions(+)
>  create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-commercial.bb
>  create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-full.bb
>  create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0.bb

Carlos, you can hate me forever, because it´s v4 and it´s the first
time I send you this feedback. But I took sometime to realize that.
(and I´m so sorry)

Would you pleeeeeeeeease, change the name of your packagegroups?

instead of using

packagegroup-imx-gstreamer1.0*

Can you, please use

packagegroup-fslc-gstreamer1.0?

My goal is to make clear the recipe points to a community effort
package, not a package from Freescale.

I based my decision on kernel and u-boot recipes. We have both
u-boot-imx and u-boot-fslc, so I think it makes sense to follow this
standard.

Other than that, I´m ok with the patch

Thanks a lot in advance,
Daiane
Carlos Rafael Giani - July 2, 2014, 6:35 p.m.
On 2014-07-02 18:31, Daiane Angolini wrote:
> On Tue, Jul 1, 2014 at 4:21 PM, Carlos Rafael Giani
> <dv@pseudoterminal.org> wrote:
>> Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
>> ---
>>   .../packagegroup-imx-gstreamer1.0-commercial.bb    |  20 ++++
>>   .../packagegroup-imx-gstreamer1.0-full.bb          |  19 ++++
>>   .../packagegroups/packagegroup-imx-gstreamer1.0.bb | 118 +++++++++++++++++++++
>>   3 files changed, 157 insertions(+)
>>   create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-commercial.bb
>>   create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-full.bb
>>   create mode 100644 recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0.bb
> Carlos, you can hate me forever, because it´s v4 and it´s the first
> time I send you this feedback. But I took sometime to realize that.
> (and I´m so sorry)
>
> Would you pleeeeeeeeease, change the name of your packagegroups?
>
> instead of using
>
> packagegroup-imx-gstreamer1.0*
>
> Can you, please use
>
> packagegroup-fslc-gstreamer1.0?
>
> My goal is to make clear the recipe points to a community effort
> package, not a package from Freescale.
>
> I based my decision on kernel and u-boot recipes. We have both
> u-boot-imx and u-boot-fslc, so I think it makes sense to follow this
> standard.
>
> Other than that, I´m ok with the patch
>
> Thanks a lot in advance,
> Daiane

Hey Daiane,

renaming is no problem. I'll send a v5 until tomorrow.

Carlos

Patch

diff --git a/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-commercial.bb b/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-commercial.bb
new file mode 100644
index 0000000..0c14710
--- /dev/null
+++ b/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-commercial.bb
@@ -0,0 +1,20 @@ 
+DESCRIPTION = "Freescale package group which provides audio and video plugins \
+ that are subject to retricted licensing and/or royalties and thus require \
+ the 'commercial' license whitelist flag"
+SUMMARY = "Freescale package group - set of GStreamer 1.0 plugins with commercial licence flag"
+LICENSE = "MIT"
+LICENSE_FLAGS = "commercial"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+inherit packagegroup
+
+RDEPENDS_${PN} = " \
+    packagegroup-imx-gstreamer1.0 \
+"
+
+# Plugins from the -ugly collection which require the "commercial" flag in LICENSE_FLAGS_WHITELIST to be set
+RDEPENDS_${PN} = " \
+    gstreamer1.0-plugins-ugly-mpg123 \
+    gstreamer1.0-plugins-ugly-asfdemux \
+"
diff --git a/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-full.bb b/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-full.bb
new file mode 100644
index 0000000..fe7ec2b
--- /dev/null
+++ b/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0-full.bb
@@ -0,0 +1,19 @@ 
+DESCRIPTION = "Freescale package group which provides all GStreamer plugins from the \
+ base, good, and bad packages, as well as the ugly and libav ones if commercial packages \
+ are whitelisted, and plugins for the required hardware acceleration (if supported by the SoC)."
+SUMMARY = "Freescale package group - full set of all GStreamer 1.0 plugins"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+inherit packagegroup
+
+RDEPENDS_${PN} = " \
+    packagegroup-imx-gstreamer1.0 \
+    ${@base_contains('LICENSE_FLAGS_WHITELIST', 'commercial', 'packagegroup-imx-gstreamer1.0-commercial', '', d)} \
+    gstreamer1.0-plugins-base-meta \
+    gstreamer1.0-plugins-good-meta \
+    gstreamer1.0-plugins-bad-meta \
+    ${@base_contains('LICENSE_FLAGS_WHITELIST', 'commercial', 'gstreamer1.0-plugins-ugly-meta', '', d)} \
+    ${@base_contains('LICENSE_FLAGS_WHITELIST', 'commercial', 'gstreamer1.0-libav', '', d)} \
+"
diff --git a/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0.bb b/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0.bb
new file mode 100644
index 0000000..1a61244
--- /dev/null
+++ b/recipes-multimedia/packagegroups/packagegroup-imx-gstreamer1.0.bb
@@ -0,0 +1,118 @@ 
+DESCRIPTION = "Freescale package group which provides audio, video, networking and debug \
+ GStreamer plugins with the required hardware acceleration (if supported by the SoC)."
+SUMMARY = "Freescale package group - set of commonly used GStreamer 1.0 plugins"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
+                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+inherit packagegroup
+
+PACKAGES += " \
+    ${PN}-base \
+    ${PN}-audio \
+    ${PN}-video \
+    ${PN}-video-bad \
+    ${PN}-debug \
+    ${PN}-network-base \
+    ${PN}-network \
+"
+
+MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
+
+RDEPENDS_${PN} = " \
+    ${PN}-audio \
+    ${PN}-video \
+    ${PN}-network-base \
+    ${PN}-debug \
+    ${MACHINE_GSTREAMER_1_0_PLUGIN} \
+"
+
+# List of X11 specific plugins
+GST_X11_PACKAGES = " \
+    gstreamer1.0-plugins-base-ximagesink \
+    gstreamer1.0-plugins-base-xvimagesink \
+"
+
+# List of Wayland specific plugins
+GST_WAYLAND_PACKAGES = " \
+    gstreamer1.0-plugins-bad-waylandsink \
+"
+
+# basic plugins required in virtually every pipeline
+RDEPENDS_${PN}-base = " \
+    gstreamer1.0 \
+    gstreamer1.0-plugins-base-playback \
+    gstreamer1.0-plugins-base-alsa \
+    gstreamer1.0-plugins-base-audioconvert \
+    gstreamer1.0-plugins-base-audioresample \
+    gstreamer1.0-plugins-base-gio \
+    gstreamer1.0-plugins-base-typefindfunctions \
+    gstreamer1.0-plugins-base-videoconvert \
+    gstreamer1.0-plugins-base-videoscale \
+    gstreamer1.0-plugins-base-volume \
+    gstreamer1.0-plugins-good-autodetect \
+    ${@base_contains('DISTRO_FEATURES', 'x11', '${GST_X11_PACKAGES}', '', d)} \
+    ${@base_contains('DISTRO_FEATURES', 'wayland', '${GST_WAYLAND_PACKAGES}', '', d)} \
+"
+
+# Basic audio plugins: parsers, demuxers, decoders
+RDEPENDS_${PN}-audio = " \
+    ${PN}-base \
+    gstreamer1.0-plugins-base-ivorbisdec \
+    gstreamer1.0-plugins-base-ogg \
+    gstreamer1.0-plugins-good-audioparsers \
+    gstreamer1.0-plugins-good-flac \
+    gstreamer1.0-plugins-good-icydemux \
+    gstreamer1.0-plugins-good-id3demux \
+    gstreamer1.0-plugins-good-speex \
+    gstreamer1.0-plugins-good-wavparse \
+"
+
+# Basic video plugins: parsers, demuxers
+RDEPENDS_${PN}-video = " \
+    ${PN}-base \
+    gstreamer1.0-plugins-base-subparse \
+    gstreamer1.0-plugins-base-theora \
+    gstreamer1.0-plugins-good-avi \
+    gstreamer1.0-plugins-good-flv \
+    gstreamer1.0-plugins-good-isomp4 \
+    gstreamer1.0-plugins-good-matroska \
+"
+
+RRECOMMENDS_${PN}-video = " \
+    ${PN}-audio \
+"
+
+# Additional video plugins from the -bad collection
+RDEPENDS_${PN}-video-bad = " \
+    ${PN}-video \
+    gstreamer1.0-plugins-bad-mpegpsdemux \
+    gstreamer1.0-plugins-bad-mpegtsdemux \
+    gstreamer1.0-plugins-bad-videoparsersbad \
+"
+
+# Plugins used for diagnostics and debugging of pipelines
+RDEPENDS_${PN}-debug = " \
+    ${PN}-base \
+    gstreamer1.0-plugins-base-audiotestsrc \
+    gstreamer1.0-plugins-base-videotestsrc \
+    gstreamer1.0-plugins-good-debug \
+    gstreamer1.0-plugins-good-navigationtest \
+"
+
+# Basic networking plugins required by most pipelines that receive and/or send data
+RDEPENDS_${PN}-network-base = " \
+    gstreamer1.0-plugins-base-tcp \
+    gstreamer1.0-plugins-good-souphttpsrc \
+    gstreamer1.0-plugins-good-udp \
+"
+
+# Additional networking plugins
+RDEPENDS_${PN}-network = " \
+    ${PN}-network-base \
+    gstreamer1.0-plugins-good-rtp \
+    gstreamer1.0-plugins-good-rtpmanager \
+    gstreamer1.0-plugins-good-rtsp \
+"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"