I.前言
关于网络串流用于游戏工作这方面文章,网络上已经有较多成品,不过很多都言之不详,又或是内容可能有些过时之类的。这里我总结出自行搭建的经验给大家参考。本教程完全基于Windows环境,其他环境请自行摸索。
为什么不使用Parsec,可以到文末杂谈中查看咱的闲聊o((>ω< ))o
II.需求
文中提到的所有软件均可在此处下载。
必须
- [硬件]宿主机,最低系统要求:Windows 10 21H2
- [软件]SunShine(Github Releases)
串流服务器 - [软件]Moonlight
串流客户端
官方PC版:Github Releases
移动端:推荐使用修改版TZJ Github Releases - 较好的网络环境,最好有IPv6或公网IP
- [软件]Tailscale(官网)
虚拟组网软件+点对点文件传输 - [软件]Parsec-vdd v0.45 (官网下载)
虚拟显示器 - [软件]vddswitcher (Github Releases)
虚拟显示器分辨率切换工具
可选
- [软件]AudioRelay (官网)
麦克风或其他音频穿透 - [软件]LocalSend (Github)
跨平台局域网文件,文本,剪切板传输工具 - [软件]SyncClipboard (Github)
自动检测剪切板,文件同步
其他 - 米系游戏启动器
- [软件]咪咕 - 星铁移动UI (Github Issue)
- [软件]原神fps-unlock by 34736384 (Github Releases)
用于启动移动端UI
移动端为何选择TZJ版?
官方移动版缺乏原生触控输入,较为方便的分辨率和码率修改功能。修改版本配合Sunshine使用,体验非常好。所有修改内容详见该项目主页(Github)
阿西西版功能更多,为什么不用阿西西版?
详见:"阿西西的日常" : 游戏串流界小偷、假大佬、毒瘤up主
III.网络环境
使用网络串流,尤其是游戏串流,一般不推荐中转模式(较高的延迟和不稳定的串流体验)。我的建议是,在任何使用环境下,能使用直连模式就不要使用中转。
本文使用Tailscale进行打洞组网而不是暴露端口方案,以下是配置好网络环境的方式。
1.桥接模式
光猫桥接模式可以去除光猫与路由器之间一层NAT。
无论是否有公网IP,桥接模式都可以通过联系运营商直接修改。
这里需要注意,修改桥接模式后需要自行在路由器侧配置宽带账号密码才可上网。在修改之前,务必知道自己的宽带账号密码。如果不了解,可以拨打对应运营商客服电话进行获取。
重置宽带密码可能需要如下材料:
- 号主姓名与身份证
- 宽带安装地址
- (部分运营商与地区)号主人脸识别/视频客服查询
建议使用宽带对应的手机号主卡拨打客服电话以避免不必要的身份验证(非必须)
2.开启UPnP
在路由器端找到UPnP或者端口自动转发相关设置,开关直接开启即可。
3.进一步降低打洞难度
一般情况下,满足以下任意一者即可。
IPv6网络环境
由于IPv4 IP地址相对饱和,国内运营商一般默认不会给用户公网IP,电信运营商部分地区可以直接申请获得,而联通相对麻烦,移动基本不太可能获得。
而IPv6可以说是取之不尽,用之不竭的,且开启较为轻松,一般开启即是公网。一般情况下,无论是桥接模式还是光猫路由模式,家庭宽带都可以在路由器侧直接开启IPv6。以小米路由器为例,在IPv6设置中开启IPv6,模式选择Native即可自动获取。
该方案需要连接端与被连接端均拥有IPv6网络环境。
注:国内运营商手机使用蜂窝移动网络时,IPv6自动开启。
IPv4公网IP获取
鉴于前阵子 工信厅联通信函〔2024〕263号 推进网络去NAT的专项工作,大意可能是推进IPv6普及,有可能进一步提高IPv4公网IP获取难度,本方案仅供参考,当前成功概率不高。
若使用中国电信运营商宽带,截至目前部分地区申请IPv4仍然较为容易,打一通电话要求提供公网IP就可以解决了。移动基本不可能,联通需要尝试。
4.为宿主机分配静态IP地址
为了避免DHCP租约到期更新宿主机IP地址导致需要重新在Moonlight中手动指定,我们可以在路由器中找到类似DHCP静态分配 字样的设置,将宿主机设为静态即可。本文以爱快iKuai路由系统为例,在此处设为静态即可。
IV.配置Tailscale
对于Android端,下载好Tailscale APP,登录账号后,直接点Connect即可使用。
以下内容摘自Ghost_Chu's Blog - Tailscale 安利指南 ,仅摘取必要部分,几乎未作修改。对于对Tailscale应用本身以及各项功能的详细介绍,还请访问原作者的博客查看。
感谢原作者,请大家多多看看这位大佬的博客哦qwq
获取一个 Tailscale 账号
Tailscale 账号是您的 Tailscale 之旅的开始。
前往 Tailscale 官网,打开登录页,并选择一个方式登录,登录时就会自动完成注册。
注意!
一旦您选择了一种登录方式,就无法再次改变了!
既不能更改为其它登录方式,也不能解绑,也无法添加更多登录方式。
考虑到你需要在其它设备上通过相同方式登录鉴权,最好选一个没有访问困难的登录方式。
添加你的第一台设备到 Tailscale 网络
在机器上安装 Tailscale 客户端后,即可连接到 Tailscale 网络。本文使用 Windows 版本的客户端作为示例。
在安装好 Tailscale 并启动后,你会收到一个通知提醒,要求你登录 Tailscale 账号。
在点击并在弹出的网页中完成登录后,会弹出这样一个提示,警告我们虽然设备已经登陆了,但还没有连接到网络,必须管理员来手动批准一下。
点击 "Open in admin console" 打开控制台,找到需要批准的设备,点击菜单中的批准即可连接。
如果这是你的长期使用的设备,还可以选择 “Disable key expiry” 来禁用密钥过期,这样就会保持连接和登录,否则在一段时间后,设备会自动断开连接,并需要重新批准。
批准后,系统弹出通知,此时你的 Tailscale 就成功连接到你的网络中了。你也能够访问其它同 Tailscale 网络中的设备了。在其它设备上如法炮制,即可添加和连接更多设备。
如果你将 Tailscale 安装在 Windows 上,且希望作为服务器使用,请启用 Preferences 中的 Run unattended 选项,以服务形式运行。否则重启后需要登录到桌面 Tailscale 才会起效,如果你恰好除了 TS 外其他方式都连不上这台机器,那么恭喜你这台机器就会失联了。
Tailscale Subnets - 共享局域网的其它设备
Tailscale Subnets 能够让指定客户端分享它所连接的局域网(LAN)的其它设备。这样就算其它设备没有 / 无法安装 Tailscale,您也可以访问它们。
barbatos 设备连接到了一个局域网(LAN),路由器设置其所在网络 CIDR 表示为 192.168.0.0/24,对应也就是 192.168.0.0 - 192.168.0.255 这一段,我可以通过 192.168.0.1 访问到路由器后台。CIDR 可使用 CIDR 计算器算出。
通常家用路由器的 CIDR 都是 192.168.x.0/24。例如设备 IP 是 192.168.1.3,那么通常填写 192.168.1.0/24 即可。
跟随官方教程,在 barbatos 设备上运行命令:
tailscale up --advertise-routes=192.168.0.0/24
成功后,打开 Machines 控制台,找到 barbatos 设备菜单的 “Edit route settings……” 选项,可以看到我们刚刚声明的网段出现在了这里:
打勾选中保存即可访问对应网段的资源了。如果仍然无法访问,则需要在客户端的 Preferences 中打开 “Use Tailscale subnets” 选项。
分享的网络的网段不能重复,如果重复,请选择一个网络并在路由器上的 DHCP 服务中将其更改到其它网段。
Taildrop - 点对点文件传送
在需要发送的文件上右键,选择 “Send with Tailscale……”
弹出 Send with Tailscale 窗口,在右边点击选择发送到的设备。
文件会立刻开始发送,并显示文件发送进度。
发送成功后,文件会保存在目标机器的 “下载” 文件夹中。
V.配置Sunshine
1.下载安装
在Github Releases上下载对应系统版本的Sunshine,安装过程一般一路下一步即可。安装好后,任务栏会出现Sunshine的图标,如图所示:
点击这个图标(左键右键应该都可以),点Open Sunshine
,随后进入Web界面。默认的Web管理地址是:localhost:47990
。由于我们没有为Sunshine管理地址配置证书,会出现HTTPS报错,不是加密连接。不用管,直接或在更多选项中点继续访问即可。
在第一个界面,需要我们设置Sunshine用户名和密码,此处设置一个可以记住的账号(Username)密码(Password)即可,后续登录需要使用。
2.使用虚拟显示器
成功登入Sunshine后台之后,设置一般不需要改动,单使用一个PIN码界面即可实现链接电脑并使用。不过,由于宿主机显示器分辨率不一定会与连接端完全匹配,连接端显示器刷新率等各项参数也都不同,使用虚拟显示器可以大大改善串流体验。
本教程使用Parsec VDD配置虚拟显示器,利用 Github - vddswitcher 实现Sunshine对虚拟显示器分辨率的自动切换。
其他虚拟显示器兼容情况见下表(来自Github - parsec-vdd):
项目 | Iddcx 版本 | 驱动签名 | 游戏 | HDR | 硬件鼠标指针 | 可调整 | 手柄支持 |
---|---|---|---|---|---|---|---|
usbmmidd_v2 | ✅ | ❌ | ❌ | ❌ | |||
IddSampleDriver | 1.2 | ❌ | ❌ | ❌ | ❌ | ||
RustDeskIddDriver | 1.2 | ❌ | ❌ | ❌ | ❌ | ||
Virtual-Display-Driver (HDR) | 1.10 | ❌ | ✅ | ❌ | |||
virtual-display-rs | 1.5 | ❌ | ❌ | #81 | ✅ | ✅ | |
parsec-vdd | 1.5 | ✅ | ✅ | ❌ | ✅ | 🆗 | ✅ |
✅ - 完整支持, 🆗 - 有限支持
驱动签名 意味着这个虚拟显示器驱动有一个有效的数字签名。硬件鼠标指针 意味着有硬件鼠标指针支持,缺少该支持可能会在某些远程桌面应用中有双重鼠标指针。可调整 意味着具有自定义显示模式的功能。前往 MSDN IddCx versions 可以查看Iddcx支持的最低Windows系统版本。
Parsec VDD安装直接一路下一步即可。vddswitcher使用方式如下:
- 将Github Release中下载到的zip解压,将其中两个文件放到一个非中文路径下。
- 定位到如下界面,若最上方选项非简体中文,可更改为简体中文。
- 在下方命令准备工作中添加一个。打开时执行命令:
cmd /C "D:\GameStreaming\vddswitcherd.exe" -x %SUNSHINE_CLIENT_WIDTH% -y %SUNSHINE_CLIENT_HEIGHT% -r %SUNSHINE_CLIENT_FPS%
和 退出应用时执行命令:cmd /C "D:\GameStreaming\vddswitcher.exe"
。其中请将D:\GameStreaming\
改为你存放vddswitcher.exe和vddswitcherd.exe的文件目录。 以上两个命令可以实现连接时自动创建虚拟显示器并切换分辨率。
有关Parsec VDD虚拟显示器的分辨率,刷新率支持情况,详见文末表格。如果遇到不支持的分辨率,可以看附录自定义分辨率相关教程。
VI.配置Moonlight
注意:使用之前不要忘记先在连接端打开Tailscale!
Windows版本
只修改如下两个设置项即可很好使用了
其中,分辨率改为原生,即可全屏覆盖。捕获系统快捷键可以避免Win键等按键反馈到宿主机。注意,此时退出需要用Ctrl+Shift+Alt+Q
按键退出串流。
添加宿主机,可以使用右上角的添加电脑按钮,IP为上文II中静态指定的IP。
Android版本
配置方式基本相同,不再带图,使用文字描述。
打开Moonlight APP后,左上角"+"号打开,输入静态指定的IP即可链接宿主机。
右上角齿轮处打开,可以对串流进行各项配置。设置选项可以根据使用需求,结合下方提示按需开启。
分辨率/帧率/码率问题
以下任何一个设置,数值越高,对网络的要求均会变高。想要获得流畅的串流体验,需要连接端,路由器,宿主机的网络链接质量好。无论是有线还是无线串流,都建议使用更高性能的路由器。对于无线,尽量选择5 GHz或者以上的频段,WiFi 5/6/7等更高的WiFi版本,以获得更好体验。
对于视频分辨率
使用原生分辨率可以获得屏幕全覆盖的优良体验,在低延迟情况下可以让串流接近实机运行,建议任何情况下都采用原生分辨率;
在安卓端,原生分辨率如有多个选项,对应手机设置中屏幕分辨率的多个选项。选择更低的一者并适当降低码率,可以在使用蜂窝移动数据时节省流量开销,或在较差网络环境中串流时改善串流体验。
特别提醒:多数全面屏安卓手机分辨率各异,Parsec VDD支持的分辨率可能无法满足特定型号手机原生分辨率情况。这可以通过文末附录中,自定义分辨率相关内容,添加手机的原生分辨率与刷新率解决。
对于帧率
选择较高的帧率可以在网络连接状况合适的情况下获得更流畅的画面体验。
对于码率
高码率可以在动态场景下画面更清晰(不糊),而低码率则能节省网络开销,增强较差连接环境的串流体验。不过相应的,画面也会更糊。
码率选择的小提示
目前我国三大运营商对家庭宽带提供的上行带宽基本上都是比较小水管的级别。
若不考虑流量开销,对于中国电信家庭宽带,在外串流时,码率可以控制在30Mbps-45Mbps左右。若你的网络环境上行带宽高,可以选择更高的码率获得更好体验。
若考虑流量开销,仅使用串流进行远程办公的话,可以将码率控制在10Mbps以下,基本上4Mbps就可以胜任办公需求(当然,牺牲了动态画面的画质。码字表格这些一般不会很模糊)。
这里提一嘴,这篇文章我也是完全通过Moonlight串流完成,使用蜂窝移动网络,限制码率4Mbps,中间有段时间开到10Mbps利用Typora和Typecho网页编辑器编辑。该使用场景下,使用时间大约4小时30分钟,消耗流量约2.5GB。
串流设备为Surface Pro 5,从满电到串流结束大约消耗78%电量,全程使用Windows 10 节电模式。
在局域网串流,如果百兆以上局域网(不包括百兆),在各终端性能合适的情况下,可以尽量将码率调高,从而提升画质。
VII.其他:米系游戏原生触控操作
在官方或者移动修改版Moonlight原生支持触控输入的情况下,我们可以通过一些手段,让《原神》和《崩坏:星穹铁道》由PC端UI改为移动端UI启动。具体方式如下:
《原神》
对于原神,我们借助34736384大佬的genshin-fps-unlock应用(Github Releases)进行帧率解锁并启用移动端UI。
简单阐述一下软件使用方式。
第一次启动如果未自动查找到游戏路径,软件会让你手动定位游戏文件。找到启动器目录,在那个目录中找到Genshin Impact Game
文件夹。国服选YuanShen.exe
,外服选GenshinImpact.exe
即可。
对于Moonlight串流,最好勾选Start Game Automatically
。
软件设置好后,在Sunshine设置中,打开上方"应用程序"选项卡,点"添加新应用",按如下进行配置:
其中,箭头所指部分,将路径改为存放unlockfps_nc.exe
的路径即可。
《崩坏:星穹铁道》
《崩坏:星穹铁道》采用咪咕快游的触摸UI解决方案。由于该方案存在Bug,具体实现方式建议自行研究。触屏启动器地址:Github Issue
简单提一嘴,工具中的sr_config.json注释如下:
{
"game_path": "C:\\Program Files\\Star Rail\\Game\\StarRail.exe", # 游戏路径,需要使用两个斜杠代替一个斜杠
"enable_login_token": false, # 是否不保存登录信息
"enable_mobile_platform": true, # 启用移动UI
"enable_xinput": false # 启用手柄(建议直接用PC端原生启动器配合Moonlight手柄穿透使用)
}
《崩坏3》
《崩坏3》PC版仅是对移动端简单移植,可以直接触控,不需要修改。
《绝区零》
暂无解决方案。
VIII.部分功能缺失的补全方案
剪切板/文本/文件传输同步
剪切板,文本和文字传输功能,均可使用Tailscale自带的点对点传输。但Tailscale传输功能相对简单,传输文件较为便利,对于文本的传输尚有欠缺。下面推荐一些开源的工具,连接均可在文章开头找到。
- 首选推荐:LocalSend。LocalSend具有独立界面进行文件传输,可以传输文本,文件,剪切板内容,体验统一且多平台(Android,iOS,Windows等)支持完备,UI简洁。同时,它具备扫描各个局域网内其他运行LocalSend设备的功能(Tailscale的虚拟局域网也可以),下面是程序界面:
- 剪切板同步:SyncClipboard。该程序可实现剪切板监控,自动上传。需要一个主机作为同步服务器,可以在Docker中部署服务器,也可以使用主程序直接作为服务器(客户端与服务器可以共存,下载客户端即可开启服务器)。从而建立起一个同步网络。所有客户端只需连接单独一个服务器,即可实现所有客户端的剪切板同步。
被连接端IP与Moonlight串流IP一致,指定为宿主机内网IP或Tailscale的虚拟IP即可。
麦克风穿透
可以使用"AudioRelay"(官网地址)软件进行音频串流。免费版默认支持一个设备点对点,已经够用了。
该软件支持不同设备相互串流,包括但不限于手机作为麦克风通过网络传输到电脑等功能。
Windows版安装时,一路下一步不需要改动任何设置即可。
此处我们借助Tailscale虚拟组网。
在宿主机和连接端均开启Tailscale的情况下,在宿主机开启"播放器"功能,在连接端开启"服务器"功能,然后在宿主机上使用连接端在Tailscale上的虚拟IP(可通过Tailscale 控制台对应设备的ADDRESSES
栏目查看。),用"使用IP地址连接"功能进行连接,并在右侧菜单处使用麦克风模式。
连接成功后,在语音软件或游戏中选择AudioRelay的虚拟麦克风Virtual Mic for AudioRelay
就行啦。
IX.结尾&杂谈
至此,一套舒适的远程串流方案就搭建完啦,有什么问题可以在评论下方留言,暑假期间有空,大家的留言可以帮助我更好地修缮这篇文章owo
杂谈1:为啥不用Parsec呀
Parsec也是一个非常好用的远程串流软件,软件本身的功能丰富,使用方便,也有内置的打洞工具。他们做的虚拟显示器驱动也很优秀,本教程用的就是Parsec的虚拟显示器驱动,总的来说,Parsec对于桌面端的连接端也推荐使用的哦qwq。
我之前也有写过与Parsec相关的简易教程,不过现在用Moonlight+Sunshine,原因如下:
- 触控支持:Parsec本身对触控操作的支持基本没有。我的远程串流,基本上就是在Surface上玩玩游戏,外出办公。使用Parsec,由于缺乏原生触控输入,原来在Surface上使用的触屏手势基本用不了,触控板也比较麻烦。在安卓端,我用的是OPPO平板,在游戏助手中屏蔽所有安卓系统手势,使用阿西西修改的Moonlight,原生触控输入,局域网中,几乎可以把这个安卓平板当作小Surface来用,非常酷。而Parsec...根本用不了属于是。
- 画质:Moonlight客户端允许自定义更高的码率,画质的配置也更丰富,在局域网下,可以获得更好的画质体验。
- Parsec在中国移动(CMCC)网络环境下有可能会被封锁,而Tailscale暂时没遇到类似情况。
杂谈2:还没想好(之前要写,但是过一会儿忘了TwT)
X.附录 - 虚拟显示器
1.Parsec VDD原生支持的分辨率
如果你的显示分辨率不在下面列表的支持范围之内,使用下方附录2的自定义分辨率即可。
分辨率 | 常用名称 | 长宽比 | 刷新率 (Hz) |
---|---|---|---|
4096 x 2160 | DCI 4K | 1.90:1 (256:135) | 24/30/60/144/240 |
3840 x 2160 | 4K UHD | 16:9 | 24/30/60/144/240 |
3840 x 1600 | UltraWide | 24:10 | 24/30/60/144/240 |
3840 x 1080 | UltraWide | 32:9 (2x 16:9 FHD) | 24/30/60/144/240 |
3440 x 1440 | 21.5:9 (43:18) | 24/30/60/144/240 | |
3240 x 2160 | 3:2 | 60 | |
3200 x 1800 | 3K | 16:9 | 24/30/60/144/240 |
3000 x 2000 | 3:2 | 60 | |
2880 x 1800 | 2.8K | 16:10 | 60 |
2880 x 1620 | 2.8K | 16:9 | 24/30/60/144/240 |
2736 x 1824 | 60 | ||
2560 x 1600 | 2K | 16:10 | 24/30/60/144/240 |
2560 x 1440 | 2K | 16:9 | 24/30/60/144/240 |
2560 x 1080 | UltraWide | 21:9 | 24/30/60/144/240 |
2496 x 1664 | 60 | ||
2256 x 1504 | 60 | ||
2048 x 1152 | 60/144/240 | ||
1920 x 1200 | FHD | 16:10 | 60/144/240 |
1920 x 1080 | FHD | 16:9 | 24/30/60/144/240 |
1800 x 1200 | FHD | 3:2 | 60 |
1680 x 1050 | HD+ | 16:10 | 60/144/240 |
1600 x 1200 | HD+ | 4:3 | 24/30/60/144/240 |
1600 x 900 | HD+ | 16:9 | 60/144/240 |
1440 x 900 | HD | 16:10 | 60/144/240 |
1366 x 768 | 60/144/240 | ||
1280 x 800 | HD | 16:10 | 60/144/240 |
1280 x 720 | HD | 16:9 | 60/144/240 |
2.Parsec VDD自定义分辨率教程
以下内容照搬并翻译自Parsec官方文档。
从 0.37 版本的Parsec VDD开始,你可以通过Windows系统的注册表编辑器为虚拟显示器驱动添加最多5个自定义分辨率。每个分辨率定义必须添加到注册表中下面这个路径:
计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Parsec\vdd
每个自定义分辨率应当在他们自己的文件夹中(上面这个路径下创建文件夹),这些文件夹的名字要按如图方式从0到4依次添加(不得超过4,如果只需要添加一个自定义分辨率,只创建0就行,以此类推)。如果这些目录(项)和值原本不在Parsec\vdd
中,则需要自行创建。方法是:在注册表编辑器左侧树形栏中右键上级目录,移动光标到“新建”,然后选择“项”或者“DWORD (32位)值”
每个自定义分辨率的目录下必须包含三个DWORD值:width
(宽), height
(高)和 hz
(刷新率) 实例如下:
由于DWORD值时十六进制的,在添加DWORD值时,选择旁边的“十进制”就可以直接输入十进制数(例如1920,1080这些的)
修改之后,重启电脑,就可以在Windows显示设置中看到新分辨率啦。最高支持的分辨率是4096 x 2160 240Hz
eowllyaasu
真棒!
踏雪无痕
非常感谢大佬的教程!我看大佬使用的是非服务器端口的形式,而是VPN方式。
文章中是在服务端开的Tailscale,现在的情况是,我的服务端在校园网的环境下,有层层NAT,但是我家里有一台服务器有DDNS的动态公网IP,想问大佬,Tailscale能不能实现服务端-服务器-客户端的三端VPN呢?这样我是不是可以通过服务器的转发远控了?(但是看起来好像tailescale是P2P的)
邮文
@踏雪无痕 : 是的tailscale是点对点的,只有在打洞失败不能建立点对点连接时会使用tailscale官方提供的derp服务器进行中转,也就是你说的服务器-服务器-客户端(在tailscale里应该说是客户端-服务器-客户端,我猜你用服务端的表述意思是sunshine运行在这个客户端上)方式。因此自建derp服务器替代官方derp服务器可以实现你想要的需求。不过一般情况下,只要服务端和客户端任意一端的nat状态良好就基本可以成功打洞。这种情况下不行的话可以试试重连重启tailscale。 *我的笔记本也在校园网, 层层nat很糟糕,但是我家里nat条件很好,公网IP,路由器拨号,内网是nat4确保安全但是开启了upnp自动端口映射,可以在家直连校园内的主机。我的校园网用的是校园卡捆绑的电信宽带,我的手机卡也是电信,用流量也可以直连校园网内的主机。猜测同运营商会比不同运营商之间打洞更容易些。(毕竟之前用parsec就遇到移动连电信要手动映射端口但是电信连电信就可以直接用upnp,应该是运营商互联问题)
踏雪无痕
@踏雪无痕 : 试了下,确实可以,但是校园网的NAT环境太烂了,根本没法P2P,在考虑尝试一下自建Derper
Ghost
现在发现用一种叫apollo的改版moonlight可以省去很多虚拟桌面以及自适应分辨率的步骤,另外针对米家游戏使用移动端ui启动,逛到个CollapseLauncher已经实现了
邮文
@Ghost : 跟踪到CollapseLauncher的issue:https://github.com/CollapseLauncher/Collapse/issues/466 | 目前绝区零游戏的触控操作仍在github action构建文件中测试阶段。等待更新稳定后,我会一并更新,感谢大佬反馈啦
邮文
@Ghost : 好滴,记下啦,晚上回去看看更新下文章,感谢反馈~
Str
我自己装了你提供的parsec-vdd发现没有GUI出现,就去github上找了一下,https://github.com/nomi-san/parsec-vdd
这个GUI自带Custom选项,输入了之后就有对应的切换选项,我就是用这个切换的,
我看有GUI就没有再用vddswitcher.exe了,以为要命令行才能用
现在看来应该可以用计划任务开机启动bat,达到类似的自动配置效果,
唯一的问题就是shield的连接方式有点迷TAT,连的时候用显示器标识看的是1号显示器,但是改了虚拟(2号)显示器的分辨率又会有体现,不知道它是怎么判定的,有可能跟主显示器有关?
邮文
@Str : 是的,我提供的parsec-vdd是Parsec官方的驱动程序,而我在评论里留给你的工具,应该算是个第三方的带GUI的工具,前者属于驱动本体,后者属于驱动的第三方辅助工具。关于Shield,我搜了一些英文的帖子,都是实体显示器之间切换。
看到虚拟显示器能用的方案就是,在NVIDIA控制面板里,设置虚拟显示器为主显示器。不过下面评论有人说并不管用。
还有删注册表改显示器序号的。由于我并没有用过,其实也不是很了解。
我把这两个帖子贴给你,你看看吧,感觉应该不适用虚拟显示器的情况。实在不行,你可以用那种显卡欺骗器,tb上十几块一个的,可以伪装成实体显示器,然后应用外网上适用于实体显示器的方式。分辨率也可以随便改,在NVIDIA 控制面板里自定义分辨率就行。相关链接:1.Fix: NVidia Shield (Moonlight) selecting the wrong Monitor:https://lighthouse.thecloudiest.com/2020/12/20/fix-nvidia-shield-moonlight-selecting-the-wrong-monitor/
2.Wanted to share my setup using Nvidia Shield with Moonlight + Sunshine (details below):https://www.reddit.com/r/GeForceExperience/comments/10crfe5/wanted_to_share_my_setup_using_nvidia_shield_with/唔发现我评论区链接不能直接跳转ww
Str
@邮文 : 自己折腾确实费劲,所以说还是15包邮解君愁啊(bushi)
另外问下你觉得显卡性能对串流帧数影响大不大,我自己用GTX650串流来打DJMAX,这个音游性能要求有一点小高,最低配置要GTX460
不串流倒是能1080p60帧,但是串流之后偶尔会掉到15fps以下,
之前用parsec时倒是不会掉帧,就是延迟比较高,
看样子是码率问题,到时候再试试
我只能说串流打音游多少带点()
邮文
@Str : 串流主要是看编解码性能,你可以在 任务管理器-> GPU 里看看Video Encode和Video Decode占用。如果因为码率设置过高导致宿主机Video Encode占用满,或者连接端Video Decode占用满,可以尝试降低码率。用串流打音游确实不多见😂不过不是不行,之前我在车管所,就用5G串流到了家里电脑给同学打pc端《冰与火之舞》。
Str
感谢大佬发的教程orz,最近刚好想要尝试使用moonlight串流,帮助太大了,但是还有几个
但是不知道老显卡使用shield能不能使用虚拟显示器进行串流
我这边自己试了以后效果不尽人意,有时候串流的是实体显示器,有时候是虚拟的,求教下如何才能配置shield里面的默认显示器
似乎网上没有类似的教程
另外parsec vdd里自带的custom里虽然能自定义分辨率,但是刷新率设置为120hz时,却不能切换到自定义的分辨率,只有60hz才能成功切换(自定义的是2712x1220),不知道修改注册表有没有用,回去试一试
邮文
@Str : 老显卡不能使用moonlight嘛(〃` 3′〃)shield我还真没有研究过。
parsec vdd无法切换这个问题,问一下,你是使用什么方式切换的嘛,是windows的屏幕设置,还是使用vddswitcher.exe呢
vddswitcher那个我之前试了下确实有时候不能自动切换,可以在设置里面手动改。另外有一个工具你可以用用,这个parsec-vdd