GNOME Bugzilla – Bug 680422
Port to gstreamer 1.0
Last modified: 2012-09-06 04:59:13 UTC
See https://live.gnome.org/GnomeGoals/PortToGstreamer1
Created attachment 219589 [details] [review] Use gstreamer 1.0 Just changing the versions in configure.ac seems to make cheese build fine against gstreamer 1.0. The resulting cheese starts fine here, but complains about a missing camerabin.
Cheese needs to be ported to camerabin2 for GStreamer 1.0, which is basically done, thanks to the great work of Thiago, Oleksij, Raluca and Luciana. According to Luciana, this is basically done and works acceptably, but I have not had a chance to review the changes yet. I have added bug 663274 as a blocker of this bug.
Created attachment 222173 [details] [review] Use gstreamer 1.0 Just changing the versions in configure.ac seems to make cheese build fine against gstreamer 1.0. The resulting cheese starts fine here, but complains about a missing camerabin.
(In reply to comment #3) > Just changing the versions in configure.ac seems to make cheese > build fine against gstreamer 1.0. The resulting cheese starts fine > here, but complains about a missing camerabin. That seems not to be entirely true (except if you possibly have gstreamer0.10 headers installed on your system). Otherwise, you run into: In file included from libcheese/cheese-camera.c:37:0: libcheese/cheese-camera.h:28:37: fatal error: gst/interfaces/xoverlay.h: No such file or directory
Created attachment 222177 [details] [review] Use GStreamer 1.0 Camerabin2 is now camerabin again, and ffmpegcolorspace is now autovideoconvert. A bunch of APIs also need converting, and haven't been yet.
(In reply to comment #4) > (In reply to comment #3) > > Just changing the versions in configure.ac seems to make cheese > > build fine against gstreamer 1.0. The resulting cheese starts fine > > here, but complains about a missing camerabin. > > That seems not to be entirely true (except if you possibly have gstreamer0.10 > headers installed on your system). > > Otherwise, you run into: > In file included from libcheese/cheese-camera.c:37:0: > libcheese/cheese-camera.h:28:37: fatal error: gst/interfaces/xoverlay.h: No > such file or directory I've already fixed that, bug 682490. And you might also need the patch from bug 682491.
Caps usage needs to be reviewed, there's a function that's not ported still. It's on top of the camerabin2 branch now, no need to try and fix camerabin2 for GStreamer 0.10.
Apparently been wasting my time trying to get this working: http://thiagossantos.blogspot.co.uk/2012/08/cheese-live-from-gstreamer-conference.html I'm sure Thiago will eventually show up here.
Created attachment 222786 [details] [review] help: Fix tags in Chinese translation
Created attachment 222787 [details] [review] build: Fix dependencies for Cheese introspection
Created attachment 222788 [details] [review] build: Fix pkg-config dependencies
Created attachment 222789 [details] [review] lib: Fix comment about preset locations
Created attachment 222793 [details] [review] build: Avoid warnings about GStreamer's unstable API By defining GST_USE_UNSTABLE_API.
Created attachment 222795 [details] [review] tests: Avoid compile time warnings about Gst 1.0 By including cheese-config.h
Comment on attachment 222177 [details] [review] Use GStreamer 1.0 Replaced by Thiago's branch
All the patches are on top of Thiago's branch. Note that I haven't been able to get it working, as I get a warning on startup, and a black screen where the camera display should be. Git master from today. (lt-cheese:13655): GStreamer-CRITICAL **: gst_element_request_pad: assertion `templ != NULL' failed
+ Trace 230756
last issue reported in https://bugzilla.gnome.org/show_bug.cgi?id=682956 against gst-plugins-bad
(In reply to comment #8) > Apparently been wasting my time trying to get this working: > http://thiagossantos.blogspot.co.uk/2012/08/cheese-live-from-gstreamer-conference.html > > I'm sure Thiago will eventually show up here. I apologize, really sorry for wasting your time. I wasn't aware of this bug here. (Do we have a bug mailing list for cheese? It would help me a lot). So, I had my latest patches pushed to gst-plugins-bad master right now, which fix a few issues in camerabin. Cheese seems to be taking pictures nicely, videos still need some more work. I'll be looking into that.
There are a few bits at your patch that I didn't get right in my branch. I should merge those in the next days.
Hi, any chance this can be merged for 3.5.91? Tarballs due 3/9/2012 Release Team
(In reply to comment #20) > Hi, any chance this can be merged for 3.5.91? Tarballs due 3/9/2012 Pretty unlikely, unless Thiago has some news on the video work that was needed?
(In reply to comment #21) > (In reply to comment #20) > > Hi, any chance this can be merged for 3.5.91? Tarballs due 3/9/2012 > > Pretty unlikely, unless Thiago has some news on the video work that was needed? There is only now a major issue on A/V sync for video recording. I'm looking into that, but it won't require any change for cheese. It is purely a camerabin issue.
Comment on attachment 222786 [details] [review] help: Fix tags in Chinese translation Already committed to master.
Comment on attachment 222793 [details] [review] build: Avoid warnings about GStreamer's unstable API I would rather have the warnings for the moment, and wait to see what is considered stable when 1.0 is released.
Comment on attachment 222795 [details] [review] tests: Avoid compile time warnings about Gst 1.0 I would rather have the warnings for the moment, and wait to see what is considered stable when 1.0 is released.
I rebased and merged the camerabin2 branch to master. I will shortly make a release and the remaining regressions can be ironed out later. Thanks very much to Thiago and Bastien!
FYI I just pushed a fix that makes video recording's have a good A/V sync.
(In reply to comment #27) > FYI I just pushed a fix that makes video recording's have a good A/V sync. The fix is in camerabin's code, not cheese :)