/shanocast

Google Chromecast Reciever

Primary LanguageNix

Shanocast is a Google Chromecast receiver which works with the Google Chrome browser. Demo:

shanocast-demo.mp4

Usage

Shanocast runs on Linux and is reproducible via a Nix Flake

Get Nix and enable flakes, for example via the DetSys Nix installer

curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install

Or if you prefer a single 21M~ file, get a statically compiled Nix binary

curl -L https://hydra.nixos.org/job/nix/master/buildStatic.x86_64-linux/latest/download-by-type/file/binary-dist > nix
chmod +x ./nix
$ nix run .#shanocast lo

the final argument lo specifies the network interface where the cast_receiver runs.

Finally, start Google Chrome and Shanocast should be listed as available for casting.

Building

Build Openscreen (commit 2a4dbe65) with this patch

How it works

Shanocast is based on Openscreen which is an open-source implementation of the Google Cast protocol. The device authentication is performed with precomputed signatures taken from AirReceiver. You can find more information in this blog post.

What does "shano" mean?

Shano (шано) is a Bulgarian slang word meaning shady or illegal.