Jump to content


Photo

GStreamer 1.0

gstreamer 1.0 openpli

  • Please log in to reply
2520 replies to this topic

Re: GStreamer 1.0 #901 mrbeam

  • Senior Member
  • 300 posts

+6
Neutral

Posted 24 March 2015 - 16:51

I also unfortunately do not have an spdif capable amp. But I now from others that by dm8000 it works perfect if You have such amp.

Can confirm this to. Works as long as i can remember.


Wavefrontier T90, Vu+ Duo 4k SE (DVB-S2x FBC, DVB-T2, DVB-C USB), Octagon SF4008 (dual DVB-S2, DVB-T2 & DVB-C USB), Mutant HD51 (DVB-S2 & DVB-T2), TBS6920 & TBS6925


Re: GStreamer 1.0 #902 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 24 March 2015 - 19:13

Hi,

In order not to make changes in OpenPLi OE meta-bsp layers (resulting in detached head) you can do the following:

# 1. Create a packagegroup-base.bbappend and store it into recipes-local (eg /opt/openpli/gst1/meta-local/recipes-local/overrides/packagegroup-base.bbappend
# 2. Change gst-plugin-dvbmediasink, gst-plugin-dreambox-dvbmediasink, gst-plugin-vuplus-dvbmediasink to gstreamer1.0-plugin-dvbmediasink
# 3. Change gst-plugin-dtsdownmix with nothing

RRECOMMENDS_packagegroup-machine-base := "${@bb.data.getVar('MACHINE_EXTRA_RRECOMMENDS',d,1).replace('gst-plugin-dvbmediasink','gstreamer1.0-plugin-dvbmediasink').replace('gst-plugin-dreambox-dvbmediasink', 'gstreamer1.0-plugin-dvbmediasink').replace('gst-plugin-vuplus-dvbmediasink', 'gstreamer1.0-plugin-dvbmediasink').replace('gst-plugin-dtsdownmix', '')}"
You can define GST_VERSION = "1.0" in site.conf

With above changes most boxes require no other changes to meta-bsp layers.

Dreamboxes require changes to DVBMEDIASINK_CONFIG but it's easy to fix.. (eg with custom bitbake gstreamer1.0-plugin-multibox-dvbmediasink.bb)
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #903 Erik Slagter

  • PLi® Core member
  • 46,951 posts

+541
Excellent

Posted 24 March 2015 - 19:22

Subject: [PATCH] dtsdownmix: fix caps negotiation for GStreamer 1.0

dtsdowmix did not worked on GStreamer 1.0 because caps did not negotiate.
In order to negotiate caps on GStreamer 1.0 we need to handle missing GST_EVENT_CAPS sink event.

diff --git a/gstdtsdownmix.c b/gstdtsdownmix.c
index 4c03277..4f3d6f4 100644
--- a/gstdtsdownmix.c
+++ b/gstdtsdownmix.c
@@ -11,6 +11,8 @@
 
 #include "gstdtsdownmix.h"
 
+static gboolean get_downmix_setting();
+
 GST_DEBUG_CATEGORY_STATIC(dtsdownmix_debug);
 #define GST_CAT_DEFAULT (dtsdownmix_debug)
 
