Plugins

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.

Rhythmbox plugis

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.

Core Plugins ( builtin )

Name

Description

Language

Source link

Android devices

Support for Android 4.0+ devices (via MTP)

C

Gitlab Source

Audio CD Player

Support for playing of audio CDs as music source

C

Gitlab Source

Internet Radio

Support for broadcasting services transmitted via the Internet

C

Gitlab Source

Portable Players

Support for generic audio player devices (plus PSP and Nokia 770)

C

Gitlab Source

Power Manager

Inhibit Power Manager from suspending the machine while playing

C

Gitlab Source

Core Plugins

Name

Description

Language

Source link

Audio CD Recorder

Record audio CDs from playlists and duplicate audio CDs

C

Gitlab Source

Cover art search

Fetch album covers from the Internet

Python

Gitlab Source

DAAP Music Sharing

Share music and play shared music on your local network

C

Gitlab Source

FM Radio

Support for FM radio broadcasting services

C

Gitlab Source

Grilo media browser

Browse various local and Internet media sources

C

Gitlab Source

IM Status

Updates IM status according to the current song (works with Empathy and Pidgin)

Python

Gitlab Source

Last.fm

Submits song information to Last.fm and plays Last.fm radio streams

C

Gitlab Source

LIRC

Control Rhythmbox using an infrared remote control

C

Gitlab Source

ListenBrainz

Submit your listens to ListenBrainz

Python

Gitlab Source

Magnatune Store

Adds support to Rhythmbox for playing and purchasing from the Magnatune online music store

Python

Gitlab Source

MediaServer2 D-Bus interface

Provides an implementation of the MediaServer2 D-Bus interface specification

C

Gitlab Source

MPRIS D-Bus interface

Provides an implementation of the MPRIS D-Bus interface specification

C

Gitlab Source

Notification

Notification popups

C

Gitlab Source

Portable Players - iPod

Support for Apple iPod devices (show the content, play from device)

C

Gitlab Source

Portable Players - MTP

Support for MTP devices (show the content, transfer, play from device)

C

Gitlab Source

Python Console

Interactive Python console

Python

Gitlab Source

ReplayGain

Use ReplayGain to provide a consistent playback volume

Python

Gitlab Source

Song Lyrics

Fetch song lyrics from the Internet

Python

Gitlab Source

Web remote control

Control Rhythmbox from a web browser

Python

Gitlab Source

Zeitgeist

Inform Zeitgeist about your activity

Python

Gitlab Source

Third Party Plugins

For complete list of third party plugins, refer Rhythmbox Third Party Plugins.

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.

Apps/Rhythmbox/Plugins (last edited 2022-06-15 18:39:21 by crvi)