Servicios Web

Cómo convertir Jellyfin en un videoclub virtual 3D con Halcyon Video

Halcyon Video transforma tu biblioteca de Jellyfin en un videoclub 3D navegable con carátulas, estanterías y reproducción directa desde tu servidor.

Si utilizas Jellyfin para gestionar una colección personal de películas, Halcyon Video permite cambiar completamente la forma de explorarla. Este proyecto gratuito y de código abierto convierte la biblioteca en un videoclub virtual de los años 90, con estanterías, cajas de VHS o DVD y un entorno 3D por el que puedes desplazarte antes de reproducir una película directamente desde tu servidor.

Qué necesitas para instalar Halcyon Video

  • Un servidor Jellyfin funcionando y con una biblioteca de películas configurada.
  • Un equipo capaz de ejecutar Docker, preferiblemente el mismo servidor o mini PC donde alojas tus servicios multimedia.
  • Un navegador moderno para acceder a la tienda virtual.
  • Acceso al servidor Jellyfin desde el equipo donde se ejecutará Halcyon Video.

Halcyon Video funciona actualmente con Jellyfin. Aunque el proyecto contempla adaptadores para Plex y Emby, su documentación actual los mantiene en la hoja de ruta y no deben considerarse todavía compatibles.

Cómo instalar Halcyon Video con Docker

El proyecto distribuye una imagen preparada en GitHub Container Registry. En un servidor Linux puedes iniciar el contenedor con el siguiente comando:

bash
docker run -d --name halcyon --network host --restart unless-stopped La opción <code>--restart unless-stopped</code> permite que Docker vuelva a iniciar automáticamente Halcyon Video después de reiniciar el servidor, salvo que hayas detenido el contenedor manualmente. El modo <code>--network host</code> resulta especialmente útil para las funciones de Remote Play basadas en WebRTC. Si solo necesitas acceder a la interfaz desde un navegador de la red local, también puedes publicar directamente el puerto 1420. [codebox title="bash"]docker run -d --name halcyon -p 1420:1420 --restart unless-stopped </p> <h2>Cómo abrir el videoclub virtual</h2> <p>Una vez iniciado el contenedor, abre un navegador desde un dispositivo de la misma red y escribe la dirección IP del servidor seguida del puerto <code>1420</code>. Por ejemplo, si el servidor utiliza la dirección local <code>192.168.1.50</code>, la interfaz estará disponible en <code>http://192.168.1.50:1420</code>. La primera apertura muestra la configuración de conexión. Introduce la dirección de tu servidor Jellyfin e inicia sesión con una cuenta que tenga acceso a las bibliotecas que quieras mostrar. Evita integrar el nombre de usuario y la contraseña directamente en una imagen Docker que vayas a distribuir. El propio proyecto advierte de que las credenciales introducidas mediante determinados argumentos de compilación pueden terminar almacenadas en texto legible dentro de la imagen.</p> <h2>Selecciona qué bibliotecas aparecerán en la tienda</h2> <ol> <li>Abre Halcyon Video en el navegador.</li> <li>Conecta la aplicación a tu servidor <strong>Jellyfin</strong>.</li> <li>Inicia sesión con las credenciales correspondientes.</li> <li>Selecciona las bibliotecas multimedia que quieras utilizar.</li> <li>Espera mientras Halcyon obtiene el catálogo y construye las estanterías virtuales.</li> </ol> <p>Las bibliotecas de Jellyfin se convierten en distintas zonas del establecimiento y las películas aparecen representadas mediante cajas que utilizan las imágenes y metadatos disponibles en el servidor.</p> <h2>Cómo recorrer la tienda y elegir una película</h2> <p>Halcyon Video permite desplazarse en primera persona por el establecimiento. Con teclado puedes utilizar las teclas <code>W</code>, <code>A</code>, <code>S</code> y <code>D</code> para caminar, mientras que otros controles permiten examinar las estanterías y seleccionar las películas. El proyecto genera diferentes zonas y elementos a partir de la biblioteca. Los géneros pueden organizar las estanterías, las versiones de distinta calidad de una misma película pueden agruparse y los títulos peor valorados pueden acabar incluso en un cajón de ofertas. Al seleccionar una caja puedes consultar información de la película. El sistema utiliza los datos existentes en Jellyfin y puede mostrar detalles relacionados con vídeo, audio y subtítulos.</p> <h2>Cómo reproducir una película desde el videoclub</h2> <p>Después de elegir una película, Halcyon Video recrea deliberadamente el proceso de alquiler de un antiguo videoclub. La película pasa por el mostrador antes de llegar a la zona de reproducción. La reproducción continúa dependiendo de tu biblioteca de Jellyfin. Halcyon Video funciona como una interfaz alternativa para explorar y seleccionar el contenido, en lugar de sustituir al servidor multimedia.</p> <h2>Cambia la época, las estanterías y el formato de las cajas</h2> <p>La tienda puede personalizarse con diferentes estilos visuales. El proyecto permite modificar de forma independiente aspectos como la época, iluminación, disposición de las estanterías y formato de las cajas.</p> <ul> <li>Diferentes diseños inspirados en varias décadas.</li> <li>Iluminación diurna, atardecer o nocturna.</li> <li>Distribuciones rectas, diagonales o en espiga.</li> <li>Cajas con apariencia de VHS o DVD.</li> <li>Nombre, identidad visual y otros elementos del establecimiento personalizables.</li> </ul> <p>El proyecto utiliza una marca ficticia de forma predeterminada y permite introducir elementos gráficos propios sin tener que modificar directamente el código de la aplicación.</p> <h2>Usa el modo 2.5D si el equipo tiene poca potencia gráfica</h2> <p>La tienda tridimensional completa utiliza Three.js y puede exigir una cantidad considerable de memoria y recursos gráficos cuando existen miles de películas. Halcyon Video incorpora un modo 2.5D más ligero que presenta la misma biblioteca mediante HTML y CSS. Esta alternativa resulta más apropiada para equipos modestos, incluido hardware de la clase Raspberry Pi, o cuando prefieres explorar las carátulas sin renderizar continuamente un entorno 3D completo.</p> <h2>Cómo probar Halcyon Video sin conectar Jellyfin</h2> <p>Halcyon incluye un catálogo de demostración que permite comprobar la interfaz antes de darle acceso a un servidor real. En una instalación propia puedes añadir <code>?demo=1</code> a la dirección de Halcyon. Por ejemplo: [codebox title="text"]http://192.168.1.50:1420/?demo=1

Este modo utiliza una biblioteca sintética y desactiva la reproducción de contenido personal, por lo que resulta útil para comprobar rendimiento, navegación y diseño antes de configurar las credenciales de Jellyfin.

Cómo actualizar Halcyon Video

Si utilizas la imagen precompilada de Docker, puedes descargar la versión disponible y recrear el contenedor manteniendo la misma configuración.

docker pull ghcr.io/halcyon-video/halcyon-video
docker stop halcyon
docker rm halcyon
docker run -d --name halcyon --network host --restart unless-stopped

Como Halcyon Video es un proyecto independiente y evoluciona con rapidez, conviene consultar sus cambios antes de actualizar una instalación que utilices habitualmente. Jellyfin seguirá conservando las películas y sus metadatos: Halcyon actúa como una interfaz adicional sobre esa biblioteca.