Message ID | 1472820821-5130-1-git-send-email-Abhilash.Tuse@imgtec.com |
---|---|
State | Superseded |
Headers | show |
Hello, On Fri, 2 Sep 2016 18:23:41 +0530, Abhilash Tuse wrote: > From: Piotr Nakraszewicz <piotr.nakraszewicz@imgtec.com> > > Based on patch by Phil Edworthy: > http://lists.busybox.net/pipermail/buildroot/2010-June/035777.html > > Reviewed-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com> > Reviewed-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com> > Signed-off-by: Piotr Nakraszewicz <piotr.nakraszewicz@imgtec.com> > Signed-off-by: Abhilash Tuse <Abhilash.Tuse@imgtec.com> Thanks for your patch! I have two comments, see below. > diff --git a/package/gstreamer1/gst1-rtsp-server/Config.in b/package/gstreamer1/gst1-rtsp-server/Config.in > new file mode 100644 > index 0000000..5201a8d > --- /dev/null > +++ b/package/gstreamer1/gst1-rtsp-server/Config.in > @@ -0,0 +1,9 @@ > +config BR2_PACKAGE_GST1_RTSP_SERVER > + bool "gst1-rtsp-server" > + select BR2_PACKAGE_GST1_PLUGINS_BASE > + select BR2_PACKAGE_GST1_PLUGINS_BAD > + select BR2_PACKAGE_GST1_PLUGINS_GOOD Are you sure all of these are mandatory? From a quick look at the configure.ac script, they don't seem to be mandatory, but rather be optional dependencies. Have you tested a build with just gstreamer1+gst1-rtsp-server ? If it works, then they are indeed optional dependencies, in which case you want to remove those "select" here, and instead in the .mk file do: ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) GST1_RTSP_DEPENDENCIES += gst1-plugins-base endif > +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk > @@ -0,0 +1,15 @@ > +################################################################################ > +# > +# gst1-rtsp-server > +# > +################################################################################ > + > +GST1_RTSP_SERVER_VERSION = 1.8.3 > +GST1_RTSP_SERVER_SOURCE = gst-rtsp-server-$(GST1_RTSP_SERVER_VERSION).tar.xz > +GST1_RTSP_SERVER_SITE = http://gstreamer.freedesktop.org/src/gst-rtsp-server > +GST1_RTSP_SERVER_LICENSE = LGPLv2+ > +GST1_RTSP_SERVER_LICENSE_FILES = COPYING COPYING.LIB > +GST1_RTSP_SERVER_INSTALL_STAGING = YES > +GST1_RTSP_SERVER_DEPENDENCIES = gstreamer1 gst1-plugins-base gst1-plugins-bad gst1-plugins-good In addition, libcgroup is an optional dependency of gst1-rtsp-server, so: ifeq ($(BR2_PACKAGE_LIBCGROUP),y) GST1_RTSP_SERVER_DEPENDENCIES += libcgroup endif would be nice to have. Could you look into these and send an updated patch? The rest of the patch looks good. Thanks a lot! Thomas
Hi Thomas, > Are you sure all of these are mandatory? From a quick look at the > configure.ac script, they don't seem to be mandatory, but rather be > optional dependencies. The reason why we added this was because internally gst1-rtsp-server tries to create some of the elements of base and good plug-ins. Below is test example that I tried(with just gstreamer1+gst1-rtsp-server): # test-launch "( audiotestsrc ! audioconvert ! rtpL16pay name=pay0 )" stream ready at rtsp://127.0.0.1:8554/test ** (test-launch:11): WARNING **: failed to create element 'rtpbin', check your installation > ifeq ($(BR2_PACKAGE_LIBCGROUP),y) > GST1_RTSP_SERVER_DEPENDENCIES += libcgroup > endif Thank you very much for the comments. > ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) > GST1_RTSP_DEPENDENCIES += gst1-plugins-base > endif This looks good, I'll make the suggested changes and send an updated patch. Thanks and Regards, Abhilash On Friday 09 September 2016 03:00 AM, Thomas Petazzoni wrote: > Hello, > > On Fri, 2 Sep 2016 18:23:41 +0530, Abhilash Tuse wrote: >> From: Piotr Nakraszewicz <piotr.nakraszewicz@imgtec.com> >> >> Based on patch by Phil Edworthy: >> http://lists.busybox.net/pipermail/buildroot/2010-June/035777.html >> >> Reviewed-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com> >> Reviewed-by: Abhimanyu Vishwakarma <Abhimanyu.Vishwakarma@imgtec.com> >> Signed-off-by: Piotr Nakraszewicz <piotr.nakraszewicz@imgtec.com> >> Signed-off-by: Abhilash Tuse <Abhilash.Tuse@imgtec.com> > Thanks for your patch! I have two comments, see below. > > >> diff --git a/package/gstreamer1/gst1-rtsp-server/Config.in b/package/gstreamer1/gst1-rtsp-server/Config.in >> new file mode 100644Are you sure all of these are mandatory? From a quick look at the >> configure.ac script, they don't seem to be mandator >> >> index 0000000..5201a8d >> --- /dev/null >> +++ b/package/gstreamer1/gst1-rtsp-server/Config.in >> @@ -0,0 +1,9 @@ >> +config BR2_PACKAGE_GST1_RTSP_SERVER >> + bool "gst1-rtsp-server" >> + select BR2_PACKAGE_GST1_PLUGINS_BASE >> + select BR2_PACKAGE_GST1_PLUGINS_BAD >> + select BR2_PACKAGE_GST1_PLUGINS_GOOD > Are you sure all of these are mandatory? From a quick look at the > configure.ac script, they don't seem to be mandatory, but rather be > optional dependencies. Have you tested a build with just > gstreamer1+gst1-rtsp-server ? If it works, then they are indeed > optional dependencies, in which case you want to remove those "select" > here, and instead in the .mk file do: > > ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) > GST1_RTSP_DEPENDENCIES += gst1-plugins-base > endif > >> +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk >> @@ -0,0 +1,15 @@ >> +################################################################################ >> +# >> +# gst1-rtsp-server >> +# >> +################################################################################ >> + >> +GST1_RTSP_SERVER_VERSION = 1.8.3 >> +GST1_RTSP_SERVER_SOURCE = gst-rtsp-server-$(GST1_RTSP_SERVER_VERSION).tar.xz >> +GST1_RTSP_SERVER_SITE = http://gstreamer.freedesktop.org/src/gst-rtsp-server >> +GST1_RTSP_SERVER_LICENSE = LGPLv2+ >> +GST1_RTSP_SERVER_LICENSE_FILES = COPYING COPYING.LIB >> +GST1_RTSP_SERVER_INSTALL_STAGING = YES >> +GST1_RTSP_SERVER_DEPENDENCIES = gstreamer1 gst1-plugins-base gst1-plugins-bad gst1-plugins-good > In addition, libcgroup is an optional dependency of gst1-rtsp-server, > so: > > ifeq ($(BR2_PACKAGE_LIBCGROUP),y) > GST1_RTSP_SERVER_DEPENDENCIES += libcgroup > endif > > would be nice to have. > > Could you look into these and send an updated patch? The rest of the > patch looks good. > > Thanks a lot! > > Thomas
Hello, On Fri, 9 Sep 2016 17:52:48 +0530, Abhilash Tuse wrote: > > Are you sure all of these are mandatory? From a quick look at the > > configure.ac script, they don't seem to be mandatory, but rather be > > optional dependencies. > The reason why we added this was because internally gst1-rtsp-server > tries to create some of the elements of base and good plug-ins. > > Below is test example that I tried(with just gstreamer1+gst1-rtsp-server): > > # test-launch "( audiotestsrc ! audioconvert ! rtpL16pay name=pay0 )" > stream ready at rtsp://127.0.0.1:8554/test > > ** (test-launch:11): WARNING **: failed to create element 'rtpbin', > check your installation Hum, ok. So it's like *some* plugins are absolutely mandatory for gst1-rtsp-server to work properly? If that's the case, then selecting those plugins as you did is good, as we prefer when things work "out of the box" rather than having to figure out the runtime dependencies by trial on error. However, you just selected the main "base", "good" and "bad" plugin packages, but in fact all the plugins in those packages have sub-options. So you can build gst1-plugins-base without any plugin selected I believe, for example. So if some plugins are absolutely mandatory for gst1-rtsp-server to work, those plugins should be selected. For example, I guess the rtpbin element is provided by the gst1-plugins-good rtp plugin, so you should select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTP. Thanks, Thomas
>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes: Hi, > Hum, ok. So it's like *some* plugins are absolutely mandatory for > gst1-rtsp-server to work properly? Yes, I don't think rtsp-server is usable without rtpbin. > If that's the case, then selecting those plugins as you did is good, as > we prefer when things work "out of the box" rather than having to > figure out the runtime dependencies by trial on error. > However, you just selected the main "base", "good" and "bad" plugin > packages, but in fact all the plugins in those packages have > sub-options. So you can build gst1-plugins-base without any plugin > selected I believe, for example. So if some plugins are absolutely > mandatory for gst1-rtsp-server to work, those plugins should be > selected. > For example, I guess the rtpbin element is provided by the > gst1-plugins-good rtp plugin, so you should select > BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTP. Agreed.
diff --git a/package/gstreamer1/Config.in b/package/gstreamer1/Config.in index ea35ecc..23862bd 100644 --- a/package/gstreamer1/Config.in +++ b/package/gstreamer1/Config.in @@ -8,6 +8,7 @@ source "package/gstreamer1/gst1-plugins-bad/Config.in" source "package/gstreamer1/gst1-plugins-ugly/Config.in" source "package/gstreamer1/gst1-imx/Config.in" source "package/gstreamer1/gst1-libav/Config.in" +source "package/gstreamer1/gst1-rtsp-server/Config.in" source "package/gstreamer1/gst1-validate/Config.in" source "package/gstreamer1/gst-omx/Config.in" endif diff --git a/package/gstreamer1/gst1-rtsp-server/Config.in b/package/gstreamer1/gst1-rtsp-server/Config.in new file mode 100644 index 0000000..5201a8d --- /dev/null +++ b/package/gstreamer1/gst1-rtsp-server/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_GST1_RTSP_SERVER + bool "gst1-rtsp-server" + select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_GST1_PLUGINS_BAD + select BR2_PACKAGE_GST1_PLUGINS_GOOD + help + RTSP server library based on GStreamer. + + http://gstreamer.freedesktop.org/ diff --git a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash new file mode 100644 index 0000000..a30afbc --- /dev/null +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.hash @@ -0,0 +1,2 @@ +# From https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.8.3.tar.xz.sha256sum +sha256 010f06800c1c957851d1352e5ec7a8ba3ce6a857fec1b8afc7d1a9e5f53288bf gst-rtsp-server-1.8.3.tar.xz diff --git a/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk new file mode 100644 index 0000000..8e3b55a --- /dev/null +++ b/package/gstreamer1/gst1-rtsp-server/gst1-rtsp-server.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# gst1-rtsp-server +# +################################################################################ + +GST1_RTSP_SERVER_VERSION = 1.8.3 +GST1_RTSP_SERVER_SOURCE = gst-rtsp-server-$(GST1_RTSP_SERVER_VERSION).tar.xz +GST1_RTSP_SERVER_SITE = http://gstreamer.freedesktop.org/src/gst-rtsp-server +GST1_RTSP_SERVER_LICENSE = LGPLv2+ +GST1_RTSP_SERVER_LICENSE_FILES = COPYING COPYING.LIB +GST1_RTSP_SERVER_INSTALL_STAGING = YES +GST1_RTSP_SERVER_DEPENDENCIES = gstreamer1 gst1-plugins-base gst1-plugins-bad gst1-plugins-good + +$(eval $(autotools-package))