Description
GStreamer 1.0 was released a couple of months ago. As far as I know, it doesn't bring any new features that are important for Mopidy.
Though, in GStreamer 1.0 the GStreamer Python bindings have been replaced by PyGI, which is generic Python bindings for any library supporting GObject Introspection.
Switching to PyGI will remove our dependency on the Python bindings for GStreamer, GObject, and libindicate, and maybe even the DBus bindings. Replacing this pile of manually maintained Python 2.x bindings with PyGI, which works under both Python 2 and 3, is a huge step towards bringing Mopidy to Python 3, and is thus something we should do.
A spike for porting to PyGI using GStreamer 0.10 was done in #147. I wasn't that much work, but we hit some problems that will not be resolved in GStreamer 0.10, so we can't move to PyGI without moving to GStreamer 1.0 at the same time. https://wiki.ubuntu.com/Novacut/GStreamer1.0 is a great resource which explains most of what needs to be changed in the migration.
The question isn't if we should port to PyGI, but when.
The current status of GStreamer 1.0 is:
- Included in Ubuntu 12.10: https://launchpad.net/ubuntu/+source/gstreamer1.0
- Packages for Ubuntu 12.04 is available from the GStreamer PPA on Launchpad: https://launchpad.net/~gstreamer-developers/+archive/ppa
- Not in the upcoming Debian Wheezy release, but 1.0 packages are in sid: http://packages.debian.org/search?keywords=gstreamer1.0-plugins-good&searchon=names&suite=all§ion=all
- Not available in Homebrew: https://github.com/mxcl/homebrew/blob/master/Library/Formula/
- Available in Arch: https://www.archlinux.org/packages/?q=gstreamer
My current guess is that we don't want to port before some time in 2013.