Skip to main content

Download and display album art for mpd tracks.

Project description

🎵 pidi

PyPI MIT licensed GitHub Workflow Status Donate

pidi is a plugin-compatible fork of bum, a daemon that downloads album art for songs playing in mpd/mopidy and displays them in a little window.

pidi isn't as lightweight as bum, but supports displaying track information to a variety of output devices including a 240x240 ST7789 LCD. pidi is intended for use with the Raspberry Pi, but can be used on other systems with the appropriate display plugins.

pidi uses musicbrainz to source and download cover art, if an album is missing its cover art you can easily create an account and fill in the data yourself. pidi outputs a release-id which you can use to find the exact entry on musicbrainz.

Note: pidi is meant to be used with files that don't have embedded album art (eg: mopidy-spotify).

showcase

Dependencies

  • python 3.6+
  • python-mpd2
  • musicbrainzngs

Optional

pidi supports multiple display outputs, specified using --display {dummy,tk,mpv}, you must install the dependencies required for your chosen output:

  • python-mpv - for mpv output
  • python3-pil, python3-tk and python3-pil.imagetk plus fonts and font_connection from pypi - for tk/PIL output
  • st7789 - for ST7789 1.3" 240x240 LCD output

Installation

pip3 install --user pidi

Usage

usage: pidi [-h] [--update-interval "i"] [--fps FPS] [--size "px"] [--cache_dir "/path/to/dir"] [--version]
            [--no_display] [--display {dummy,mpv,file,tk}] [--client {mpd,ssnc}] [--port PORT]
            [--server SERVER]

pidi - Download and display album art for mpd tracks.

optional arguments:
  -h, --help            show this help message and exit
  --update-interval "i"
                        overlay update interval in seconds.
  --fps FPS             frames per second.
  --size "px"           what size to display the album art in.
  --cache_dir "/path/to/dir"
                        Where to store the downloaded cover art.
  --version             Print "pidi" version.
  --no_display          Only download album art, don't display.
  --display {dummy,mpv,file,tk}
                        Display class to use.
  --client {mpd,ssnc}   Client class to use.
  --port PORT           Use a custom mpd port.
  --server SERVER       Use a remote server instead of localhost.

Changelog

v0.1.0

v0.0.1 / 0.0.2

  • Initial release(s)

Donate

pidi is a fork of bum - https://github.com/dylanaraps/bum, which was originally written by @dylanaraps.

If you'd like to show him some support, you can donate here:

https://patreon.com/dyla

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pidi-0.1.0.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

pidi-0.1.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file pidi-0.1.0.tar.gz.

File metadata

  • Download URL: pidi-0.1.0.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for pidi-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d97a8c473702d901555f1fe4b131e94f7fc2d0c37ba8193b2bfe736755647a6d
MD5 d4ce7f2b37976a73a435241cad3eb9c6
BLAKE2b-256 be0790c44b29d818d45573b2844c52e19596386543dbf4760a9d3cbf700acade

See more details on using hashes here.

File details

Details for the file pidi-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pidi-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.5

File hashes

Hashes for pidi-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 48b5941e672512c1d2517bae89a32b88e9590d5519acb6b4a92aa827311e215d
MD5 e8271c195e625f9708ad2032d582b557
BLAKE2b-256 c2234ee4670d6532a5b935380f15a5c3976b4eab081b040735c11f99c2416271

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page