Castor brings smoother web video casting to smart TVs without screen mirroring lag
A new open-source tool called Castor is giving users a smarter way to cast web videos to a TV without the usual drawbacks of screen mirroring. Instead of duplicating your desktop or phone screen, which often causes lag, lower resolution, frame drops, and awkward playback controls, Castor finds the actual video stream and sends it directly to a compatible smart TV.
The result is a cleaner viewing experience that feels much closer to native streaming. For anyone who has tried to mirror a browser tab only to deal with stuttering video, mismatched audio, or reduced quality, Castor could be a useful alternative.
Castor is a command-line application built in Go and released as an open-source project under the MIT license. Its main purpose is simple: take a web page, stream link, or movie/TV title identifier, locate the playable video source, process it locally, and cast it to a television or media player in real time.
What makes Castor stand out is that it does not depend on Chromecast or AirPlay support. While experimental Chromecast compatibility is available, the tool is mainly designed around DLNA and UPnP MediaRenderer support. That matters because DLNA/UPnP is widely supported across many smart TVs and media devices from the last decade.
Supported targets may include smart TVs from brands such as Samsung, LG, Sony Bravia, Panasonic, Philips, Hisense, TCL, Vizio, and Sharp. Castor can also work with media software and players such as Kodi, VLC, and Plex, depending on the device setup.
The tool works differently from traditional screen casting. When a user provides a supported URL or content reference, Castor opens a headless Chrome session and analyzes network activity to identify the actual media stream. Once the stream is detected, it uses ffmpeg to transcode and deliver the video directly to the selected device.
Because playback is based on the video stream itself rather than a mirrored screen, users can potentially get better quality, reduced delay, and a more stable viewing experience. This is especially useful for long-form video, movies, TV episodes, live streams, or any situation where screen mirroring feels clumsy.
Castor also includes an optional subtitle feature. It can generate subtitles using a bundled whisper.cpp model, making it more flexible for videos that do not already include captions. This could be helpful for accessibility, noisy environments, or viewers who simply prefer watching with subtitles enabled.
Installation is aimed at more technical users, as Castor is not a typical app with a polished graphical interface. On macOS, it can be installed through Homebrew and requires Chrome, ffmpeg, and ffprobe. Linux users can run it through a Docker image, although Docker networking limitations may affect device discovery on macOS and Windows.
Configuration is handled through a simple file where users specify the target device name and content sources. A TMDB key is optional, but enabling it adds a more visual terminal-based browsing experience with posters and metadata for supported movie and TV titles.
Castor is currently available as an open-source project and was listed at version 1.4.1 with growing interest from developers and home media enthusiasts. Since it is still a command-line tool, it is best suited for users who are comfortable with terminal-based software, local media tools, and smart TV networking.
The developer notes that Castor does not host any video content. Users are responsible for following applicable laws, platform rules, and content provider terms when using the software.
For people looking for a better way to cast web video to a smart TV without relying on screen mirroring, Castor offers an interesting option. It combines open-source flexibility, broad smart TV compatibility, real-time transcoding, and support for common home media standards. While it may not be beginner-friendly yet, it points toward a future where casting web video can be smoother, sharper, and less dependent on specific ecosystems.






