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.3b1.tar.gz (21.8 kB view details)

Uploaded Source

Built Distribution

castme-0.3b1-py3-none-any.whl (24.0 kB view details)

Uploaded Python 3

File details

Details for the file castme-0.3b1.tar.gz.

File metadata

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

File hashes

Hashes for castme-0.3b1.tar.gz
Algorithm Hash digest
SHA256 cc12212be7360883e455fd3661be46db519610811122f98e9aa19d5f33a2ff13
MD5 a53d512de1ef16d573dc45612a20b251
BLAKE2b-256 f6a55ecfc4401d9e3ff96f6d009fe355996feec824873ca733ebdc8cde3fd2a3

See more details on using hashes here.

File details

Details for the file castme-0.3b1-py3-none-any.whl.

File metadata

  • Download URL: castme-0.3b1-py3-none-any.whl
  • Upload date:
  • Size: 24.0 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.3b1-py3-none-any.whl
Algorithm Hash digest
SHA256 941f8e2ce22affe378adea36148c451fedf32a6d632894504377bd00ecc0c875
MD5 92d9f8bbf6b2a4b3969971f89bc708d2
BLAKE2b-256 e5b414289270ddedc5e9ca77e5e7db31e5aa9dda19b3ac0d12d63336d74c4136

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