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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47e962efc966f1c4e9f38e03d63c4a4534736996b2374474502ae06b61412e38
|
|
| MD5 |
38dcdc12f5a9d49c4aab9c01bde8e4f5
|
|
| BLAKE2b-256 |
f067ee9acf0981e955798b7f00cf72aa756285d749b4bc0f65ff011dc7a7b1e6
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9dc4b309485e754d858d8fceec2b08d9d597fff9aa310ed0cac0e22c42fed45c
|
|
| MD5 |
ba147f6aca400f1e0442add64c0ea744
|
|
| BLAKE2b-256 |
c64be0db81e438ee110f84c05caa9c4bd9f84b787407f336ff45d347db902d84
|