Castor: una CLI para transmitir vídeo web al televisor mediante DLNA

Fuentes: Castor: a CLI to cast web video streams to your TV via DLNA

Castor es una herramienta de línea de comandos (CLI) que extrae flujos de vídeo de sitios web, gestiona la compatibilidad de formatos y los envía al televisor en tiempo real, con subtítulos autogenerados opcionales grabados en el propio vídeo. Está escrita en Go y se distribuye como binario nativo, mediante Homebrew o como imagen Docker con Chrome, ffmpeg y ffprobe preinstalados.

Para descubrir y reproducir en una televisión inteligente, Castor se apoya en el protocolo DLNA/UPnP MediaRenderer:1, presente en la práctica totalidad de smart TV comercializadas en la última década (Samsung, LG, Sony Bravia, Panasonic Viera, Philips, Hisense, TCL, VIZIO y Sharp), además de en reproductores en red como Kodi, VLC y Plex. Un comando de escaneo localiza los dispositivos disponibles en la red local mediante multidifusión SSDP.

La extracción de vídeo se realiza lanzando una instancia headless de Chrome con huella digitalizada aleatoria y scripts stealth para ocultar la automatización. A través del Chrome DevTools Protocol se监听 el tráfico de red y se capturan los flujos; después se aplica una cadena de acciones que incluye resolver el CAPTCHA de Cloudflare Turnstile si aparece. La herramienta admite fuentes de proxies configurables y plantillas de URL por película o episodio, e incorpora un navegador interactivo basado en TMDB que permite buscar títulos, filtrar por género y examinar metadatos sin salir del terminal.

Entre sus limitaciones declaradas se encuentran la imposibilidad de superar protecciones anti-bot sofisticadas y la obligatoriedad de usar red host en Docker, lo que solo es viable en Linux. Para los subtítulos se utilizan los bindings cgo de whisper.cpp, lo que requiere Go 1.26 o superior, cmake y compilar manualmente una biblioteca estática antes de go install.