1. 串流方案选型:为什么这三款APP值得折腾
把PC游戏画面搬到手机或电视上玩,这件事听起来像是极客专属,实际上门槛比大多数人想象的低得多。核心逻辑就一句话:PC负责渲染,局域网负责传输,手机或电视只做解码和显示。只要家里路由器不太拉胯,延迟可以压到20ms以内,玩《哈迪斯》《死亡细胞》这类动作游戏基本感觉不到操作滞后,玩《博德之门3》这种回合制更是绰绰有余。
我前后折腾过五六种串流方案,从最早的Steam Link硬件盒子到后来的各种开源项目,踩过的坑包括但不限于:手柄映射错乱、HDR画面发灰、音频爆音、电视端解码器不兼容导致花屏。最终稳定留在手机和电视上的,就是下面要展开讲的三款APP。它们各有侧重,没有谁绝对碾压谁,选哪个取决于你的显卡品牌、网络环境、以及你打算用什么设备当屏幕。
先说清楚适用人群:如果你家里有一台带独显的PC,路由器是千兆或者WiFi 6,想在床上、沙发上、甚至马桶上继续你的游戏进度,那这套方案就是为你准备的。如果你用的是核显轻薄本,或者路由器还是老旧的百兆设备,串流体验会打折扣,但也不是完全不能玩,后面会讲怎么压榨性能。
注意:串流的前提是PC和手机/电视在同一个局域网内。跨网络串流涉及额外的网络配置,不在本文讨论范围内,而且体验受上行带宽限制很大,普通家庭宽带很难跑出可用的效果。
2. 三款主力串流APP深度拆解
2.1 方案一:Moonlight + Sunshine组合——开源界的万能钥匙
Moonlight本身是一个客户端,它需要配合服务端使用。早期大家用的是NVIDIA的GameStream,但NVIDIA已经在2023年正式砍掉了这个功能,所以现在的主流做法是用Sunshine作为服务端,Moonlight作为客户端。这套组合最大的优势是不挑显卡,AMD、Intel Arc、甚至核显都能用,因为Sunshine走的是标准的视频编码接口,不依赖NVIDIA的私有协议。
Sunshine的安装很简单,去它的代码托管页面下载对应系统的安装包,Windows下双击安装,它会自动配置防火墙规则。安装完成后打开Web管理界面,默认地址是https://localhost:47990,第一次访问需要设置用户名和密码。进去之后重点配置两个地方:Applications标签页里添加你要串流的游戏或直接添加mstsc.exe做桌面串流;Audio/Video标签页里设置编码器和码率。
编码器选择是影响体验的关键。NVIDIA显卡选nvenc,AMD选amf,Intel选qsv。码率方面,1080P 60帧建议从20Mbps起步,2K 60帧建议30-40Mbps,4K 60帧建议60Mbps以上。但码率不是越高越好,超过局域网实际带宽反而会导致卡顿和花屏。我实测在WiFi 6环境下,2K 60帧用35Mbps非常稳定,再高就开始出现周期性掉帧。
Moonlight客户端在安卓端可以直接从应用商店或者其官方发布页下载APK。安装后它会自动扫描局域网内的Sunshine服务端,点进去就能看到你配置好的应用列表。Moonlight的安卓版支持手柄原生映射,插上蓝牙手柄后基本不需要额外配置,按键布局会自动匹配Xbox手柄标准。如果你用的是PS手柄或者Switch Pro手柄,可能需要在Moonlight的设置里手动调整一下按键映射。
实操心得:Sunshine的Web管理界面默认用的是自签名证书,浏览器会报安全警告,直接点“继续访问”就行。如果你经常需要调整配置,建议把管理界面的端口映射记下来,方便快速访问。
2.2 方案二:Steam Link——Steam库玩家的懒人选择
如果你90%的游戏都在Steam上,那Steam Link是最省心的方案。它不需要额外安装服务端,Steam客户端本身就自带串流功能。你只需要在PC上打开Steam,在设置里找到“远程畅玩”选项,确保它处于开启状态,然后在手机或电视上安装Steam Link APP,登录同一个Steam账号,它就会自动发现你的PC。
Steam Link的优点是零配置,基本上安装完就能用。它的画面预设比较保守,默认码率偏低,第一次使用可能会觉得画面有点糊。你可以在APP的设置里把“画质”调到“精美”,带宽限制调到“无限制”,然后手动把分辨率匹配到你的手机或电视屏幕。音频方面,Steam Link支持5.1声道传输,如果你有家庭影院系统,可以在PC端Steam设置里开启环绕声输出。
但Steam Link的局限性也很明显:它只能串流Steam游戏。如果你想玩Epic、GOG、或者独立模拟器游戏,要么把它们添加到Steam库作为“非Steam游戏”,要么就得换方案。另外Steam Link对非Steam控制器的支持不如Moonlight灵活,有时候会出现按键错位的问题。
2.3 方案三:AMD Link——A卡用户的官方方案
如果你用的是AMD显卡,AMD Link是一个值得考虑的选项。它集成在AMD的驱动软件里,安装驱动时勾选“AMD Link”组件即可。手机端安装AMD Link APP,扫描PC端显示的二维码就能配对。AMD Link的优势是与驱动深度集成,支持AMD的Anti-Lag和Radeon Boost技术,理论上能进一步降低输入延迟。
不过AMD Link的体验比较依赖驱动版本,我遇到过几次驱动更新后串流功能失效的情况,需要回滚驱动或者等AMD发修复补丁。另外AMD Link的安卓客户端更新频率不高,在新版安卓系统上偶尔会出现兼容性问题。如果你追求稳定性,Moonlight + Sunshine仍然是更稳妥的选择。
| 对比维度 | Moonlight + Sunshine | Steam Link | AMD Link |
|---|---|---|---|
| 显卡兼容性 | 全平台 | 全平台 | 仅AMD |
| 配置难度 | 中等 | 极低 | 低 |
| 非Steam游戏支持 | 完美 | 需手动添加 | 完美 |
| 手柄兼容性 | 极佳 | 良好 | 一般 |
| 更新维护 | 活跃 | 活跃 | 一般 |
| 推荐场景 | 多平台游戏库 | 纯Steam玩家 | A卡用户尝鲜 |
3. 网络环境调优:决定串流成败的隐形战场
3.1 路由器设置的关键参数
串流对网络的要求就两个字:稳定。带宽反而不是最重要的,20Mbps的稳定连接比100Mbps的波动连接体验好得多。如果你用的是WiFi,5GHz频段是必须的,2.4GHz的干扰太大,延迟波动能到100ms以上,玩动作游戏基本没法玩。
路由器的QoS功能要开启,把PC和手机/电视的MAC地址加入高优先级列表。很多路由器的QoS默认是关闭的,或者只对特定应用生效,你需要手动把串流设备的流量标记为最高优先级。另外MU-MIMO和OFDMA这两个功能如果路由器支持,一定要打开,它们能显著改善多设备同时连接时的稳定性。
如果你家路由器比较老,不支持WiFi 6,可以考虑电力猫或者Mesh节点方案。电力猫走电线传输,延迟比WiFi稳定,但带宽受电线质量影响很大,老房子的电线可能跑不到100Mbps。Mesh节点适合大户型,但要注意节点之间的回程带宽,如果回程走无线,串流质量会打折扣。
注意:如果你的PC是插网线的,手机走WiFi,那瓶颈通常在WiFi侧。反过来如果PC走WiFi,手机也走WiFi,那路由器需要同时处理上行和下行,压力翻倍。最理想的配置是PC插网线,手机/电视走5GHz WiFi,路由器性能中上。
3.2 码率与分辨率的平衡计算
码率设置有一个简单的估算公式:码率(Mbps)≈ 分辨率像素数 × 帧率 × 0.07 ÷ 1000000。以1080P 60帧为例,1920×1080×60×0.07÷1000000≈8.7Mbps,这是理论最低值。实际使用中建议翻倍到20Mbps左右,留出波动余量。2K 60帧算下来约15.6Mbps,实际建议30-35Mbps。4K 60帧约35Mbps,实际建议60-80Mbps。
但这个公式只考虑了画面复杂度一般的场景。如果你玩的是《赛博朋克2077》这种画面元素极其丰富的游戏,码率需求会更高。反过来玩《星露谷物语》这种像素风游戏,码率可以砍半。我的建议是从推荐值起步,然后根据实际体验微调。如果画面出现块状模糊,说明码率不够;如果操作延迟明显增加,说明码率超过了网络承载能力。
3.3 电视端串流的特殊处理
电视端串流和手机端有一个本质区别:电视的解码器性能参差不齐。很多智能电视的芯片解码能力有限,高码率H.265视频流可能解不动,表现为画面卡顿但声音正常。遇到这种情况,有两个解决办法:一是把编码格式从H.265换成H.264,兼容性更好但同画质下码率需求更高;二是降低分辨率到1080P,减轻解码压力。
如果你用的是安卓电视盒子,比如某款常见的电视盒子,它的解码能力通常比电视自带的强。你可以把盒子作为串流接收端,电视只负责显示。另外电视端的输入延迟也是一个问题,很多电视在“电影模式”下会有100ms以上的画面处理延迟,一定要切换到“游戏模式”或者“PC模式”,能把这个延迟压到20ms以内。
4. 手柄与输入设备:从能用到好用的关键一步
4.1 蓝牙手柄的连接与映射
安卓设备连接蓝牙手柄,系统层面一般都能识别,但游戏内的按键映射才是真正的坑。Moonlight和Steam Link都支持手柄原生映射,但不同手柄的按键编号不一样。Xbox手柄是最标准的,插上就能用。PS手柄的触摸板在安卓上通常被识别为鼠标,需要手动禁用。Switch Pro手柄的AB键位置和Xbox是反的,需要在APP里切换布局。
如果你用的是北通、飞智这类国产手柄,它们通常有自己的映射APP,可以在系统层面把按键映射成触摸操作。但这种映射方式在串流场景下会引入额外延迟,因为信号要经过“手柄→映射APP→触摸事件→串流APP”这条链路。更好的做法是让手柄直接以HID设备身份被串流APP识别,跳过映射层。
4.2 键鼠串流的可行性分析
串流玩FPS游戏,键鼠是绕不开的话题。Moonlight支持键鼠直通,但安卓系统对鼠标的原始输入支持有限,鼠标移动会经过系统指针加速,导致瞄准手感完全不对。解决办法是在Moonlight设置里开启“鼠标直接输入”模式,绕过系统加速。但即便如此,安卓的鼠标轮询率通常只有125Hz,和PC上1000Hz的 gaming鼠标差距明显,快速甩枪时会有丢帧感。
我的建议是:串流玩FPS,手柄比键鼠体验更好。现代FPS游戏大多有完善的手柄辅助瞄准,配合串流的低延迟,实际对战体验可以接受。如果你非要键鼠,那最好把串流分辨率降到1080P,帧率锁60,减少数据传输量,给鼠标输入留出更多带宽。
实操心得:蓝牙手柄的延迟通常在10-20ms,2.4G无线手柄能压到5ms以内。如果你对手感要求极高,优先选2.4G接收器的手柄,比如Xbox手柄配官方接收器。蓝牙版本建议5.0以上,4.2的蓝牙在复杂无线环境下容易受干扰。
5. 常见问题排查与性能压榨技巧
5.1 画面卡顿与花屏的排查路径
串流出问题,排查顺序应该是:先看网络,再看编码,最后看解码。网络问题表现为周期性卡顿,每隔几秒卡一下,通常是WiFi干扰或者路由器QoS没配好。编码问题表现为画面局部模糊或者色块,通常是码率不够或者编码器过载。解码问题表现为画面卡住但声音继续,或者绿屏花屏,通常是接收端解码器不支持当前编码格式。
一个快速定位的方法:在Moonlight里打开性能统计叠加层,它会显示当前延迟、丢帧率、网络抖动。如果延迟稳定在20ms以内但丢帧率高,说明是解码问题;如果延迟波动大,说明是网络问题;如果延迟稳定但画面模糊,说明是码率问题。
5.2 音频爆音与不同步的解决
音频问题通常和采样率有关。PC端音频输出如果设成了48kHz,但串流APP默认用44.1kHz,就会产生爆音。解决办法是在Sunshine或Steam Link的音频设置里,把采样率强制设为48kHz。另外Windows的音频增强功能有时候会干扰串流音频,建议在声音设置里把“音频增强”关掉。
音频不同步的问题比较少见,但如果出现,通常是视频解码延迟大于音频解码延迟导致的。可以在APP设置里手动调整音频偏移,一般加50-100ms就能对齐。如果调整后仍然不同步,检查一下电视或手机的“音频延迟”设置,有些电视在游戏模式下会自动加音频处理,导致音画不同步。
5.3 低配PC的串流优化方案
如果你的PC显卡性能一般,串流本身会占用一部分GPU资源用于视频编码。NVIDIA显卡的NVENC编码器是独立硬件单元,对游戏性能影响很小。AMD的AMF编码器会占用一部分GPU核心,大概影响5-10%的游戏帧率。Intel的QSV编码器也是独立单元,影响最小。
如果游戏本身帧率就不高,比如只有40-50帧,串流后可能降到30帧左右。这时候可以降低游戏内画质设置,把省下来的GPU资源留给编码器。另外把串流分辨率降到720P,也能显著减轻编码压力。实测在低配PC上,720P 60帧的串流体验比1080P 30帧好得多,因为帧率对操作手感的影响远大于分辨率。
| 常见问题 | 典型表现 | 排查方向 | 解决方法 |
|---|---|---|---|
| 周期性卡顿 | 每隔几秒卡一下 | 网络干扰/QoS | 切换5GHz/开启QoS |
| 画面模糊 | 局部色块/模糊 | 码率不足 | 提高码率或降低分辨率 |
| 绿屏花屏 | 画面异常 | 解码器不兼容 | 换H.264编码 |
| 音频爆音 | 滋滋声 | 采样率不匹配 | 统一设为48kHz |
| 操作延迟高 | 按键后延迟明显 | 电视画面处理 | 切换游戏模式 |
| 手柄按键错乱 | 按键功能不对 | 映射布局错误 | 切换手柄布局 |
6. 进阶玩法:把串流融入日常使用场景
6.1 电视端串流的开机自启动方案
如果你把串流当成电视的常用功能,每次都要手动打开APP会很烦。安卓电视可以设置开机自启动,把Moonlight或Steam Link设为默认启动应用。具体方法因电视品牌而异,通常在“应用管理”或“开机启动”设置里。如果电视系统不支持,可以装一个第三方的启动器APP来实现。
另外电视端的遥控器操作也需要优化。Moonlight支持遥控器方向键导航,但输入游戏内文字时很麻烦。建议配一个飞鼠遥控器或者无线迷你键盘,带触摸板和键盘的那种,几十块钱就能搞定,输入文字和操作鼠标都方便很多。
6.2 手机端串流的省电与散热
手机串流是个耗电大户,屏幕常亮加上WiFi持续传输,旗舰手机大概能撑3-4小时。如果你打算长时间玩,插着充电器是必须的。但充电时手机会发热,加上串流本身的发热,可能会触发降频。解决办法是摘掉手机壳,或者用一个小风扇对着吹。实测摘壳后温度能降5-8度,降频概率大大降低。
省电方面,可以把手机屏幕亮度调低,串流APP里开启省电模式(如果有的话)。另外关闭手机上的后台应用刷新,减少WiFi争抢。如果你用的是OLED屏幕手机,深色游戏画面本身就能省电,因为OLED黑色像素不发光。
6.3 多设备切换的账号管理
如果你家里有多台设备需要串流,比如手机、平板、电视,每台设备都要装客户端并配对。Moonlight的配对是一对多的,一个Sunshine服务端可以同时被多个客户端配对,但同一时间只能有一个客户端在串流。如果你在手机上玩到一半想换到电视上,需要先在手机上断开,然后在电视上连接。
Steam Link的多设备切换更顺畅一些,因为它是基于Steam账号的,登录同一个账号就能看到相同的游戏库。但Steam Link同样不支持同时串流到多个设备。如果你有多个房间需要同时串流,那需要多台PC分别做服务端,这是另一个层面的折腾了。
实操心得:Sunshine的配对码是一次性的,每配对一个新客户端就会生成新的配对码。如果你经常添加新设备,建议把配对码页面加入浏览器书签,方便快速访问。另外Sunshine的Web管理界面支持HTTPS,但自签名证书在有些浏览器上会被拦截,用Chrome的话可以临时信任。
7. 个人实操体会与后续扩展思路
这套串流方案我用了大半年,从最初的Steam Link到后来的Moonlight + Sunshine,中间反复切换过好几次。最终稳定在Moonlight + Sunshine的原因很简单:它不挑游戏平台,不挑显卡品牌,手柄兼容性最好。Steam Link虽然省心,但遇到非Steam游戏就要折腾添加,而且画质预设偏保守。AMD Link则受驱动版本影响太大,不够稳定。
如果你刚开始折腾,我的建议是先从Steam Link入手,感受一下串流的基本体验,确认自己的网络环境和设备能跑通。然后再根据需求决定要不要升级到Moonlight + Sunshine。不要一上来就追求4K 60帧,先从1080P 60帧 20Mbps开始,稳定之后再逐步提高参数。串流这件事,稳定性永远比画质重要,一个稳定的1080P体验远好过一个时不时卡顿的4K体验。
后续如果想进一步扩展,可以考虑串流到VR头显,用Virtual Desktop或者类似方案,把PC VR游戏无线化。或者串流到掌机,比如某些安卓掌机,配合手柄一体化的设计,体验比手机夹手柄更完整。再进阶一点,可以研究多PC串流调度,把不同游戏分配到不同PC上,通过一个统一的客户端入口来启动,适合家里有多台PC的玩家。