Port to GStreamer 1.0

Bug #1137453 reported by DimStar
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Alarm Clock Applet
Fix Released
Low
Unassigned

Bug Description

GStreamer 0.10 has been obsoleted and superseeded by GStreamer 1.0 branch.

Porting alarm-clock-applet to GStreamer seems fairly simple (as not many APIs are being used):
- replace gstreamer-0.10 in configure.ac with gstreamer-1.0 (detect the new version)
- Replace playbin2 in src/player.c with playbin (the element was renamed).

Related branches

Revision history for this message
DimStar (dominique-launchpad-net) wrote :
Revision history for this message
Johannes H. Jensen (joh) wrote :

Patch looks good. I'm not sure we want to drop support for GStreamer 0.10 though, as it seems to be prevalent in a lot of distros still. How about supporting both?

Revision history for this message
DimStar (dominique-launchpad-net) wrote :

I think it's questionable to support both: since GNOME 3.6, gstreamer 1.0 is a requirement (so, 6 month ago) and as such you can safely assume that all major distros will have support for it shortly.

There is no longer any maintenance done on the GStreamer 0.10 branch.

Revision history for this message
Johannes H. Jensen (joh) wrote :

Ah in that case you have me convinced! I tried your patch but there seems to be a problem:

** (alarm-clock-applet:8886): CRITICAL **: Could not create player.

Program received signal SIGSEGV, Segmentation fault.
0x0000000000409e0e in media_player_start (player=0x0) at player.c:236
236 bus = gst_pipeline_get_bus (GST_PIPELINE (player->player));

The segfault is probably because we previously failed to create the player (player=NULL).

Perhaps there are some more API changes with GStreamer 1.0 which were missed in the patch?

Revision history for this message
DimStar (dominique-launchpad-net) wrote :

Ups.. yes, of course.. sorry for that.
gconfaudiosink and gconfvideosink no longer exist... (the segfault is a consequence of how the code is written though.. that's an error on itself and not really due to the patch).

Just reworking the patch and resubmitting...

do you have a good test plan for what all should work?

Revision history for this message
DimStar (dominique-launchpad-net) wrote :

A reworked patch... I created an alarm entry (timered) and the sound worked without crashes... also, testing sounds works fine (switched from gcong*sink to auto*sink, which represents the same in the end)

Revision history for this message
Johannes H. Jensen (joh) wrote :

Thank you, the reworked patch works perfectly. Committed to trunk at revision 226.

I'll look into the (separate) segfault case.

Changed in alarm-clock:
importance: Undecided → Low
status: New → Fix Committed
Revision history for this message
Sebastian Dröge (slomo) wrote :

It would be good to get a release out with this, there are already distros that don't ship GStreamer 0.10 anymore.

Johannes H. Jensen (joh)
Changed in alarm-clock:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.