@@ -155,6 +157,23 @@ static gboolean gst_dtsdownmix_sink_event(GstPad * pad, GstObject *parent, GstEv
 
 			gst_segment_set_newsegment(&dts->segment, update, rate, format, start, end, pos);
 #else
+		case GST_EVENT_CAPS:
+			if (!get_downmix_setting())
+			{
+				ret = FALSE;
+			}
+			else if (dts->srcpad)
+			{
+				GstCaps *caps;
+				GstCaps *srccaps = gst_caps_from_string("audio/x-private1-lpcm, framed =(boolean) true");
+
+				gst_event_parse_caps(event, &caps);
+				ret = gst_pad_set_caps(dts->srcpad, srccaps);
+
+				gst_caps_unref(srccaps);
+				gst_event_unref(event);
+			}
+			break;
 		case GST_EVENT_SEGMENT:
 		{
 			gst_event_copy_segment(event, &dts->segment);
@@ -185,7 +204,7 @@ static gboolean gst_dtsdownmix_sink_event(GstPad * pad, GstObject *parent, GstEv
 			}
 			break;
 		case GST_EVENT_FLUSH_STOP:
-      if (dts->cache) 
+			if (dts->cache)
 			{
 				gst_buffer_unref(dts->cache);
 				dts->cache = NULL;
-- 
@OpenPLi please apply on dvbmediasink gst-1.0 branch, it fixes the DTS downmix (tested on my dm800se).

attachicon.gif0001-dtsdownmix-fix-caps-negotiation-for-GStreamer-1.0.patch

@OpenPLi please also commit patches from #861 (http://forums.openpl...-44#entry482518)

 

All applied and updated.


* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: GStreamer 1.0 #904 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 24 March 2015 - 19:31

All applied and updated.


Thanks!
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #905 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 24 March 2015 - 22:27

Subject: [PATCH] Fix configure.ac AC_INIT and AM_INIT_AUTOMAKE

Better to fix directly sources instead of fixing them in with do_configure_prepend on recipes

diff --git a/configure.ac b/configure.ac
index bde03b5..841a2fe 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-AC_INIT
+AC_INIT(gst-plugin-subsink, 1.0.0, @pli4)
 
 dnl versions of gstreamer and plugins-base
 AC_ARG_WITH(gstversion,
@@ -19,7 +19,7 @@ AS_VERSION(gst-plugin, GST_PLUGIN_VERSION, $GST_MAJORMINOR, 0, 1, GST_PLUGIN_CVS
 dnl AM_MAINTAINER_MODE provides the option to enable maintainer mode
 AM_MAINTAINER_MODE
 
-AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
+AM_INIT_AUTOMAKE([foreign subdir-objects])
 
 dnl make aclocal work in maintainer mode
 AC_SUBST(ACLOCAL_AMFLAGS, "-I m4")
-- 
@OpenPLi apply on subsink gst-1.0 branch.

Subject: [PATCH] subsink: cleanup recipe and remove MACHINE_ARCH

Remove MACHINE_ARCH (based on 8728da67aa5123570bdbe51d2cbfe6a3d6bcf522)

Also don't use do_configure_prepend to fix configure.ac fix them on sources.

diff --git a/meta-openpli/recipes-openpli/enigma2/gstreamer1.0-plugin-subsink.bb b/meta-openpli/recipes-openpli/enigma2/gstreamer1.0-plugin-subsink.bb
index 2d171db..318f46c 100644
--- a/meta-openpli/recipes-openpli/enigma2/gstreamer1.0-plugin-subsink.bb
+++ b/meta-openpli/recipes-openpli/enigma2/gstreamer1.0-plugin-subsink.bb
@@ -16,15 +16,10 @@ GSTVERSION = "1.0"
 
 PV = "${GSTVERSION}+git${SRCPV}"
 PKGV = "${GSTVERSION}+git${GITPKGV}"
-PR = "r0"
+PR = "r1"
 
 EXTRA_OECONF = "--with-gstversion=${GSTVERSION}"
 
-do_configure_prepend() {
-        sed -i 's/AC_INIT.*$/AC_INIT(gst-plugin-subsink, 1.0.0, @pli4)/' ${S}/configure.ac
-        sed -i 's/AM_INIT_AUTOMAKE.*$/AM_INIT_AUTOMAKE([foreign subdir-objects])/' ${S}/configure.ac
-}
-
 inherit autotools pkgconfig
 
 FILES_${PN} = "${libdir}/gstreamer-${GSTVERSION}/*.so*"
@@ -32,4 +27,3 @@ FILES_${PN}-dev += "${libdir}/gstreamer-${GSTVERSION}/*.la"
 FILES_${PN}-staticdev += "${libdir}/gstreamer-${GSTVERSION}/*.a"
 FILES_${PN}-dbg += "${libdir}/gstreamer-${GSTVERSION}/.debug"
 
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-- 
@OpenPLi, please apply on OpenPLi-OE gst-1 branch.

Attached Files


Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #906 christophecvr

  • Senior Member
  • 3,131 posts

+140
Excellent

Posted 25 March 2015 - 11:59

Would it not be a good idea. To have all gst-1 stuff in master pli git. But only applicable if fore example in machine config is set :

 

 the nice idea of athoik :  You can define GST_VERSION = "1.0" in site.conf

 

?



Re: GStreamer 1.0 #907 MastaG

  • Senior Member
  • 1,531 posts

+118
Excellent

Posted 25 March 2015 - 14:01

Well maybe it's a bit soon for master.

But I'd like to start building images from the gst-1 branch for various receivers so others can test.

I've got the horsepower for it.

 

Maybe Erik can apply Athoik's last two patches and also please consider the dreambox ac3 bypass patch.

If I remember there was a descision not to apply because DMM should change their bypass to 0x22 right?

Please don't be stubborn, it's a small thing and it doesn't hurt.

 

Then if there are still enhancements in christophecvr's git which are missing in gst-1, then maybe he can make one last patch so we can get this show on the road ;)

Attached Files


Edited by MastaG, 25 March 2015 - 14:02.


Re: GStreamer 1.0 #908 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 25 March 2015 - 15:03

Subject: [PATCH] cleanup gstreamer1.0-plugins-base

The is no reason to have .bbappend in official repos.
The idea behind .bbappend is to modify/override bb that belong to different repo.
Another usage is to make user modifications (eg meta-local).

Remove .bbappend, add cdparania PACKAGE config in base.inc, add patch from bbappend in base.bb.
Finally increase PR to force rebuild.

Attached Files


Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #909 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 25 March 2015 - 15:20

Well maybe it's a bit soon for master.
But I'd like to start building images from the gst-1 branch for various receivers so others can test.
I've got the horsepower for it.
 
Maybe Erik can apply Athoik's last two patches and also please consider the dreambox ac3 bypass patch.
If I remember there was a descision not to apply because DMM should change their bypass to 0x22 right?
Please don't be stubborn, it's a small thing and it doesn't hurt.
 
Then if there are still enhancements in christophecvr's git which are missing in gst-1, then maybe he can make one last patch so we can get this show on the road ;)


I think it would be nice to provide OpenPLi based images! There are several people that lack the knowledge to build one.

Also I think nothing was changed in OpenPLi decision and they are doing well.

It is really shame for DMM that is doing only steps to break existing Open Source forks, with stupid tricks like
diffent ioctl, non standard PES header (BCMA...) and so on...

It's ridiculous easy to fix those problems in drivers but no.. DMM want's you to suffer (and OFC want's your money for a newer proprietary receiver).

So, please, @OpenPLi please don't change your mind. Let them change or extinct.

In christophecvr's repo there only the hacks required to make DMM happy. And a single bitbake can do the job in meta-local for now.

Are there any real improvements pending for commit? I think no.


To be honest, the community has totally failed :(

Community failed to provide the required patches in order GStreamer 1.0 images to be available.

Yet there numerous issues that will never solved without official support from manufactures (and/or OpenPLi).

Edited by athoik, 25 March 2015 - 15:21.

Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #910 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 25 March 2015 - 15:38

note: PR's no longer have to be bumped, bitbake will detect *any* change in recipes and source files, and force a rebuild.

(and PKGPR will be bumped by the prserver, when enabled)



Re: GStreamer 1.0 #911 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 25 March 2015 - 15:45

(and PKGPR will be bumped by the prserver, when enabled)


But without PR server update paths are brocken if you don't manually change the PR.
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #912 mx3L

  • Senior Member
  • 616 posts

+79
Good

Posted 25 March 2015 - 15:53

Subject: [PATCH] cleanup gstreamer1.0-plugins-base

The is no reason to have .bbappend in official repos.
The idea behind .bbappend is to modify/override bb that belong to different repo.
Another usage is to make user modifications (eg meta-local).

Remove .bbappend, add cdparania PACKAGE config in base.inc, add patch from bbappend in base.bb.
Finally increase PR to force rebuild.

I thougth that we could use bbappend to clearly separate openembedded gstreamer recipe from our own modifications to it, therefore I leave it there.



Re: GStreamer 1.0 #913 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 25 March 2015 - 15:53

Indeed, so any buildserver producing an online feed, should use a prserver.

Especially since all PRINC's were dropped, and bbappends no longer modify version info, we can no longer rely on manual PR bumps; we should rely on the prserver instead.



Re: GStreamer 1.0 #914 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 25 March 2015 - 15:58

Indeed, so any buildserver producing an online feed, should use a prserver.
Especially since all PRINC's were dropped, and bbappends no longer modify version info, we can no longer rely on manual PR bumps; we should rely on the prserver instead.


You can still modify PR from bbappend when working without PR Server. OFC PR Server does this for you automatically.
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #915 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 25 March 2015 - 16:04

I thougth that we could use bbappend to clearly separate openembedded gstreamer recipe from our own modifications to it, therefore I leave it there.


It's better to have changes on bb and let bbappend for user modifications (eg meta-local)

If we switch to gstreamer from OE layer then bbappend is the only way to make changes.
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #916 mx3L

  • Senior Member
  • 616 posts

+79
Good

Posted 25 March 2015 - 16:45

Makes sense, we should also update bb and remove bbappends of other gstreamer recipes too.

 

Here is the OE patch too (librtmp patch included)
 

Subject: [PATCH] librtmp: set timeout for send operations too

timeout parameter now works for send and receive operations

diff --git a/meta-openpli/recipes-multimedia/rtmp/librtmp.bb b/meta-openpli/recipes-multimedia/rtmp/librtmp.bb
index f26e556..e6a5376 100644
--- a/meta-openpli/recipes-multimedia/rtmp/librtmp.bb
+++ b/meta-openpli/recipes-multimedia/rtmp/librtmp.bb
@@ -11,9 +11,11 @@ SRCREV = "a1900c3e152085406ecb87c1962c55ec9c6e4016"
 
 PKGV = "2.4+git${GITPKGV}"
 PV = "2.4+git${SRCPV}"
-PR = "r1"
+PR = "r2"
 
-SRC_URI = "git://git.ffmpeg.org/rtmpdump;protocol=git"
+SRC_URI = "git://git.ffmpeg.org/rtmpdump;protocol=git \
+	file://0001-librtmp-set-timeout-for-send-operations-too.patch;striplevel=2 \
+"
 
 S = "${WORKDIR}/git/librtmp"

We are not using librtmp recipe for gstreamer1.0-bad-plugins anymore, we are using rtmpdump recipe from OE.

rtmp entry with rtmpdump set as dependency was added to PACKAGECONFIG in gstreamer1.0-plugins-bad.inc in 1.4.5 version. With only librtmp set as dependency was rtmp plugin not built.



Re: GStreamer 1.0 #917 athoik

  • PLi® Core member
  • 8,458 posts

+327
Excellent

Posted 25 March 2015 - 17:01

Makes sense, we should also update bb and remove bbappends of other gstreamer recipes too.

We are not using librtmp recipe for gstreamer1.0-bad-plugins anymore, we are using rtmpdump recipe from OE.
rtmp entry with rtmpdump set as dependency was added to PACKAGECONFIG in gstreamer1.0-plugins-bad.inc in 1.4.5 version. With only librtmp set as dependency was rtmp plugin not built.


Changing PACKAGECONFIG doesn't work?

PACKAGECONFIG[rtmp]            = "--enable-rtmp,--disable-rtmp,librtmp"
rtmpdump package installs also binaries, not really required.
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: GStreamer 1.0 #918 mx3L

  • Senior Member
  • 616 posts

+79
Good

Posted 25 March 2015 - 18:18

Indeed it's build now

 

 

Makes sense, we should also update bb and remove bbappends of other gstreamer recipes too.

We are not using librtmp recipe for gstreamer1.0-bad-plugins anymore, we are using rtmpdump recipe from OE.
rtmp entry with rtmpdump set as dependency was added to PACKAGECONFIG in gstreamer1.0-plugins-bad.inc in 1.4.5 version. With only librtmp set as dependency was rtmp plugin not built.


Changing PACKAGECONFIG doesn't work?

PACKAGECONFIG[rtmp]            = "--enable-rtmp,--disable-rtmp,librtmp"
rtmpdump package installs also binaries, not really required.

 

Indeed with this change is rtmp plugin build!



Re: GStreamer 1.0 #919 peteru

  • Senior Member
  • 36 posts

+5
Neutral

Posted 26 March 2015 - 03:42

note: PR's no longer have to be bumped, bitbake will detect *any* change in recipes and source files, and force a rebuild.

(and PKGPR will be bumped by the prserver, when enabled)

 

As great as PRSERV is, it has it's problems.

 

First of all, if you ever plan on building images on more than one system, you need a shared PRSERV running permanently on a machine that is accessible to all the builders. PRSERV has no authentication or other security mechanisms, so having it face the public Internet is probably not a good idea.

 

Second of all, if you ever accidentally delete/lose the PRSERV database, you are going to have a pretty hard time getting all your package feeds to the right revision.

 

It doesn't stop there. You also have a problem if you ever decide to revert a change, because PRSERV will go back to an earlier PR number and your revert will look like a downgrade. For example, let's say your package is at PR=2 and you enable "--with-feature", rebuild the package and distribute it. Your package will get bumped to PR=3. Your testers report that having the feature enabled is causing problems, so you disable the feature again. Now when you rebuild the package, PRSERV will already have a matching signature with PR=2 and your version number will go back. That will make it very challenging to upgrade existing users, because you are now looking at forcing a downgrade for that package.


"Beauty lies in the hands of the beer holder."

 


Re: GStreamer 1.0 #920 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 26 March 2015 - 13:41

agreed, but as oe-core is no longer bumping pr's, it makes no sense to keep bumping pr's in our own bblayers.

So we have to do with the prserver (and hope it will get better at its job)





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users