# skorokithakis/catt

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/skorokithakis-catt).**

3,629 stars · 165 forks · Python · bsd-2-clause

## Links

- GitHub: https://github.com/skorokithakis/catt
- awesome-repositories: https://awesome-repositories.com/repository/skorokithakis-catt.md

## Description

catt is a command-line interface and network utility for casting media and websites to Google Cast devices. It serves as a terminal-based controller that transmits video, audio, and web content from a local computer to compatible remote receiving hardware.

The tool includes a device manager that maps complex hardware identifiers to human-readable aliases via a local configuration file. This allows for faster device targeting and the assignment of default target devices.

The system supports streaming local files and online video sources, including the ability to render websites using the remote device's internal browser. It also handles the conversion of subtitle text files into receiver-compatible formats during the transmission process and provides command-line primitives to manage playback states such as play and pause.

## Tags

### Development Tools & Productivity

- [Media Playback Controllers](https://awesome-repositories.com/f/development-tools-productivity/command-line-interface-controllers/media-playback-controllers.md) — Serves as a terminal-based controller to programmatically manage audio and video playback states on remote hardware. ([source](https://github.com/skorokithakis/catt#readme))
- [Default Device Assignments](https://awesome-repositories.com/f/development-tools-productivity/device-set-managers/device-profile-configurations/default-device-assignments.md) — Allows users to define a primary target device in a local configuration file for faster casting. ([source](https://github.com/skorokithakis/catt#readme))

### Graphics & Multimedia

- [Google Cast Controllers](https://awesome-repositories.com/f/graphics-multimedia/google-cast-controllers.md) — Provides a comprehensive command-line interface for casting media and websites to Google Cast devices. ([source](https://github.com/skorokithakis/catt/tree/master/.symphony))
- [Command Line Casting](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-playback/command-line-casting.md) — Streams online videos, local files, and websites to remote devices using a terminal interface.
- [Video Casting](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-playback/video-casting.md) — Streams video content from various online web sources to compatible remote receiving hardware. ([source](https://github.com/skorokithakis/catt/blob/master/pyproject.toml))
- [Chromecast Casting Clients](https://awesome-repositories.com/f/graphics-multimedia/audio-music/audio-playback/video-casting/chromecast-casting-clients.md) — Serves as a client for streaming content to Chromecast devices using the Google Cast protocol via the terminal.
- [Local File Casting](https://awesome-repositories.com/f/graphics-multimedia/local-media-stream-hosting/local-file-casting.md) — Sends local video, photo, and music files from a computer to a remote Google Cast device. ([source](https://github.com/skorokithakis/catt#readme))
- [Media Casting URLs](https://awesome-repositories.com/f/graphics-multimedia/remote-url-media-linking/media-casting-urls.md) — Transmits web addresses or local file paths to remote devices for media rendering.
- [Terminal Media Streamers](https://awesome-repositories.com/f/graphics-multimedia/terminal-media-streamers.md) — Transmits local video, audio, and subtitle files from a computer to a remote network receiver via CLI.

### Hardware & IoT

- [Wireless Device Control](https://awesome-repositories.com/f/hardware-iot/wireless-device-control.md) — Provides the ability to send operational playback and state commands to Google Cast devices over a local wireless network.

### Networking & Communication

- [Remote Playback Control](https://awesome-repositories.com/f/networking-communication/socket-communication/socket-based-configuration/remote-playback-control.md) — Provides network-based control for managing playback states like play and pause on remote Google Cast devices. ([source](https://github.com/skorokithakis/catt/blob/master/README.md))

### System Administration & Monitoring

- [Remote Device Management](https://awesome-repositories.com/f/system-administration-monitoring/remote-device-management.md) — Manages media playback states and device targets through a centralized command-line interface.
- [Remote Browser Triggering](https://awesome-repositories.com/f/system-administration-monitoring/remote-browser-triggering.md) — Commands a remote device to open and render a specific URL using its internal web browser.

### Web Development

- [Casting Controllers](https://awesome-repositories.com/f/web-development/media-controllers/media-casting-receivers/casting-controllers.md) — Provides a client-side interface for managing cast targets and initiating media streams.

### Business & Productivity Software

- [Playback State Syncing](https://awesome-repositories.com/f/business-productivity-software/cloud-synced-managers/playback-state-syncing.md) — Synchronizes media playback states such as play and pause across the local network.

### Content Management & Publishing

- [Subtitle Format Converters](https://awesome-repositories.com/f/content-management-publishing/media-management/subtitle-management-systems/subtitle-synchronization/subtitle-processing/subtitle-format-converters.md) — Transforms subtitle text files into formats compatible with the receiving hardware during the transmission process.

### Data & Databases

- [Device Identifier Mappings](https://awesome-repositories.com/f/data-databases/naming-conventions/device-identifier-mappings.md) — Implements a mapping system that translates human-readable aliases to complex hardware identifiers for easier device targeting.

### User Interface & Experience

- [Browser Delegation](https://awesome-repositories.com/f/user-interface-experience/content-rendering-components/remote-content-renderers/browser-delegation.md) — Renders websites on a remote device by triggering its internal web browser via the command line. ([source](https://github.com/skorokithakis/catt#readme))
