goDrinking: compartilhe a tela sem passar por servidor nenhum
O goDrinking é um app open source de screen share P2P para Windows e macOS. Sem nuvem, sem login, sem conta. O vídeo vai direto de um PC para o outro via WebRTC.
O nome goDrinking não tem nada a ver com Golang nem com aplicativo de bar. É uma piada em português: "vai tomando", traduzido literalmente. O aviso inclusive está no próprio site do projeto para evitar confusão.
O que o projeto faz, no entanto, é bastante direto: compartilhamento de tela ponto a ponto, sem passar por um servidor centralizado, sem criar conta, sem instalar nada além do próprio aplicativo.
Desenvolvido por CosmicSnow, o goDrinking foi lançado como software open source com licença PolyForm Noncommercial, está disponível para Windows 10/11 e macOS 14.2+ (Apple Silicon), e o código está inteiramente disponível no GitHub para qualquer pessoa auditar.
Como funciona na prática
O fluxo é intencionalmente simples:
O participante que vai compartilhar a tela abre o aplicativo, cria uma sala definindo uma senha, e recebe um código de 6 caracteres gerado pelo sistema. Esse código é compartilhado com os outros participantes por qualquer meio: mensagem, chamada de voz, ou gritando pelo corredor.
Quem quer assistir entra com o código e a senha. Depois disso, a conexão de vídeo é estabelecida diretamente entre os participantes.
O que torna esse fluxo tecnicamente interessante é o que acontece no momento em que a conexão é estabelecida: o servidor do goDrinking sai do caminho. Ele só serviu para que os participantes se encontrassem e trocassem as informações técnicas necessárias para conectar diretamente (o que em redes se chama de signaling). Depois disso, o fluxo de vídeo vai de um PC para o outro sem intermediário.
A tecnologia por trás: WebRTC P2P
O goDrinking usa WebRTC para estabelecer a comunicação entre os participantes. WebRTC (Web Real-Time Communication) é um padrão aberto desenvolvido para permitir comunicação em tempo real diretamente entre navegadores e aplicativos, sem necessidade de servidores intermediários para o fluxo de mídia.
Para entender por que isso importa: quando você compartilha tela pelo Google Meet, Microsoft Teams ou Discord, o vídeo da sua tela vai para um servidor da empresa, é processado, e então enviado para os outros participantes. Em nenhum momento os PCs se comunicam diretamente. Isso tem vantagens (facilita funcionar atrás de NAT e firewalls), mas significa que a empresa tem acesso técnico ao que está sendo transmitido.
Com WebRTC P2P, o servidor faz apenas o papel de ponte de sinalização: apresenta os participantes um ao outro e troca as informações técnicas necessárias para que os PCs consigam estabelecer uma conexão direta. Depois disso, o vídeo flui diretamente entre os PCs, sem intermediário.
O goDrinking usa codec H.264 com aceleração de hardware onde disponível, com fallback para software quando não há suporte de hardware. O app também oferece controle manual de qualidade em três níveis (Low, Medium, High), com ajuste de resolução, framerate e bitrate.
Funcionalidades que se destacam
Além do compartilhamento básico, o goDrinking tem algumas características que o diferenciam de soluções mais simples:
Salas com múltiplos hosts: Todos os participantes podem compartilhar a tela ao mesmo tempo. Cada pessoa é host da própria transmissão. Quem assiste escolhe qual tela quer ver, com suporte a layout em grelha, pin em uma transmissão específica e zoom.
Controle de áudio por aplicativo: O goDrinking permite compartilhar o áudio do sistema com exclusão por aplicativo. Isso significa que você pode transmitir o som do jogo ou da música sem incluir o áudio do seu cliente de chat de voz, por exemplo.
Admission control: Com essa funcionalidade ativada, o criador da sala aprova manualmente cada entrada. Uma lista mostra quem está dentro da sala. Útil para sessões sensíveis ou grupos fechados.
Sem servidor TURN: O projeto intencionalmente não implementa servidor TURN (Transport Relay NAT). TURN é um mecanismo de fallback que roteia o tráfego de mídia pelo servidor quando a conexão P2P direta não consegue ser estabelecida (situação comum para quem está atrás de CGNAT). A decisão de não incluir TURN mantém o modelo de privacidade consistente, mas significa que usuários atrás de algumas configurações de rede mais restritivas podem ter dificuldade para conectar.
A comparação com o GoLive
Quem acompanha o Flateek vai lembrar que já cobrimos o GoLive, o app brasileiro de screen share direto pelo navegador. As duas ferramentas partem do mesmo princípio, mas tomam caminhos diferentes.
O GoLive funciona inteiramente no navegador, sem instalação. É a solução de menor atrito: abre, compartilha, pronto. Funciona em qualquer sistema operacional com navegador moderno e pode ser auto-hospedado em um servidor próprio.
O goDrinking é um aplicativo nativo instalado no sistema, disponível apenas para Windows e macOS. A vantagem do app nativo está no controle mais granular: acesso ao áudio do sistema por aplicativo, controle de codec, melhor aproveitamento de aceleração de hardware e integração mais profunda com o sistema operacional.
Para uso casual e espontâneo, o GoLive tem menos atrito. Para quem precisa de controle mais fino sobre qualidade, áudio e privacidade, o goDrinking oferece mais opções.
Uma nota sobre assinatura digital
O site do projeto é direto sobre um ponto que pode gerar dúvidas: o aplicativo não tem assinatura digital. Nem no macOS, nem no Windows.
A razão é simples e honesta: assinar digitalmente um aplicativo custa dinheiro. Para uma conta de desenvolvedor Apple, o custo é de US$ 99 por ano mais o processo de notarização. Para Windows, os certificados de assinatura de código têm custos variáveis. Para um projeto independente sem fins lucrativos, esse é um custo que ainda não foi absorvido.
O macOS vai exibir um aviso ao abrir o app pela primeira vez. Para contornar, você vai em Ajustes do Sistema, Privacidade e Segurança, e clica em "Abrir Mesmo Assim". No Windows, a tela do SmartScreen vai aparecer com a opção "Mais informações" e depois "Executar mesmo assim".
O projeto deixa claro que o código está inteiramente disponível no GitHub para quem quiser auditar antes de instalar. Para quem tem o ambiente configurado, compilar o app a partir do código-fonte também é uma opção.
Para quem faz sentido
O goDrinking resolve bem um caso de uso específico: compartilhamento de tela entre pessoas que se conhecem, onde privacidade importa e onde instalar um aplicativo dedicado é aceitável.
Para suporte técnico remoto sem passar os dados por um terceiro. Para sessões de pair programming onde o código na tela é sensível. Para jogar junto mostrando a tela sem depender do Discord ou Steam Remote Play. Para reuniões de equipe em contextos onde os dados não devem transitar por servidores externos.
O fato de ser open source e ter o código auditável é o diferencial mais significativo em relação às alternativas comerciais. Você não precisa confiar na palavra da empresa quando pode ler o código que define o comportamento do aplicativo.
Como instalar
As releases estão disponíveis no GitHub em github.com/CosmicSnow/GoDrinking/releases.
O site oficial do projeto está em godrinking.jouymaker.com com mais informações e links para download.
Bugs encontrados podem ser reportados diretamente no repositório do projeto no GitHub.
Fontes: