Moonlight PC é um cliente de PC de código aberto para NVIDIA GameStream e Sunshine.
Moonlight também possui versões mobile para Android e iOS.
Você pode acompanhar o desenvolvimento em nosso servidor Discord e ajudar a traduzir Moonlight para o seu idioma no Weblate.
Decodificação de vídeo acelerada por hardware em Windows, Mac e Linux
Suporte aos codecs H.264, HEVC e AV1 (AV1 requer Sunshine e uma GPU host compatível)
Suporte YUV 4:4:4 (somente Sunshine)
Suporte para streaming HDR
Suporte de áudio com som surround 7.1
Suporte multitoque de 10 pontos (somente Sunshine)
Suporte para gamepad com feedback de força e controles de movimento para até 16 jogadores
Suporte para captura de ponteiro (para jogos) e controle direto do mouse (para área de trabalho remota)
Suporte para passar atalhos de teclado de todo o sistema, como Alt+Tab, para o host
Windows, macOS e Steam Link
Snap (para distribuições Linux baseadas em Ubuntu)
Flatpak (para outras distribuições Linux)
AppImage
Framboesa Pi 4 e 5
Pacotes Debian ARM genéricos de 32 e 64 bits (não para Raspberry Pi)
Pacotes experimentais RISC-V Debian
NVIDIA Jetson e Nintendo Switch (Ubuntu L4T)
A hospedagem dos repositórios de pacotes Debian e L4T do Moonlight é fornecida gratuitamente pela Cloudsmith.
Qt 6.7 SDK ou posterior (versões anteriores podem funcionar, mas não são oficialmente suportadas)
Visual Studio 2022 (a edição Community é adequada)
Selecione a opção MSVC durante a instalação do Qt. MinGW não é compatível.
7-Zip (somente se estiver construindo instaladores para PCs que não sejam de desenvolvimento)
Ferramentas gráficas (somente se estiver executando compilações de depuração)
Instale "Ferramentas Gráficas" na página Recursos Opcionais do aplicativo Configurações do Windows.
Alternativamente, execute dism /online /add-capability /capabilityname:Tools.Graphics.DirectX~~~~0.0.1.0
e reinicie.
Qt 6.7 SDK ou posterior (versões anteriores podem funcionar, mas não são oficialmente suportadas)
Xcode 14 ou posterior (versões anteriores podem funcionar, mas não são oficialmente suportadas)
create-dmg (somente se estiver construindo DMGs para uso em Macs que não sejam de desenvolvimento)
Qt 6 é recomendado, mas Qt 5.9 ou posterior também é suportado (substitua qmake6
por qmake
ao usar Qt 5).
GCC ou Clang
FFmpeg 4.0 ou posterior
Instale os pacotes necessários:
Requisitos básicos: openssl-devel SDL2-devel SDL2_ttf-devel ffmpeg-devel libva-devel libvdpau-devel opus-devel pulseaudio-libs-devel alsa-lib-devel libdrm-devel
Qt 6 (recomendado): qt6-qtsvg-devel qt6-qtdeclarative-devel
Qt 5: qt5-qtsvg-devel qt5-qtquickcontrols2-devel
Requisitos básicos: libegl1-mesa-dev libgl1-mesa-dev libopus-dev libsdl2-dev libsdl2-ttf-dev libssl-dev libavcodec-dev libavformat-dev libswscale-dev libva-dev libvdpau-dev libxkbcommon-dev wayland-protocols libdrm-dev
Qt 6 (recomendado): qt6-base-dev qt6-declarative-dev libqt6svg6-dev qml6-module-qtquick-controls qml6-module-qtquick-templates qml6-module-qtquick-layouts qml6-module-qtqml-workerscript qml6-module-qtquick-window qml6-module-qtquick
Qt 5: qtbase5-dev qt5-qmake qtdeclarative5-dev qtquickcontrols2-5-dev qml-module-qtquick-controls2 qml-module-qtquick-layouts qml-module-qtquick-window2 qml-module-qtquick2 qtwayland5
Debian/Ubuntu:
RedHat/Fedora (repositório RPM Fusion necessário):
Construir o renderizador Vulkan requer uma versão libplacebo-dev
/ libplacebo-devel
de pelo menos v7.349.0 e FFmpeg 6.1 ou posterior.
Steam Link SDK clonado em seu sistema de compilação
Variável de ambiente STEAMLINK_SDK_PATH definida para o caminho do SDK do Steam Link
Instale o Qt SDK mais recente (e opcionalmente, o Qt Creator IDE) em https://www.qt.io/download
Você pode instalar o Qt via Homebrew no macOS, mas precisará usar brew install qt --with-debug
para poder criar compilações de depuração do Moonlight.
Você também pode usar o gerenciador de pacotes da sua distribuição Linux para o Qt SDK, desde que os pacotes sejam Qt 5.9 ou posterior.
Esta etapa não é necessária para construir no Steam Link, porque o SDK do Steam Link inclui o Qt 5.14.
Execute git submodule update --init --recursive
de moonlight-qt/
Abra o projeto no Qt Creator ou construa a partir do qmake na linha de comando.
Esta compilação não terá modo de janela, links Discord/Ajuda e outros recursos que não fazem sentido em um dispositivo incorporado.
Para plataformas com baixo desempenho de GPU, adicione "CONFIG+=gpuslow"
para preferir a renderização KMSDRM direta em vez de renderizadores GL/Vulkan. A renderização KMSDRM direta pode usar conversão YUV/RGB dedicada e hardware de escalonamento em vez de shaders de GPU mais lentos para essas operações.
Para compilações do Windows, use scriptsbuild-arch.bat
e scriptsgenerate-bundle.bat
. Execute esses scripts a partir da raiz do repositório em um prompt de comando do Qt. Certifique-se de que o diretório binário 7-Zip esteja em seu %PATH%
.
Para compilações do macOS, use scripts/generate-dmg.sh
. Execute este script a partir da raiz do repositório e certifique-se de que a pasta bin
do Qt esteja em seu $PATH
.
Para compilações do Steam Link, execute scripts/build-steamlink-app.sh
na raiz do repositório.
Para construir um binário para uso em máquinas que não sejam de desenvolvimento, use os scripts na pasta scripts
.
Para construir a partir da linha de comando para uso em desenvolvimento no macOS ou Linux, execute qmake6 moonlight-qt.pro
e make debug
ou make release
Para criar uma compilação incorporada para um dispositivo de uso único, use qmake6 "CONFIG+=embedded" moonlight-qt.pro
e construa normalmente.
Bifurque-nos
Escreva o código
Enviar solicitações pull
Confira nosso site para links e informações do projeto.