月光:让您从PC流式传输游戏到任何运行Moonlight的设备
月光让您从PC流式传输游戏到任何运行Moonlight的设备。您的键盘、鼠标和控制器输入会被发送回主机,因此您可以远程玩游戏,就好像您坐在它面前一样。功能 隔离流式会话:每个流在自己的合成器中运行,与桌面环境完全分离。您在流式传输时,主机PC仍然可以用于其他操作。 无需显示器:可在无头服务器上使用——无HDMI虚拟插头需要。 硬件视频编码:使用GPU进行H.264、H.265和AV1编码。⚠️ AV1警告:AV1编码是实验性的,并且在NVIDIA GPU上存在问题,导致帧大小随着时间的推移而增加(请参见问题)。这一问题应在驱动程序版本595.44.3.0中修复。在此之前,请使用H.264或H.265。 HDR支持:支持游戏的真实10位HDR流式传输。 完全输入支持:鼠标、键盘和游戏手柄(包括运动、触控板和触觉反馈)。 音频流式传输:立体声和环绕声(5.1/7.1)低延迟Opus编码。 要求:仅限Linux。已在Arch Linux上测试,但据报道在其他Linux发行版上也能正常工作。 systemd。用于启动和管理应用程序进程的必要组件。几乎所有现代Linux发行版都默认包含它。 一个支持Vulkan视频编码的GPU:NVIDIA RTX、AMD RDNA2+或Intel Arc。 Moonlight v6.0.0或更高版本;不保证与旧版本或非官方移植版的兼容性。 安装 Arch:最简单的方法是通过AUR安装:yay -S moonshine。 要在您的用户帐户中运行月光:启用用户持久会话:sudo loginctl enable-linger $USER。这允许月光在用户未登录时在用户会话中运行应用程序。如果您的用户在您想要流式传输时总是登录的,您可以跳过此步骤。 启用服务以在启动时启动并立即运行:sudo systemctl enable --now moonshine@$USER。 源代码:以下依赖项是构建所需的:sudo pacman -S \ clang \ cmake \ gcc-libs \ glibc \ libc++ \ libevdev \ libpulse \ libxkbcommon \ make \ mesa \ opus \ pkg-config \ rust \ shaderc \ vulkan-headers \ wayland。然后编译并运行:cargo run --release -- /path/to/config.toml。 配置:如果您提供的路径不存在,则会自动创建一个配置文件。当使用AUR包时,默认为$XDG_CONFIG_HOME/moonshine/config.toml。 与客户端配对:当您第一次使用Moonlight连接时,会显示一个PIN。主机上将会出现一个通知,您可以点击它打开配对页面,或者您可以手动访问http://localhost:47989/pin。您还可以通过命令行进行配对:curl -X POST "http://localhost:47989/submit-pin" -d "uniqueid=0123456789ABCDEF&pin=<PIN>"。 添加应用程序:每个应用程序在自己的隔离流式会话中运行。像这样将它们添加到config.toml中:[[application]] title = "Steam" boxart = "/path/to/steam.png" # 可选 command = ["/usr/bin/steam", "steam://open/bigpicture"] title:在Moonlight中显示的名称。 boxart(可选):封面图像的路径。 command:要运行的命令。第一个条目是可执行文件,其余是参数。 pre_command(可选):在启动应用程序之前运行的命令。每个条目都是一个单独的命令,按顺序执行。同步运行——会话会等待所有操作结束。 post_command(可选):流式会话结束后运行的命令。每个条目都是一个单独的命令,按顺序执行。同步运行——服务器会等待所有操作结束。 示例:[[application]] title = "Steam" command = ["/usr/bin/steam", "steam://open/bigpicture"] pre_command = [["/usr/bin/systemctl", "stop", "conflicting.service"], ["/usr/bin/nvidia-smi", "pstate", "50"]] post_command = [["/usr/bin/nvidia-smi", "pstate", "performance"]] 应用程序扫描器:扫描器自动检测已安装的应用程序,因此您不必手动添加它们。 Steam扫描器——查找所有已安装的Steam游戏:[[application_scanner]] type = "steam" library = "$HOME/.local/share/Steam" command = ["/usr/bin/steam", "-bigpicture", "steam://rungameid/{game_id}"] 桌面扫描器——从.desktop文件中查找应用程序:[[application_scanner]] type = "desktop" directories = ["$HOME/.local/share/applications", "/usr/share/applications"] include_terminal = false resolve_icons = true 常见问题 这与Sunshine有什么比较?Sunshine支持更多平台,并拥有更多功能。月光仅限于Linux。月光在各个流式会话中运行在自己的隔离环境中,与桌面分开。这意味着您在流式传输时可以继续使用主机PC,并且它在没有活跃桌面会话的情况下也能正常工作。 安全性:月光不针对公共网络使用而设计。底层的GameStream协议有一些限制,这意味着流量在应用程序级别并不完全加密。如果您需要通过互联网进行流式传输,
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