ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Sunshine 自托管游戏串流入门:把主机画面串到局域网里的另一块屏

Sunshine 自托管游戏串流入门:把主机画面串到局域网里的另一块屏 Sunshine 自托管游戏串流入门把主机画面串到局域网里的另一块屏【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/SunshineSunshine 游戏串流是这样工作的主机端采集你的屏幕、用显卡编码把画面送到同一局域网里 Moonlight 客户端所在的另一块屏上。读完这篇你能独立完成安装、设备配对并串出第一个游戏。先看终局成功长什么样装完之后你应该能在另一台设备上看到这样的体验打开 Moonlight主机列表里出现你的电脑点一下Desktop或某个游戏两三秒内画面亮起声音跟着画面走鼠标、键盘、手柄的操作延迟低到感觉不到中间隔了根网线。判断真跑通了有三个标志Moonlight 的设备列表里能看到主机名点开后几秒内出现主机桌面或游戏画面不是黑屏转圈操作有响应声音和画面对得上。只要这三条都满足剩下的都是参数优化不是功能问题。三分钟适配自检动手之前花三分钟对照这张表。任何一行不达标都不阻塞安装只是影响体验。检查项达标标准不达标怎么办显卡与编码器NVIDIA、Intel、AMD 显卡均可各有对应硬编通路CPU 软编码兜底编码器参数留空让系统自动挑不要手动指定主机系统Windows、Linux、FreeBSD 正式支持macOS 为实验性macOS 暂不支持手柄模拟介意的话等后续版本网络主机和客户端在同一局域网最好都走有线跨网络串流要把upnp设为enabled默认disabled做端口转发客户端设备手机、平板、盒子、电视、PC 任意能装 Moonlight 的终端手边没有合适设备时先用任意一台能装 Moonlight 的旧设备凑合配对一口气完成第一次串流整个过程分三道门按顺序过每道门都有明确的可验证标准。第一道门装好且服务在跑。Windows 从 Release 页下载Sunshine-Windows-AMD64-installer.msi双击安装安装器会自己写好防火墙规则并把 Sunshine 注册为服务、开机自启。Linux 按发行版用 deb、copr 或 pacman 安装如果走 Flatpak装完补跑一次输入依赖安装flatpak run --commandadditional-install.sh dev.lizardbyte.app.SunshinemacOS 把 DMG 里的Sunshine.app拖进 Applications。Linux 装完后手动拉起服务systemctl --user start app-dev.lizardbyte.app.Sunshine通过标准systemctl --user status app-dev.lizardbyte.app.Sunshine显示正在运行Windows 上则看系统托盘里 Sunshine 图标在位。第二道门Web UI 与管理员账号。浏览器访问https://localhost:47990。页面提示不安全是正常的自签名证书导致的忽略即可。首次进入会让你设置管理员用户名和密码这个密码后面配对全靠它记好。通过标准登录成功能看到欢迎页。第三道门Moonlight 自动发现与 PIN 配对。客户端设备打开 Moonlight它会自动发现局域网里的 Sunshine。首次连接时客户端弹出一个四位 PIN回到 Web UI 顶部的 PIN 页面输入它并给设备起个名字。看到成功提示即完成。通过标准Moonlight 里能列出主机应用列表中出现默认的 Desktop。此时你在 Moonlight 里点一下 Desktop画面就应该亮起来——第一帧串流出来了。画面出来之后加入第一个应用Desktop 是内置应用串的是整个桌面不启动任何程序。想串一个真实游戏进 Applications 页面新建一条应用路径可执行文件位置工作目录程序运行所在的目录启动参数启动命令的附加参数路径里支持$(HOME)这类环境变量。三条最容易踩的坑像steam这种会秒退的启动器进程启动方式必须选detached用普通命令拉起来会立刻断流Flatpak 版 Sunshine 里跑的应用命令要加flatpak-spawn --host前缀否则沙箱里找不到宿主程序同一时间只有一条串流新串流启动时会结束上一个正在跑的应用。你最可能问的三个问题编码器怎么选encoder默认留空系统自动选第一个可用的。想锁死通路时填nvenc、quicksync、amdvce、vaapi、vulkan或software。拿不准就留空——手动指定更多是排障手段不是日常操作。顺带一提nvenc_preset默认11 最快、7 压缩率最高只有解码端顶不住时再往大调平时提高码率更划算。max_bitrate是干嘛的默认0意思是码率完全听 Moonlight 端请求的。只有想给主机端带宽封顶时才改比如max_bitrate 5000单位 Kbps。配置页顶部有搜索框几百个设置项输关键词就能直达不用翻列表。串流卡了怎么办先怀疑网络而不是 Sunshine。用 iPerf3 做一次 60 秒 UDP 反向体检主机端起服务客户端侧测速。iperf3 -siperf3 -c {主机IP} -t 60 -u -R -b 50M理想结果是丢包低于 5%、抖动低于 1ms。两头速度不匹配比如 2.5G 网卡配 WiFi 客户端是典型诱因降一档网卡速率或让主机改走有线常常立竿见影。卡住了自救速查症状先查什么还不行怎么办https://localhost:47990打不开防火墙是否拦了 47990 端口临时关防火墙验证一次通了就回头放行该端口客户端发现不了主机两台设备是否同网段服务是否在跑systemctl --user status app-dev.lizardbyte.app.Sunshine查状态然后重启服务和路由器串流卡顿、掉帧网络质量照上面的 iPerf3 体检网卡降一档速率主机改有线忘了 Web UI 密码不用重装直接重置凭据sunshine --creds {new-username} {new-password}都试过还搞不定翻日志Web UI 的 Troubleshooting 页内置日志查看和告警提示。日志文件位置——Windows 在%ProgramFiles%\Sunshine\config\sunshine.logLinux / macOS / FreeBSD 在~/.config/sunshine/sunshine.logDocker 部署用docker logs sunshine。今晚就能做的一件事拿第二台设备配上 Moonlight 完成一次配对顺手在应用列表里加一条真实游戏完整走一遍配对 → 启动 → 串流 → 退出。这条链路走通后面调码率、换编码器都是小修小补。延伸阅读完整参数表docs/configuration.md疑难杂症索引docs/troubleshooting.md各平台采集与编码实现src/platform/【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表