Plugins
1. Introduction
Rhythmbox plugins are external pieces of code that can be loaded to provide extra functionality that is not found in the normal "vanilla" Rhythmbox. Plugins can do basically everything that Rhythmbox itself could do, and in fact some "core" features like Audio CD support and Internet Radio are actually plugins (although not displayed to users as such).
Rhythmbox plugins are written in two languages: C and Python.
2. Types of plugins
There are 3 types of plugins:
Type |
Description |
Listed in UI |
Comments |
Core Plugins ( builtin ) |
Part of rhythmbox source tree |
No |
Mandatory. Cannot be disabled. |
Core Plugins |
Part of rhythmbox source tree |
Yes |
Optional. Can be enabled / disabled in plugin preferences. |
Third Party Plugins |
Not part of rhythmbox source tree. It is hosted by external repos like GitHub. |
Yes |
Optional. Can be enabled / disabled in plugin preferences. |
3. Core Plugins ( builtin )
Name |
Description |
Language |
Source link |
Android devices |
Support for Android 4.0+ devices (via MTP) |
C |
|
Audio CD Player |
Support for playing of audio CDs as music source |
C |
|
Internet Radio |
Support for broadcasting services transmitted via the Internet |
C |
|
Portable Players |
Support for generic audio player devices (plus PSP and Nokia 770) |
C |
|
Power Manager |
Inhibit Power Manager from suspending the machine while playing |
C |
4. Core Plugins
Name |
Description |
Language |
Source link |
Audio CD Recorder |
Record audio CDs from playlists and duplicate audio CDs |
C |
|
Cover art search |
Fetch album covers from the Internet |
Python |
|
DAAP Music Sharing |
Share music and play shared music on your local network |
C |
|
FM Radio |
Support for FM radio broadcasting services |
C |
|
Grilo media browser |
Browse various local and Internet media sources |
C |
|
IM Status |
Updates IM status according to the current song (works with Empathy and Pidgin) |
Python |
|
Last.fm |
Submits song information to Last.fm and plays Last.fm radio streams |
C |
|
LIRC |
Control Rhythmbox using an infrared remote control |
C |
|
Submit your listens to ListenBrainz |
Python |
||
Magnatune Store |
Adds support to Rhythmbox for playing and purchasing from the Magnatune online music store |
Python |
|
MediaServer2 D-Bus interface |
Provides an implementation of the MediaServer2 D-Bus interface specification |
C |
|
MPRIS D-Bus interface |
Provides an implementation of the MPRIS D-Bus interface specification |
C |
|
Notification |
Notification popups |
C |
|
Portable Players - iPod |
Support for Apple iPod devices (show the content, play from device) |
C |
|
Portable Players - MTP |
Support for MTP devices (show the content, transfer, play from device) |
C |
|
Python Console |
Interactive Python console |
Python |
|
Use ReplayGain to provide a consistent playback volume |
Python |
||
Song Lyrics |
Fetch song lyrics from the Internet |
Python |
|
Web remote control |
Control Rhythmbox from a web browser |
Python |
|
Zeitgeist |
Inform Zeitgeist about your activity |
Python |
5. Third Party Plugins
For complete list of third party plugins, refer Rhythmbox Third Party Plugins.
6. Writing a new Rhythmbox Plugin
If you are interested in write a new plugin, refer to the plugin writing guide. Plugins can be distributed separately from Rhythmbox itself. If you've written an interesting new plugin, you should consider distributing it yourself.
If you want to add your plugins to the Rhythmbox Third Party Plugins list, please open an issue in Gitlab.