Merge lp:~laney/ubiquity/webcam-gst-1.0 into lp:ubiquity
- webcam-gst-1.0
- Merge into trunk
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 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Dimitri John Ledkov | Pending | ||
Review via email: mp+143136@code.launchpad.net |
Commit message
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. :-)
Dimitri John Ledkov (xnox) wrote : | # |
Iain Lane (laney) wrote : | # |
On Mon, Jan 14, 2013 at 05:23:20PM -0000, Dmitrijs Ledkovs wrote:
> /usr/lib/
> return info.invoke(*args, **kwargs)
>
> But could be harmless.
Cheers - I think you can remove this now as pad-alloc has gone away.
http://
http://
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> ]
Preview Diff
1 | === modified file 'configure.ac' | |||
2 | --- configure.ac 2012-10-19 14:27:05 +0000 | |||
3 | +++ configure.ac 2013-01-16 13:46:22 +0000 | |||
4 | @@ -29,8 +29,8 @@ | |||
5 | 29 | if test "x$UBIQUITY_NO_GTK" = x; then | 29 | if test "x$UBIQUITY_NO_GTK" = x; then |
6 | 30 | PKG_CHECK_MODULES(WEBCAM, [gtk+-3.0 >= $GTK3_REQUIRED | 30 | PKG_CHECK_MODULES(WEBCAM, [gtk+-3.0 >= $GTK3_REQUIRED |
7 | 31 | gio-2.0 >= $GIO_REQUIRED | 31 | gio-2.0 >= $GIO_REQUIRED |
10 | 32 | gstreamer-0.10 | 32 | gstreamer-1.0 |
11 | 33 | gstreamer-interfaces-0.10 | 33 | gstreamer-video-1.0 |
12 | 34 | gudev-1.0]) | 34 | gudev-1.0]) |
13 | 35 | AC_SUBST(WEBCAM_CFLAGS) | 35 | AC_SUBST(WEBCAM_CFLAGS) |
14 | 36 | AC_SUBST(WEBCAM_LIBS) | 36 | AC_SUBST(WEBCAM_LIBS) |
15 | 37 | 37 | ||
16 | === modified file 'd-i/update-control' | |||
17 | --- d-i/update-control 2012-12-05 13:28:32 +0000 | |||
18 | +++ d-i/update-control 2013-01-16 13:46:22 +0000 | |||
19 | @@ -45,7 +45,8 @@ | |||
20 | 45 | 'keymapper (>= 0.5.3-7)', | 45 | 'keymapper (>= 0.5.3-7)', |
21 | 46 | 'libgirepository1.0-dev', | 46 | 'libgirepository1.0-dev', |
22 | 47 | 'libglib2.0-dev', | 47 | 'libglib2.0-dev', |
24 | 48 | 'libgstreamer-plugins-base0.10-dev (>= 0.10.23)', | 48 | 'libgstreamer1.0-dev', |
25 | 49 | 'libgstreamer-plugins-base1.0-dev', | ||
26 | 49 | 'libgtk-3-dev', | 50 | 'libgtk-3-dev', |
27 | 50 | 'libgudev-1.0-dev', | 51 | 'libgudev-1.0-dev', |
28 | 51 | 'libindicator3-dev', | 52 | 'libindicator3-dev', |
29 | 52 | 53 | ||
30 | === modified file 'debian/changelog' | |||
31 | --- debian/changelog 2013-01-12 00:47:22 +0000 | |||
32 | +++ debian/changelog 2013-01-16 13:46:22 +0000 | |||
33 | @@ -1,5 +1,6 @@ | |||
34 | 1 | ubiquity (2.13.10) UNRELEASED; urgency=low | 1 | ubiquity (2.13.10) UNRELEASED; urgency=low |
35 | 2 | 2 | ||
36 | 3 | [ Colin Watson ] | ||
37 | 3 | * Only force mirror/country to the value of debian-installer/country if it | 4 | * Only force mirror/country to the value of debian-installer/country if it |
38 | 4 | is empty or has not been preseeded (LP: #732221). | 5 | is empty or has not been preseeded (LP: #732221). |
39 | 5 | * For automatic installs, set debian-installer/country to a country | 6 | * For automatic installs, set debian-installer/country to a country |
40 | @@ -9,6 +10,9 @@ | |||
41 | 9 | on first boot (LP: #1098299). | 10 | on first boot (LP: #1098299). |
42 | 10 | * Update translations from Launchpad (LP: #1096923). | 11 | * Update translations from Launchpad (LP: #1096923). |
43 | 11 | 12 | ||
44 | 13 | [ Iain Lane ] | ||
45 | 14 | * Port the webcam support to GStreamer 1.0. | ||
46 | 15 | |||
47 | 12 | -- Colin Watson <cjwatson@ubuntu.com> Fri, 11 Jan 2013 17:17:27 +0000 | 16 | -- Colin Watson <cjwatson@ubuntu.com> Fri, 11 Jan 2013 17:17:27 +0000 |
48 | 13 | 17 | ||
49 | 14 | ubiquity (2.13.9) raring; urgency=low | 18 | ubiquity (2.13.9) raring; urgency=low |
50 | @@ -89,9 +93,9 @@ | |||
51 | 89 | 93 | ||
52 | 90 | [ Dmitrijs Ledkovs ] | 94 | [ Dmitrijs Ledkovs ] |
53 | 91 | * Clear "Read release notes or update the installer" if neither action | 95 | * Clear "Read release notes or update the installer" if neither action |
57 | 92 | are possible. (LP: #1066302) | 96 | * Automatic update of included source packages: base-installer |
58 | 93 | * If there is only one disk & use_device recipe is used, change next step | 97 | 1.122ubuntu14, debian-installer-utils 1.91ubuntu6, flash-kernel |
59 | 94 | button to "Install Now". (LP: #1050044) | 98 | 3.0~rc.4ubuntu28. |
60 | 95 | * When auto-partitioning is not possible, allow to manually partition | 99 | * When auto-partitioning is not possible, allow to manually partition |
61 | 96 | the same drive installation medium is on. (LP: #1053030) | 100 | the same drive installation medium is on. (LP: #1053030) |
62 | 97 | * Fix the question_dialog height-for-width (LP: #862270) | 101 | * Fix the question_dialog height-for-width (LP: #862270) |
63 | 98 | 102 | ||
64 | === modified file 'debian/control' | |||
65 | --- debian/control 2012-12-05 13:28:32 +0000 | |||
66 | +++ debian/control 2013-01-16 13:46:22 +0000 | |||
67 | @@ -3,7 +3,7 @@ | |||
68 | 3 | Priority: optional | 3 | Priority: optional |
69 | 4 | Maintainer: Ubuntu Installer Team <ubuntu-installer@lists.ubuntu.com> | 4 | Maintainer: Ubuntu Installer Team <ubuntu-installer@lists.ubuntu.com> |
70 | 5 | Uploaders: Colin Watson <cjwatson@ubuntu.com>, Evan Dandrea <ev@ubuntu.com> | 5 | Uploaders: Colin Watson <cjwatson@ubuntu.com>, Evan Dandrea <ev@ubuntu.com> |
72 | 6 | Build-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, xvfb | 6 | Build-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 |
73 | 7 | Standards-Version: 3.6.2.1 | 7 | Standards-Version: 3.6.2.1 |
74 | 8 | X-Python3-Version: >= 3.1 | 8 | X-Python3-Version: >= 3.1 |
75 | 9 | XS-Testsuite: autopkgtest | 9 | XS-Testsuite: autopkgtest |
76 | @@ -45,7 +45,7 @@ | |||
77 | 45 | Package: ubiquity-frontend-gtk | 45 | Package: ubiquity-frontend-gtk |
78 | 46 | Architecture: any | 46 | Architecture: any |
79 | 47 | Pre-Depends: ${misc:Pre-Depends} | 47 | Pre-Depends: ${misc:Pre-Depends} |
81 | 48 | Depends: ${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 | busybox | 48 | Depends: ${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 |
82 | 49 | Suggests: gnome-control-center | 49 | Suggests: gnome-control-center |
83 | 50 | Conflicts: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3) | 50 | Conflicts: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3) |
84 | 51 | Replaces: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3) | 51 | Replaces: ubuntu-express-frontend-gtk, espresso-frontend-gtk, ubiquity (<< 2.4.3) |
85 | 52 | 52 | ||
86 | === modified file 'src/webcam/Makefile.am' | |||
87 | --- src/webcam/Makefile.am 2011-08-22 10:35:58 +0000 | |||
88 | +++ src/webcam/Makefile.am 2013-01-16 13:46:22 +0000 | |||
89 | @@ -21,7 +21,7 @@ | |||
90 | 21 | introspection_sources = $(libubiwebcam_la_SOURCES) | 21 | introspection_sources = $(libubiwebcam_la_SOURCES) |
91 | 22 | 22 | ||
92 | 23 | UbiquityWebcam-1.0.gir: libubiwebcam.la | 23 | UbiquityWebcam-1.0.gir: libubiwebcam.la |
94 | 24 | UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-0.10 | 24 | UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-1.0 |
95 | 25 | UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity | 25 | UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity |
96 | 26 | UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la | 26 | UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la |
97 | 27 | UbiquityWebcam_1_0_gir_FILES = $(introspection_sources) | 27 | UbiquityWebcam_1_0_gir_FILES = $(introspection_sources) |
98 | 28 | 28 | ||
99 | === modified file 'src/webcam/Makefile.in' | |||
100 | --- src/webcam/Makefile.in 2012-09-27 15:48:52 +0000 | |||
101 | +++ src/webcam/Makefile.in 2013-01-16 13:46:22 +0000 | |||
102 | @@ -312,7 +312,7 @@ | |||
103 | 312 | @HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir) | 312 | @HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir) |
104 | 313 | @HAVE_INTROSPECTION_TRUE@INTROSPECTION_GIRS = UbiquityWebcam-1.0.gir | 313 | @HAVE_INTROSPECTION_TRUE@INTROSPECTION_GIRS = UbiquityWebcam-1.0.gir |
105 | 314 | @HAVE_INTROSPECTION_TRUE@introspection_sources = $(libubiwebcam_la_SOURCES) | 314 | @HAVE_INTROSPECTION_TRUE@introspection_sources = $(libubiwebcam_la_SOURCES) |
107 | 315 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-0.10 | 315 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_INCLUDES = GObject-2.0 Gtk-3.0 Gst-1.0 |
108 | 316 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity | 316 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_CFLAGS = $(INCLUDES) --identifier-prefix=Ubiquity |
109 | 317 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la | 317 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_LIBS = libubiwebcam.la |
110 | 318 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_FILES = $(introspection_sources) | 318 | @HAVE_INTROSPECTION_TRUE@UbiquityWebcam_1_0_gir_FILES = $(introspection_sources) |
111 | 319 | 319 | ||
112 | === modified file 'src/webcam/webcam.c' | |||
113 | --- src/webcam/webcam.c 2012-03-28 10:41:17 +0000 | |||
114 | +++ src/webcam/webcam.c 2013-01-16 13:46:22 +0000 | |||
115 | @@ -131,8 +131,8 @@ | |||
116 | 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); |
117 | 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); |
118 | 133 | 133 | ||
121 | 134 | priv->camerabin = gst_element_factory_make ("camerabin2" , "cam"); | 134 | priv->camerabin = gst_element_factory_make ("camerabin" , "cam"); |
122 | 135 | priv->viewfinder_caps = gst_caps_new_simple ("video/x-raw-rgb", | 135 | priv->viewfinder_caps = gst_caps_new_simple ("video/x-raw", |
123 | 136 | "width", G_TYPE_INT, 640, | 136 | "width", G_TYPE_INT, 640, |
124 | 137 | "height", G_TYPE_INT, 480, NULL); | 137 | "height", G_TYPE_INT, 480, NULL); |
125 | 138 | g_object_set (G_OBJECT (priv->camerabin), | 138 | g_object_set (G_OBJECT (priv->camerabin), |
126 | @@ -156,7 +156,7 @@ | |||
127 | 156 | priv->bus = gst_element_get_bus (priv->camerabin); | 156 | priv->bus = gst_element_get_bus (priv->camerabin); |
128 | 157 | gst_bus_add_signal_watch (priv->bus); | 157 | gst_bus_add_signal_watch (priv->bus); |
129 | 158 | g_signal_connect (priv->bus, "message", G_CALLBACK (message_cb), self); | 158 | g_signal_connect (priv->bus, "message", G_CALLBACK (message_cb), self); |
131 | 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); |
132 | 160 | gst_object_ref (priv->bus); | 160 | gst_object_ref (priv->bus); |
133 | 161 | gst_object_ref (priv->camerabin); | 161 | gst_object_ref (priv->camerabin); |
134 | 162 | } | 162 | } |
135 | @@ -170,8 +170,7 @@ | |||
136 | 170 | return; | 170 | return; |
137 | 171 | priv->src = gst_element_factory_make ("wrappercamerabinsrc", NULL); | 171 | priv->src = gst_element_factory_make ("wrappercamerabinsrc", NULL); |
138 | 172 | priv->testsrc = gst_element_factory_make ("videotestsrc", NULL); | 172 | priv->testsrc = gst_element_factory_make ("videotestsrc", NULL); |
141 | 173 | g_object_set (G_OBJECT (priv->testsrc), "is-live", TRUE, | 173 | g_object_set (G_OBJECT (priv->testsrc), "is-live", TRUE, NULL); |
140 | 174 | "peer-alloc", FALSE, NULL); | ||
142 | 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); |
143 | 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); |
144 | 177 | ubiquity_webcam_stop (webcam); | 176 | ubiquity_webcam_stop (webcam); |
145 | @@ -278,12 +277,12 @@ | |||
146 | 278 | if (GST_MESSAGE_TYPE (msg) != GST_MESSAGE_ELEMENT) | 277 | if (GST_MESSAGE_TYPE (msg) != GST_MESSAGE_ELEMENT) |
147 | 279 | return GST_BUS_PASS; | 278 | return GST_BUS_PASS; |
148 | 280 | 279 | ||
150 | 281 | if (!gst_structure_has_name (msg->structure, "prepare-xwindow-id")) | 280 | if (!gst_is_video_overlay_prepare_window_handle_message(msg)) |
151 | 282 | return GST_BUS_PASS; | 281 | return GST_BUS_PASS; |
152 | 283 | 282 | ||
153 | 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); |
154 | 285 | 284 | ||
156 | 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)), |
157 | 287 | video_window_xid); | 286 | video_window_xid); |
158 | 288 | gst_message_unref (msg); | 287 | gst_message_unref (msg); |
159 | 289 | return GST_BUS_DROP; | 288 | return GST_BUS_DROP; |
160 | 290 | 289 | ||
161 | === modified file 'src/webcam/webcam.h' | |||
162 | --- src/webcam/webcam.h 2012-02-12 02:35:58 +0000 | |||
163 | +++ src/webcam/webcam.h 2013-01-16 13:46:22 +0000 | |||
164 | @@ -29,7 +29,7 @@ | |||
165 | 29 | #include <gtk/gtk.h> | 29 | #include <gtk/gtk.h> |
166 | 30 | #include <gdk/gdkx.h> | 30 | #include <gdk/gdkx.h> |
167 | 31 | #include <gst/gst.h> | 31 | #include <gst/gst.h> |
169 | 32 | #include <gst/interfaces/xoverlay.h> | 32 | #include <gst/video/videooverlay.h> |
170 | 33 | 33 | ||
171 | 34 | 34 | ||
172 | 35 | G_BEGIN_DECLS | 35 | G_BEGIN_DECLS |
/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.