Herramientas de usuario

Herramientas del sitio


informatica:software:sunshine

¡Esta es una revisión vieja del documento!


Sunshine

Sunshine es un servidor de streaming de juegos y escritorio de código abierto. Permite transmitir en tiempo real juegos y aplicaciones desde un PC a otros dispositivos de la red, como smartphones, tablets, otros PCs o Smart TVs.

Sunshine se combina habitualmente con el cliente Moonlight, que recibe el stream y envía la entrada de usuario (teclado, ratón, gamepad) de vuelta al servidor.

Características principales

  • Open Source y gratuito: Licencia MIT/GPL, código disponible en GitHub.
  • Compatibilidad multiplataforma: Linux (principal), Windows y macOS (limitado).
  • Compatibilidad con GPUs: NVIDIA y AMD, usando codificación por hardware (H.264/HEVC).
  • Baja latencia: Optimizado para streaming en LAN con mínima demora en controles.
  • Soporte de múltiples juegos y aplicaciones: Se pueden añadir ejecutables de juegos, emuladores o aplicaciones de escritorio.
  • Soporte para Wayland y X11 en Linux.
  • Configuración de red flexible: Ajuste de resolución, FPS, bitrate y codec.
  • Seguridad y emparejamiento: PIN de conexión para autenticar clientes.
  • Integración con Moonlight: Cliente compatible en Android, iOS, Windows, Linux, macOS y Raspberry Pi.

Casos de uso

  • Gaming en dispositivos móviles: Jugar a juegos de PC desde un smartphone o tablet Android/iOS mediante Moonlight.
  • Streaming de escritorio completo: Usar aplicaciones de Linux o Windows desde otro dispositivo dentro de la red LAN.
  • Home cloud gaming: Transformar un PC potente en un servidor de juegos para toda la familia o compañeros de cuarto.
  • Pruebas y desarrollo de aplicaciones: Ejecutar software gráfico desde un entorno centralizado y controlarlo remotamente.
  • Experiencias multiusuario (combinado con proyectos como Games on Whales): Varios usuarios acceden a sesiones de juegos independientes desde un mismo servidor.

Sunshine + Moonlight

Diagrama de conexión y flujo entre Sunshine (servidor) y Moonlight (cliente) desde un PC hacia un terminal Android:

+----------------------+                   +----------------------+
|                      |                   |                      |
|   PC con Arch Linux  |                   |   Android (15)       |
|   + Sunshine         |                   |   + Moonlight        |
|   - Juegos instalados|                   |                      |
|   - GPU/CPU codifica |                   |                      |
|                      |                   |                      |
+----------+-----------+                   +-----------+----------+
           |                                           ^
           | Video / Audio Stream (H.264 / HEVC)      |
           v                                           |
+---------------------------------------------------------------+
|                        Red LAN                                |
| - Ethernet o Wi-Fi 5GHz                                      |
| - Baja latencia                                               |
+---------------------------------------------------------------+
           ^                                           |
           | Controles / Entrada (teclado, ratón, gamepad)      |
           |                                           v
+----------------------+                   +----------------------+
|                      |                   |                      |
|   PC con Arch Linux  |                   |   Android (15)       |
|   + Sunshine         |                   |   + Moonlight        |
|                      |                   |                      |
+----------------------+                   +----------------------+

Instalación

Arch Linux

Instalo desde AUR el paquete sunshine-bin, pero al arrancarlo obtengo el siguiente error:

sunshine: error while loading shared libraries: libicuuc.so.76: cannot open shared object file: No such file or directory

Instalo entonces, también desde AUR, el paquete icu76. Ahora ya funciona.

Uso

Una vez iniciado Sunshine, abrimos el navegador y nos dirigimos a https://localhost:47990/

Lo primero es establecer una contraseña para acceder a la interfaz de administración de Sunshine.

Después de identificarnos, podemos …

Puertos que usa Sunshine

Aunque se pueden modificar en la interfaz web, por defecto Sunshine usa los siguientes:

Puerto Protocolo Descripción
47984 TCP
47989 TCP Para la conexión de clientes
47990 TCP Web UI
48010 TCP
47998 UDP Streaming de vídeo
47999 UDP Control
48000 UDP Streaming de audio

Recursos

  • Moonlight: cliente open source de Sunshine.
informatica/software/sunshine.1770210087.txt.gz · Última modificación: por tempwin