Merge lp:~laney/ubiquity/webcam-gst-1.0 into lp:ubiquity

Proposed by Iain Lane
Status: Merged
Merged at revision: 5808
Proposed branch: lp:~laney/ubiquity/webcam-gst-1.0
Merge into: lp:ubiquity
Diff against target: 172 lines (+22/-18)
8 files modified
configure.ac (+2/-2)
d-i/update-control (+2/-1)
debian/changelog (+7/-3)
debian/control (+2/-2)
src/webcam/Makefile.am (+1/-1)
src/webcam/Makefile.in (+1/-1)
src/webcam/webcam.c (+6/-7)
src/webcam/webcam.h (+1/-1)
To merge this branch: bzr merge lp:~laney/ubiquity/webcam-gst-1.0
Reviewer Review Type Date Requested Status
Dimitri John Ledkov Pending
Review via email: mp+143136@code.launchpad.net

Description of the change

Apparently I forgot to raise an MP for this when I originally did the work!

This branch switches Ubiquity to using GStreamer 1.0 for the webcam page.

I'm afraid I wasn't (yet) able to test this, due to hardware failures. Help on that front would be appreciated. :-)

To post a comment you must log in.
Revision history for this message
Dimitri John Ledkov (xnox) wrote :

/usr/lib/python3/dist-packages/gi/types.py:113: Warning: g_object_set_valist: object class `GstVideoTestSrc' has no property named `peer-alloc'
  return info.invoke(*args, **kwargs)

But could be harmless.

Revision history for this message
Iain Lane (laney) wrote :

On Mon, Jan 14, 2013 at 05:23:20PM -0000, Dmitrijs Ledkovs wrote:
> /usr/lib/python3/dist-packages/gi/types.py:113: Warning: g_object_set_valist: object class `GstVideoTestSrc' has no property named `peer-alloc'
> return info.invoke(*args, **kwargs)
>
> But could be harmless.

Cheers - I think you can remove this now as pad-alloc has gone away.

  http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=8722bdc694d70cb92fb69a969cf95a568439a234
  http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=290605451abfe083505032cbe0a9b48a308dc2e4

But it's still in the documentation. That's probably a bug.

--
Iain Lane [ <email address hidden> ]
Debian Developer [ <email address hidden> ]
Ubuntu Developer [ <email address hidden> ]

lp:~laney/ubiquity/webcam-gst-1.0 updated
5775. By Iain Lane

