Skip to main content

REPL to stream music from a Subsonic server to a chromecast

Project description

CastMe

CastMe is a simple Python REPL that allows you to cast music from a Subsonic server to a Chromecast device.

NOTE: The subsonic server must expose a URL over HTTPS. And since the chromecast will be the one connecting to the server, the certificate need to be trusted. This project is tested against Navidrome only.

It's pretty bare-bone for now, but as I am using it more and more I will add the features that I need.

Installation (pip / pipx / ...)

castme is available directly in pypi:

pip install castme

Just create the configuration file using --init and edit the content:

> castme --init
Configuration initialized in /home/blizarre/.config/castme.toml, please edit it before starting castme again

Castme will look for the castme.toml file in /etc or in the current directory as well. use --config in conjunction with --init to set the location of the configuration file.

Usage

  • Run the script, a REPL will appear:
> poetry run castme
Loading config from /home/blizarre/.config/castme.toml
looking for chromecast Living Room TV
Chromecast ready
>> play Harold enItal
Playing song Harold in the mountains (Adagio - Allegro) / Harold en Italie by Hector Berlioz
>> queue
 0 The Pilgrim's Procession (Allegretto) / Harold en Italie by Hector Berlioz
 1 Serenade of an Abruzzian highlander (Allegro assai) / Harold en Italie by Hector Berlioz
 2 The Robbers' orgies (Allegro frenetico) / Harold en Italie by Hector Berlioz
>> playpause
>> playpause
>> quit

commands: help list (l), next (n), play (p), playpause (pp), queue (q), quit (x), volume (v). Aliases are defined for the most common commands (in parenthesis).

Installation (dev)

  • Clone the repository
  • Install the required dependencies using Poetry or the install makefile target:
make install
  • Copy the config file template "castme/assets/castme.toml.template" to one of the supported directory and update the values inside
    • "castme.toml"
    • "~/.config/castme.toml"
    • "/etc/castme.toml"

During development, make dev will run the formatters and linters for the project.

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

castme-0.2.1.tar.gz (18.1 kB view details)

Uploaded Source

Built Distribution

castme-0.2.1-py3-none-any.whl (20.1 kB view details)

Uploaded Python 3

File details

Details for the file castme-0.2.1.tar.gz.

File metadata

  • Download URL: castme-0.2.1.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for castme-0.2.1.tar.gz
Algorithm Hash digest
SHA256 2e10016a76381fcb493be3e18e9f590ed6fc569b5af90438f8307e06a27bd946
MD5 d0e2a7fd63018413407758a4ae81c31d
BLAKE2b-256 f5cf559ccf37969a4689f3b27ef66be895aceb0f4974ad367acea9c9514e3562

See more details on using hashes here.

File details

Details for the file castme-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: castme-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 20.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for castme-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0cd576186ebcffd8f745a830040027bcca350d1dd9bd9cd3c9f7fe69892e5611
MD5 96120cc9fbd359a8216c2400d0a88db0
BLAKE2b-256 f4b8e4d329a37edd63a763b99e1bc9d748bc5f8e4871fcf8ef4394f456a89979

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