Skip to content

aquaherd/xfce4-squeezebox-plugin

Repository files navigation

------------------------------
Squeezebox xfce4 panel plugin.
------------------------------

    This plugin remote controls some media players from your
panel. It is in no way derived from the mpc plugin (although 
similar) or from the gnome media applet (although inspired).

    Its goal is to control virtually all available audio players
as soon as they allow for remote controlling by dbus, pipe or
whatever. Required minimal functionality would be play/pause, skip/
rewind and fetch track info, album/artist/title at least. Rating,
album art display and toggling the visibility of the main UI 
would be optional.

    Naming conflicts with existing gadgetery are coincidental. I was
listening to a song of the Who when the idea to this plugin came to me.

    Track change notification is made by means of libnotify only if 
libnotify is available during build.

    Media Keys can be grabbed and ungrabbed with the modified mmkeys.c 
glory, as seen here and there. (See also README.xubuntu in this document.)

    Embedded album art extraction is under research (for iTunes 
switchers like me). It also considers [/.](folder|cover|front).jpg 
in the file's folder if the backend supports file names.

    Automatic detection of a started player and attaching to it is a
long term goal. Currently, one can select one in the plugin properties.
    
    Currently available backends: (in order of appearance)
    - Rhythmbox 0.95 (via DBUS)
    - Music Player Daemon (without libmpd)
    - QuodLibet (via pipe and DBUS)
    - audacious 1.5.x (via DBUS)
    - exaile 0.2.14devel [r1629] (via DBUS, see README.exaile below)
    - consonance (via DBUS, polls)
    - muine (via DBUS)
    - banshee (via DBUS)
    
    Queued backends:
    - decibel-audio-player (DBUS interface lacklustre)
    - listen (dito)
    - generic MPRIS/MPRIS2 players

    Dropped backends:
    - BMPXlibmpd-dev
    
    Remotely possible backends:
    - mplayer (via -silent -idle switches with own playlist management)
    - lua scripted with lua-dbus bindings
    - SlimServer (as a nod to aforesaid naming issues)
    - Shuffle anything audio from a tracker query (should be nice)
    - amarok (won't introduce DCOP dependency, awaiting DBUS interface)
    - built-in (via gstreamer)

    If not listed above:
    - anything GTK+-ish that plays audio and has a DBUS interface or
      features any way of being controlled is welcome.
--
Hakan Erduman, 2010-11-06


=============
README.exaile
=============
I have reported the sorry state of the DBUS-interface on 2008-04-20.
Nothing has yet emerged into the mainline bzr; the interface has gotten worse
instead, so I can fully support a specific version of exaile: 0.2.14devel [r1629]
Thanks to Caio Alonso. If this version isn't detected, the backend will actively 
poll for change detection causing constant noise on the dbus.

You can get the best fit here:
$ bzr branch lp:~caio-alonso/exaile/missing-signals

Update: The 3.0x revision supports the MPRIS-protocol with a plugin.


=============
README.bmpx
=============
Version 0.40 of bmpx ignores the pause command. I had to drop it.

===============
README.xubuntu:
===============
    Somehow, gnome and xorg handle the media keys but they disappear 
under xubuntu hardy. Remedy is as follows:

0) Use the correct keyboard layout ;) Or Else:

1) Create a ~/.Xmodmap file with such content:

keycode 160=XF86AudioMute
keycode 162=XF86AudioPlay
keycode 176=XF86AudioRaiseVolume
keycode 174=XF86AudioLowerVolume
keycode 153=XF86AudioNext
keycode 144=XF86AudioPrev
keycode 164=XF86AudioStop 
(This issue seems resolved with Intrepid)
(Your keycodes may vary, try xev.)

2) run xmodmap ~/.Xmodmap during xfce startup.

3) Bleeding edge GTK versions
- gtk+-2.8.20 (Etch)
- gtk+ 2.10.x (xfce-4.6)
- gtk+ 2.12.19 (Hardy)
I'm setting the lowest of the above as dependency, but I include
workarounds for the tooltip change in 2.12 as well.
The xfce4.4 branch heads for Debian Lenny, trunk is at 2.16 atm.

============
README.etch:
============
Known issues:
- Packaged audacious does not seem to support DBUS under etch.
- Packaged QuodLibet may lack album art support (missing plugin)
- Packaged Rhythmbox stores album art on a different location.
- Packaged exaile is 0.2.11, but it's in lenny not in etch.

===============
README.FreeBSD:
===============
1. make on freebsd is older than GNU make. Therefore GNU make is aliased as gmake.
2. MSGFMT does not expand somehow. Must provide during configure.

So, building any goodie on freebsd boils down to:
Code:

$ ./configure MSGFMT=/usr/local/bin/msgfmt GMSGFMT=/usr/local/bin/msgfmt
$ gmake
$ sudo gmake install

=================
README.Packagers:
=================
- the current french and turkish translations are, being sketchy attempts, better not be 
  packaged.
- 'weibullguy' from forum.xfce.org reports 'Cross Linux from Scratch' as 
  a distro this plugin is also known to build on.
- A full build on debian Lenny needs:
xfce4-dev-tools xfce4-panel-dev libdbus-glib-1-dev libexo-0.3-dev libid3tag0-dev libwnck-dev libnotify-0-dev
- A full trunk build on ubuntu karmic needs:
xfce4-dev-tools xfce4-panel-dev libexo-0.3-dev libid3tag0-dev libwnck-dev lixfconf-0-dev
- Dependencies on Fedora are:
xfce4-panel-devel libxfcegui4-devel xfconf-devel libwnck-devel libid3tag-devel exo-devel

About

A media player remote control for the xfce4 panel

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages