Skip to main content

nichromecast (Linux TUI)

Cast media from the terminal to Chromecast, DLNA renderers, and smart TVs — without Google's proprietary SDK.

../BACKENDS.md is the source of truth for how casting works; this package implements it.

Install

pip install -e .          # from this directory

Requires Python 3.10+. Depends only on rich and zeroconf.

Use

nichromecast                       # interactive TUI
nichromecast scan                  # list receivers and exit
nichromecast cast video.mp4        # cast a local file
nichromecast cast https://example.com/clip.mp4 --device "living room"
nichromecast cast 'https://www.youtube.com/watch?v=…'

Local files are served over HTTP from your machine, because receivers always pull and never accept a push — so the process stays alive until you stop it.

TUI keys

Screen Keys
Connect / select, enter connect, r rescan, s settings, q quit
Player space play/pause, / seek 10s, +/- volume, l load, x stop, b back
Settings / move, enter toggle or edit, b back

Backends

Backend Discovery Plays arbitrary URLs Plays YouTube
Cast v2 mDNS _googlecast._tcp yes via stream extraction (not yet implemented)
DLNA / UPnP SSDP AVTransport yes no
YouTube lounge DIAL over SSDP no yes, with ads

The right backend is chosen from what the device advertises plus the kind of thing you asked to play. Casting YouTube via the lounge backend drives the TV's own YouTube app, so its ads are unavoidable.

Known gaps

  • Automatic fallback is not yet gated on the playback-confirmation latch in BACKENDS.md.
  • The lounge backend reports the video ID as the title; fetching real titles would need another YouTube request.
  • No AirPlay support, so most Apple TVs and some recent LG/Samsung sets are out of reach.

Download files

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

Source Distribution

nichromecast-0.4.0.tar.gz (48.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nichromecast-0.4.0-py3-none-any.whl (40.4 kB view details)

Uploaded Python 3

File details

Details for the file nichromecast-0.4.0.tar.gz.

File metadata

  • Download URL: nichromecast-0.4.0.tar.gz
  • Upload date:
  • Size: 48.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.12

File hashes

Hashes for nichromecast-0.4.0.tar.gz
Algorithm Hash digest
SHA256 47e962efc966f1c4e9f38e03d63c4a4534736996b2374474502ae06b61412e38
MD5 38dcdc12f5a9d49c4aab9c01bde8e4f5
BLAKE2b-256 f067ee9acf0981e955798b7f00cf72aa756285d749b4bc0f65ff011dc7a7b1e6

See more details on using hashes here.

File details

Details for the file nichromecast-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: nichromecast-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 40.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.12

File hashes

Hashes for nichromecast-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9dc4b309485e754d858d8fceec2b08d9d597fff9aa310ed0cac0e22c42fed45c
MD5 ba147f6aca400f1e0442add64c0ea744
BLAKE2b-256 c64be0db81e438ee110f84c05caa9c4bd9f84b787407f336ff45d347db902d84

See more details on using hashes here.

Supported by

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