Sunshine e Moonlight - Streaming de jogos e Área de trabalho remota
Essa é minha primeira postagem aqui, resolvi me cadastrar porque vi o formato extremamente simples e minimalista e vi que era perfeito para consolidar as ferramentas que utilizo, estou escrevendo tudo manualmente, então talvez faltem informações ou fique confuso, então feedbacks são sempre bem vindos.
Enfim, queria trazer dois progamas que estou usando e testando para Streaming de Jogos, mas que também tem potencial para acessar sua área de trabalho de forma remota, para situações em que você trabalha remoto e precisa sair mas não quer levar seu celular mas tem um tablet, por exemplo.
Basicamente Sunshine vai funcionar como servidor no seu computador que deseja acesso remoto e o Moonlight como cliente, nos dispositivos que estiverem disponíveis.
Para usar você vai clicar no computador reconhecido automaticamente ou não, no Moonlight, e vai solicitar um pin que você coloca na webUI do Sunshine.
Sunshine
O Sunshine vai ser o mais trabalhoso porque tem configurações extras não vou entrar em muito detalhes sobre elas porque vai extender muito e ele tem uma documentação bem completa, além disso o padrão já atende a maioria das pessoas.
Mas para funcionar a primeira coisa que você precisa fazer assim que baixar (recomendo a versão potatil por maior flexibilidade) é definir a senha, que vai ser acessado no navegador como autenticação básica.
após isso em teoria já vai estar funcionando em sua rede local, só baixar o moonlight em algum dispositivo compátivel, estar na mesma rede e vai ser automaticamente detectado.
Se você tiver problemas com controle não funcionando no windows corretamente vai ser necessário baixar o ViGEmBus, reiniciar tudo e em teoria será corrigido.
Moonlight
Moonlight é o cliente, então você pode adicionar algumas configurações diretamente nele e se conectar manualmente com o IP da maquina que está o Sunshine, caso não encontre. Ele tem uma quantidade realmente grande de dispositivos compátiveis:
- Windows
- Mac
- Linux
- ChromeOS
- Android
- IOS
- PS vita
- Wii U
- LG webOS
Caso deseje e tenha uma placa Nvidia pode usar o GameStream do Geforce Experience também, sem a necessidade de configurar o Sunshine.
Acesso externo
Em teoria voê precisaria abrir a porta do seu roteador para ter acesso externo, não tenho muito conhecimento mas acredito que isso não seja muito seguro, então eu estou utilizando o wireguard, mas também funciona com ZeroTier e não testei mas em teoria com TailScale também.
Vou falar particulamente do meu setup pessoal para isso que talvez seja muito específico sem entrar em muitos detalhes.
Utilizo Authentik no meu servidor auto hospedado para SSO, ele tem uma função que consigo configurar para ignorar a autenticação do Sunshine e utilizar a do próprio Authentik que acredito ser bem mais segura, então para webUI faço proxy reverso com Nginx Proxy Manager e Cloudflare para apontar para meu domínio pessoal e acessando ele vai redirecionar para SSO do Authentik e assim consigo logar na webUI do Sunshine com mais segurança.
Tentei fazer o mesmo para acessar o dominio ao inves do ip da vpn, mas sem sucesso.
Opinião após os testes
Testei apenas no android e na webOS da LG, posso dizer que no android foi a melhor experiência com um streaming que tive, foi extremamente fluído em rede local e em rede externa também não percebi muito lag em velocidades mais altas 100-300MB, porém em mais lentas 10-20MB ficou bem instável, utilizo um gamesir X2 no meu celular, então a experiência de fato é excelente.
Na webOS (4.9) só é possível instalar pelo modo de desenvolvimento e posso dizer que a experiência não foi muito boa, travou muito e o áudio ficava extremamente robotizado.
Sobre utilizar para acessar a área de trabalho remotamente, estou enviando essa postagem fazendo esse teste, e está extremamente fluído... pelo menos em rede local.
A única adaptação que fiz foi aumentar a escala para 125% pela tela ser menor que a do computador. Então além de para jogar, também é possível utilizar como um anydesk opensource, desde que você tenha um teclado e mouse para isso.
Espero que isso seja útil, as maioria dos links estão no próprio texto, então não vou colocar aqui embaixo.