webcam.c: Don't set peer-alloc any more; it doesn't exist.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'configure.ac'
--- configure.ac 2012-10-19 14:27:05 +0000
+++ configure.ac 2013-01-16 13:46:22 +0000
@@ -29,8 +29,8 @@
29if test "x$UBIQUITY_NO_GTK" = x; then29if test "x$UBIQUITY_NO_GTK" = x; then
30 PKG_CHECK_MODULES(WEBCAM, [gtk+-3.0 >= $GTK3_REQUIRED30 PKG_CHECK_MODULES(WEBCAM, [gtk+-3.0 >= $GTK3_REQUIRED
31 gio-2.0 >= $GIO_REQUIRED31 gio-2.0 >= $GIO_REQUIRED
32 gstreamer-0.1032 gstreamer-1.0
33 gstreamer-interfaces-0.1033 gstreamer-video-1.0
34 gudev-1.0])34 gudev-1.0])
35 AC_SUBST(WEBCAM_CFLAGS)35 AC_SUBST(WEBCAM_CFLAGS)
36 AC_SUBST(WEBCAM_LIBS)36 AC_SUBST(WEBCAM_LIBS)
3737
=== modified file 'd-i/update-control'
--- d-i/update-control 2012-12-05 13:28:32 +0000
+++ d-i/update-control 2013-01-16 13:46:22 +0000
@@ -45,7 +45,8 @@
45 'keymapper (>= 0.5.3-7)',45 'keymapper (>= 0.5.3-7)',
46 'libgirepository1.0-dev',46 'libgirepository1.0-dev',
47 'libglib2.0-dev',47 'libglib2.0-dev',
48 'libgstreamer-plugins-base0.10-dev (>= 0.10.23)',48 'libgstreamer1.0-dev',
49 'libgstreamer-plugins-base1.0-dev',
49 'libgtk-3-dev',50 'libgtk-3-dev',
50 'libgudev-1.0-dev',51 'libgudev-1.0-dev',
51 'libindicator3-dev',52 'libindicator3-dev',
5253
=== modified file 'debian/changelog'
--- debian/changelog 2013-01-12 00:47:22 +0000
+++ debian/changelog 2013-01-16 13:46:22 +0000
@@ -1,5 +1,6 @@
1ubiquity (2.13.10) UNRELEASED; urgency=low1ubiquity (2.13.10) UNRELEASED; urgency=low
22
3 [ Colin Watson ]
3 * Only force mirror/country to the value of debian-installer/country if it4 * Only force mirror/country to the value of debian-installer/country if it
4 is empty or has not been preseeded (LP: #732221).5 is empty or has not been preseeded (LP: #732221).
5 * For automatic installs, set debian-installer/country to a country6 * For automatic installs, set debian-installer/country to a country
@@ -9,6 +10,9 @@
9 on first boot (LP: #1098299).10 on first boot (LP: #1098299).
10 * Update translations from Launchpad (LP: #1096923).11 * Update translations from Launchpad (LP: #1096923).
1112
13 [ Iain Lane ]
14 * Port the webcam support to GStreamer 1.0.
15
12 -- Colin Watson <cjwatson@ubuntu.com> Fri, 11 Jan 2013 17:17:27 +000016 -- Colin Watson <cjwatson@ubuntu.com> Fri, 11 Jan 2013 17:17:27 +0000
1317
14ubiquity (2.13.9) raring; urgency=low18ubiquity (2.13.9) raring; urgency=low
@@ -89,9 +93,9 @@
8993
90 [ Dmitrijs Ledkovs ]94 [ Dmitrijs Ledkovs ]
91 * Clear "Read release notes or update the installer" if neither action95 * Clear "Read release notes or update the installer" if neither action
92 are possible. (LP: #1066302)96 * Automatic update of included source packages: base-installer
93 * If there is only one disk & use_device recipe is used, change next step97 1.122ubuntu14, debian-installer-utils 1.91ubuntu6, flash-kernel
94 button to "Install Now". (LP: #1050044)98 3.0~rc.4ubuntu28.
95 * When auto-partitioning is not possible, allow to manually partition99 * When auto-partitioning is not possible, allow to manually partition
96 the same drive installation medium is on. (LP: #1053030)100 the same drive installation medium is on. (LP: #1053030)
97 * Fix the question_dialog height-for-width (LP: #862270)101 * Fix the question_dialog height-for-width (LP: #862270)
98102
=== modified file 'debian/control'
--- debian/control 2012-12-05 13:28:32 +0000
+++ debian/control 2013-01-16 13:46:22 +0000
@@ -3,7 +3,7 @@
3Priority: optional3Priority: optional
4Maintainer: Ubuntu Installer Team <ubuntu-installer@lists.ubuntu.com>4Maintainer: Ubuntu Installer Team <ubuntu-installer@lists.ubuntu.com>
5Uploaders: Colin Watson <cjwatson@ubuntu.com>, Evan Dandrea <ev@ubuntu.com>5Uploaders: Colin Watson <cjwatson@ubuntu.com>, Evan Dandrea <ev@ubuntu.com>
6Build-Depends: apt, autopoint, bf-utf-source, dctrl-tools, debconf (>= 1.5.43), debconf-utils, debhelper (>= 9), devio, dh-autoreconf, dh-di (>= 3), dpkg-dev (>= 1.15.7), gir1.2-soup-2.4, gir1.2-timezonemap-1.0, gir1.2-xkl-1.0, gnome-icon-theme, gobject-introspection, intltool (>= 0.40.0), intltool-debian (>= 0.30+20040212), iso-codes, isoquery, keymapper (>= 0.5.3-7), libbogl-dev, libcairo2-dev, libdebconfclient0-dev (>= 0.68), libdebian-installer4-dev (>= 0.76), libgirepository1.0-dev, libglib2.0-dev, libgstreamer-plugins-base0.10-dev (>= 0.10.23), libgtk-3-dev, libgudev-1.0-dev, libindicator3-dev, libiw-dev (>= 27+28pre9), liblocale-gettext-perl, libparted-dev, libparted0-dev (>= 2.2), locales, pep8, pkg-config, po-debconf (>= 1.0), pyflakes, python-gi-dev, python-scour, python3-all (>= 3.1), python3-apt (>= 0.7.100.3~), python3-cairo, python3-dbus, python3-gi, python3-gi-cairo, python3-mock (>= 0.7.0), python3-pyicu (>= 1.0), tzdata, ubuntu-artwork, udev, wget, xkb-data (>= 0.9), xkb-data-i18n, xvfb6Build-Depends: apt, autopoint, bf-utf-source, dctrl-tools, debconf (>= 1.5.43), debconf-utils, debhelper (>= 9), devio, dh-autoreconf, dh-di (>= 3), dpkg-dev (>= 1.15.7), gir1.2-soup-2.4, gir1.2-timezonemap-1.0, gir1.2-xkl-1.0, gnome-icon-theme, gobject-introspection, intltool (>= 0.40.0), intltool-debian (>= 0.30+20040212), iso-codes, isoquery, keymapper (>= 0.5.3-7), libbogl-dev, libcairo2-dev, libdebconfclient0-dev (>= 0.68), libdebian-installer4-dev (>= 0.76), libgirepository1.0-dev, libglib2.0-dev, libgstreamer-plugins-base1.0-dev, libgstreamer1.0-dev, libgtk-3-dev, libgudev-1.0-dev, libindicator3-dev, libiw-dev (>= 27+28pre9), liblocale-gettext-perl, libparted-dev, libparted0-dev (>= 2.2), locales, pep8, pkg-config, po-debconf (>= 1.0), pyflakes, python-gi-dev, python-scour, python3-all (>= 3.1), python3-apt (>= 0.7.100.3~), python3-cairo, python3-dbus, python3-gi, python3-gi-cairo, python3-mock (>= 0.7.0), python3-pyicu (>= 1.0), tzdata, ubuntu-artwork, udev, wget, xkb-data (>= 0.9), xkb-data-i18n, xvfb
7Standards-Version: 3.6.2.17Standards-Version: 3.6.2.1
8X-Python3-Version: >= 3.18X-Python3-Version: >= 3.1
9XS-Testsuite: autopkgtest9XS-Testsuite: autopkgtest
@@ -45,7 +45,7 @@
45Package: ubiquity-frontend-gtk45Package: ubiquity-frontend-gtk
46Architecture: any46Architecture: any
47Pre-Depends: ${misc:Pre-Depends}47Pre-Depends: ${misc:Pre-Depends}
48Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends}, ubiquity (= ${binary:Version}), python3-dbus, gir1.2-gtk-3.0, gir1.2-gdkpixbuf-2.0, gir1.2-gstreamer-0.10, gir1.2-soup-2.4, gir1.2-vte-2.90, gir1.2-webkit-3.0, iso-codes, metacity | xfwm4 | matchbox-window-manager | lubuntu-default-settings | openbox | compiz, gksu, gir1.2-xkl-1.0, gir1.2-timezonemap-1.0, python3-gi, python3-cairo, python3-gi-cairo, gir1.2-appindicator3-0.1, gstreamer0.10-plugins-good, busybox-static | busybox48Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends}, ubiquity (= ${binary:Version}), python3-dbus, gir1.2-gtk-3.0, gir1.2-gdkpixbuf-2.0, gir1.2-gstreamer-1.0, gir1.2-soup-2.4, gir1.2-vte-2.90, gir1.2-webkit-3.0, iso-codes, metacity | xfwm4 | matchbox-window-manager | lubuntu-default-settings | openbox | compiz, gksu, gir1.2-xkl-1.0, gir1.2-timezonemap-1.0, python3-gi, python3-cairo, python3-gi-cairo, gir1.2-appindicator3-0.1, gstreamer1.0-plugins-good, busybox-static | busybox
49Suggests: gnome-control-center49Suggests: gnome-control-center
50Conflicts: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3)50Conflicts: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3)
51Replaces: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3)51Replaces: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3)
5252
=== modified file 'src/webcam/Makefile.am'
--- src/webcam/Makefile.am 2011-08-22 10:35:58 +0000
+++ src/webcam/Makefile.am 2013-01-16 13:46:22 +0000
@@ -21,7 +21,7 @@
21introspection_sources = $(libubiwebcam_la_SOURCES)21introspection_sources = $(libubiwebcam_la_SOURCES)
2222
23UbiquityWebcam-1.0.gir: libubiwebcam.la23UbiquityWebcam-1.0.gir: libubiwebcam.la
24UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-0.1024UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-1.0
25UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity25UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity
26UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la26UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la
27UbiquityWebcam_1_0_gir_FILES = $(introspection_sources)27UbiquityWebcam_1_0_gir_FILES = $(introspection_sources)
2828
=== modified file 'src/webcam/Makefile.in'
--- src/webcam/Makefile.in 2012-09-27 15:48:52 +0000
+++ src/webcam/Makefile.in 2013-01-16 13:46:22 +0000
@@ -312,7 +312,7 @@
312@HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir)312@HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir)
313@HAVE_INTROSPECTION_TRUE@INTROSPECTION_GIRS = UbiquityWebcam-1.0.gir313@HAVE_INTROSPECTION_TRUE@INTROSPECTION_GIRS = UbiquityWebcam-1.0.gir
314@HAVE_INTROSPECTION_TRUE@introspection_sources = $(libubiwebcam_la_SOURCES)314@HAVE_INTROSPECTION_TRUE@introspection_sources = $(libubiwebcam_la_SOURCES)
315@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-0.10315@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-1.0
316@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity316@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity
317@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la317@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la
318@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_FILES = $(introspection_sources)318@HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_FILES = $(introspection_sources)
319319
=== modified file 'src/webcam/webcam.c'
--- src/webcam/webcam.c 2012-03-28 10:41:17 +0000
+++ src/webcam/webcam.c 2013-01-16 13:46:22 +0000
@@ -131,8 +131,8 @@
131 gtk_box_pack_start (GTK_BOX (self), priv->drawing_area, TRUE, TRUE, 0);131 gtk_box_pack_start (GTK_BOX (self), priv->drawing_area, TRUE, TRUE, 0);
132 gtk_box_pack_start (GTK_BOX (self), priv->button, FALSE, FALSE, 0);132 gtk_box_pack_start (GTK_BOX (self), priv->button, FALSE, FALSE, 0);
133133
134 priv->camerabin = gst_element_factory_make ("camerabin2" , "cam");134 priv->camerabin = gst_element_factory_make ("camerabin" , "cam");
135 priv->viewfinder_caps = gst_caps_new_simple ("video/x-raw-rgb",135 priv->viewfinder_caps = gst_caps_new_simple ("video/x-raw",
136 "width", G_TYPE_INT, 640,136 "width", G_TYPE_INT, 640,
137 "height", G_TYPE_INT, 480, NULL);137 "height", G_TYPE_INT, 480, NULL);
138 g_object_set (G_OBJECT (priv->camerabin),138 g_object_set (G_OBJECT (priv->camerabin),
@@ -156,7 +156,7 @@
156 priv->bus = gst_element_get_bus (priv->camerabin);156 priv->bus = gst_element_get_bus (priv->camerabin);
157 gst_bus_add_signal_watch (priv->bus);157 gst_bus_add_signal_watch (priv->bus);
158 g_signal_connect (priv->bus, "message", G_CALLBACK (message_cb), self);158 g_signal_connect (priv->bus, "message", G_CALLBACK (message_cb), self);
159 gst_bus_set_sync_handler (priv->bus, (GstBusSyncHandler) window_id_cb, NULL);159 gst_bus_set_sync_handler (priv->bus, (GstBusSyncHandler) window_id_cb, NULL, NULL);
160 gst_object_ref (priv->bus);160 gst_object_ref (priv->bus);
161 gst_object_ref (priv->camerabin);161 gst_object_ref (priv->camerabin);
162}162}
@@ -170,8 +170,7 @@
170 return;170 return;
171 priv->src = gst_element_factory_make ("wrappercamerabinsrc", NULL);171 priv->src = gst_element_factory_make ("wrappercamerabinsrc", NULL);
172 priv->testsrc = gst_element_factory_make ("videotestsrc", NULL);172 priv->testsrc = gst_element_factory_make ("videotestsrc", NULL);
173 g_object_set (G_OBJECT (priv->testsrc), "is-live", TRUE,173 g_object_set (G_OBJECT (priv->testsrc), "is-live", TRUE, NULL);
174 "peer-alloc", FALSE, NULL);
175 g_object_set (G_OBJECT (priv->src), "video-source", priv->testsrc, NULL);174 g_object_set (G_OBJECT (priv->src), "video-source", priv->testsrc, NULL);
176 g_object_set (G_OBJECT (priv->camerabin), "camera-source", priv->src, NULL);175 g_object_set (G_OBJECT (priv->camerabin), "camera-source", priv->src, NULL);
177 ubiquity_webcam_stop (webcam);176 ubiquity_webcam_stop (webcam);
@@ -278,12 +277,12 @@
278 if (GST_MESSAGE_TYPE (msg) != GST_MESSAGE_ELEMENT)277 if (GST_MESSAGE_TYPE (msg) != GST_MESSAGE_ELEMENT)
279 return GST_BUS_PASS;278 return GST_BUS_PASS;
280279
281 if (!gst_structure_has_name (msg->structure, "prepare-xwindow-id"))280 if (!gst_is_video_overlay_prepare_window_handle_message(msg))
282 return GST_BUS_PASS;281 return GST_BUS_PASS;
283282
284 g_object_set(G_OBJECT(msg->src), "force-aspect-ratio", TRUE, NULL);283 g_object_set(G_OBJECT(msg->src), "force-aspect-ratio", TRUE, NULL);
285284
286 gst_x_overlay_set_xwindow_id (GST_X_OVERLAY (GST_MESSAGE_SRC(msg)),285 gst_video_overlay_set_window_handle (GST_VIDEO_OVERLAY (GST_MESSAGE_SRC(msg)),
287 video_window_xid);286 video_window_xid);
288 gst_message_unref (msg);287 gst_message_unref (msg);
289 return GST_BUS_DROP;288 return GST_BUS_DROP;
290289
=== modified file 'src/webcam/webcam.h'
--- src/webcam/webcam.h 2012-02-12 02:35:58 +0000
+++ src/webcam/webcam.h 2013-01-16 13:46:22 +0000
@@ -29,7 +29,7 @@
29#include <gtk/gtk.h>29#include <gtk/gtk.h>
30#include <gdk/gdkx.h>30#include <gdk/gdkx.h>
31#include <gst/gst.h>31#include <gst/gst.h>
32#include <gst/interfaces/xoverlay.h>32#include <gst/video/videooverlay.h>
3333
3434
35G_BEGIN_DECLS35G_BEGIN_DECLS

Subscribers

People subscribed via source and target branches

to status/vote changes: