orion
Orion es un cliente torrent y servidor de medios auto-hospedado ligero. Gestiona el ciclo completo de medios: descarga, transcodificación HLS, subtítulos y reproducción instantánea en cualquier dispositivo vía PWA universal, sin streaming en vivo inestable.
Ficha actualizada 25 sept 2026, 22:05 · upstream 25 sept 2026, 21:42 · release v0.2.0
Qué es orion
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Orion es una aplicación auto-hospedada que combina un motor torrent con un servidor de medios para la gestión automatizada de contenido multimedia. Se divide en dos partes: el Engine (backend) que gestiona descargas y transcodificación, y el Player (frontend PWA) accesible desde cualquier navegador o dispositivo móvil. Está construido con TypeScript, Node.js, Python y React, utilizando Redis como cola de tareas para la arquitectura de workers resiliente.
A diferencia del streaming en vivo, Orion prepara los archivos previamente mediante transcodificación a HLS y normalización de audio, permitiendo reproducción instantánea sin buffering. Incluye una pipeline automatizada para subtítulos que busca fuentes externas, alinea el audio y corrige problemas de renderizado RTL/BiDi. La arquitectura permite despliegue sencillo con Docker Compose en servidores de bajo rendimiento, gestionando la limpieza de almacenamiento mediante evicción LRU automática.
La aplicación soporta múltiples proveedores torrent vía APIs Torznab/Newznab o JSON personalizados, permitiendo a los usuarios configurar sus propias fuentes sin telemetría. Los workers de transcodificación manejan cargas concurrentes para formatos modernos (HEVC/AV1) y legacy (H.264), optimizando el uso de recursos del sistema.
- Reproducción de contenido multimedia en múltiples dispositivos (TV, móvil, escritorio) sin instalar apps nativas mediante PWA universal.
- Automatización del ciclo de vida de medios: descubrimiento de torrents, descarga y preparación para streaming instantáneo.
- Gestión de subtítulos automáticos con sincronización de audio y corrección de idioma y renderizado RTL/BiDi.
- Servidor de medios privado que respeta la privacidad (zero telemetry) y permite configuración propia de proveedores torrent.
- Transcodificación en tiempo real o pre-transcodificada para formatos modernos (HEVC/AV1) y legacy (H.264).
- Descarga y gestión de temporadas completas mientras el usuario está ausente, listas para reproducción inmediata.
- Arquitectura dual separada (Engine backend + Player PWA universal) que funciona en cualquier navegador.
- Pipeline de subtítulos automatizado con ffsubsync, alineación de audio y corrección RTL/BiDi.
- Gestión inteligente de almacenamiento con evicción LRU automática tras la transcodificación.
- Soporte para múltiples proveedores torrent vía APIs Torznab/Newznab o JSON personalizados.
- Despliegue simplificado con Docker Compose y configuración mediante variables de entorno.
- Arquitectura de workers resiliente con Redis y BullMQ DAG para recuperación automática de fallos.
- Dependencia de proveedores externos configurados por el usuario para obtener enlaces magnet; la aplicación no distribuye contenido.
- Requiere instalación manual de dependencias del sistema como FFmpeg, FFprobe y ffsubsync en desarrollo local.
- El transcoding pesado (HEVC/AV1) consume más recursos CPU que el stream-copy directo de H.264.
- No incluye dashboard administrativo integrado actualmente (mencionado en roadmap).
- La descarga de subtítulos depende de la disponibilidad de fuentes externas como OpenSubtitles.
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Recomendado usar Docker Compose con 4 núcleos CPU y 2GB RAM mínimo. Configurar .env con URLs de proveedores torrent y claves API si son necesarias. Asegurar que FFmpeg, FFprobe y Redis estén disponibles en el sistema o contenedor. Para desarrollo local, instalar Node.js v22.x y dependencias Python (ffsubsync). El almacenamiento debe tener capacidad suficiente para la transcodificación temporal antes de la evicción LRU.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.