前阵子家里换了电视,但是电视墙没有预留HDMI的接口,我又想在电视上玩Steam游戏,所以尝试使用Moonlight。Moonlight的延迟、带宽、画质和兼容性都控制的很好,本地局域网内的延迟控制在10ms(毫秒)以内,大部分是在5ms到6ms之间抖动,除了特别要求延迟的游戏(例如街霸这种),其他的都体验非常好。但是在配置的过程中,也遇到了一些问题,比如今天所说的NVIDIA NetworkService Container服务问题。
什么是moonlight?
“Moonlight” 是一个开源的游戏流媒体软件,它允许用户通过本地网络或互联网将他们的电脑游戏流式传输到其他设备上,例如智能手机、平板电脑、智能电视等。
它最初是为 Android 设计的,但现在已经可以在多种平台上运行,包括 Windows、macOS、Linux、iOS、tvOS 等。用户可以使用 Moonlight 将他们的游戏流式传输到支持 NVIDIA GameStream 的计算机或设备上。
使用 Moonlight,您可以在其他设备上玩您的电脑游戏,而无需在该设备上安装游戏本身。这对于那些希望在移动设备上玩游戏,但不想为移动游戏购买而又想享受更好的游戏体验的用户非常有用。
Moonlight 使用高效的视频编码和解码技术,确保您在流式传输游戏时获得更流畅和高质量的体验。同时,它也支持多种游戏控制器,包括 Xbox 控制器、PlayStation 控制器等,让您能够更舒适地进行游戏。
在某个版本的Nvidia Geforce Experience更新之后,存在NVIDIA NetworkService Container这个服务没有注册的问题,所以在客户端的Moonlight里面,尝试连接局域网的游戏主机一直是失败,提示无法连接到服务器,主机端也没有弹出认证的输入框。如果你也存在相同的问题,那么可以按照如下方式进行验证:
1. 打开Windows服务管理,搜索
services

2. 在列表中查找是否有NVIDIA NetworkService Container这个服务。如果有,则右键启动。
3. 如果没有这个服务,那么我们需要创建一下这个服务,并让其启动,管理员模式打开CMD, 其中binpath内的相关路径,依照自己的Nvidia Geforce Experience安装路径进行修改。
sc create NvContainerNetworkService binpath="C:\Program Files\NVIDIA Corporation\NvContainer\nvcontainer.exe" -s NvContainerNetworkService -f "C:\ProgramData\NVIDIA\NvContainerNetworkService.log" -l 3 -d "C:\Program Files\NVIDIA Corporation\NvContainer\plugins\NetworkService" -r -p 30000 -st "C:\Program Files\NVIDIA Corporation\NvContainer\NvContainerTelemetryApi.dll" type= own start= auto displayname="NVIDIA NetworkService Container"
保存,并确认启动。
4. 在客户端尝试通过Moonlight连接游戏主机。
Moonlight For Android(TV、手机及平板)的最新版本:Moonlight Android v11.0 更新