本文说明了,如何在 不启动GeForce Experience客户端(通过GFE本地服务端启用GFE各项功能),可以在PC未联网的情况下,完成以下操作:
- 开启GeForce Experience的串流服务
- 开启ShadowPlay用于录屏或直播
- 手动将游戏的快捷方式,添加到串流应用列表
- 屏蔽GeForce Experience的自动更新
- 删除已配对的串流设备
注意:
显卡驱动版本要与GeForce Experience(以下简称为GFE)版本相匹配,否则GFE的后端API会调用失败。 某一版本的GFE可匹配多个N卡驱动版本(这几个N卡驱动版本号相近)。 经测试,GFE的3.16.0.122版本可与 N卡驱动391.35 、397.93 、382.16相匹配。
1. 在确认GFE版本与N卡驱动版本相匹配后,手动结束GFE的相关进程 NVIDIA Web Helper Service
。
2. 打开C:\Program Files (x86)\NVIDIA Corporation\NvNode\
路径下的 index.js
文件和NvGameStreamAPI.js
文件。本文提供了已修改好的,适用于GFE 3.16.0.122版本的脚本文件,替换文件即可。对于其他版本的GFE,可根据本文说明的修改内容进行参考,自行修改。
本文提供的脚本文件下载地址:GFE 3.16.0.122的两个文件
1.index.js
文件的修改内容:
1.1 关闭GFE的安全检查,配置GFE的本地HTTP服务端口号,便于通过浏览器发起请求,启动GFE的多种功能,如ShadowPlay录屏、直播推流,以及查询GFE后端API的版本号。
1.2 注释掉图中红框内的代码,从而避免GFE自动更新,自动下载显卡驱动。
2.NvGameStreamAPI.js
文件修改内容:
在OnNativeAPIInitialized函数中,游戏串流API初始化完成后,添加红框内的代码启动串流服务。
NvGameStreamAPI.js
文件中,OnNativeAPIInitialized()函数中的参考代码
function OnNativeAPIInitialized() {
RegisterExpressEndpoints(app, logger);
logger.info('NvGameStreamAPI module initialized');
let content={"streamingEnabled":true};
api.SetServerStatus(callBack_startStream, content); //调用后端API 启动串流服务
function callBack_StreamServerStatus(err, data) {
if(err) {
logger.debug('串流服务状态查询失败!!\n');
return;
}
if (data.streamingEnabled) {
logger.debug('\n相关依赖服务已成功启动!串流服务已经开启。');
logger.debug('可直接关闭本控制台程序,并不影响串流服务正常工作。');
}
logger.debug('\n串流服务状态:' + JSON.stringify(data)+'\n');
}
function callBack_startStream(err, data) {
if (err) {
logger.debug('\n串流服务启动失败!确保以下3个依赖服务已启动:\n');
logger.debug('【NVIDIA LocalSystem Container】');
logger.debug('【NVIDIA NetworkService Container】');
logger.debug('【NVIDIA Telemetry Container】');
logger.debug('\n正在尝试启动相关依赖服务。。。\n');
api.GetServerStatus(callBack_StreamServerStatus); //调用后端API 查询串流服务状态
}
else {
logger.debug('\n成功启动串流服务!可直接关闭本控制台程序,并不影响串流服务正常工作。\n');
}
}
}
3.启动C:\Program Files (x86)\NVIDIA Corporation\NvNode\NVIDIA Web Helper.exe
,若提示图中的内容则表示,串流服务已经启动;之后打开Moonlight便可以到搜索到开启串流的PC,若未搜索到PC,可在Moonlight中,手动输入串流PC的名称
或IP
即可。
4.手动添加串流程序
将游戏的快捷方式复制到%USERPROFILE%\AppData\Local\NVIDIA Corporation\Shield Apps\
路径下即可,之后便可在moonlight 中看到添加的游戏。若%USERPROFILE%\AppData\Local\NVIDIA Corporation\
路径下没有Shield Apps
文件夹,手动创建即可。
5.删除所有已配对的串流设备
确保NVIDIA Web Helper.exe
已启动。
使用浏览器的PostWoman插件发起Delete请求。
地址:
http://localhost/GameStream/v.1.0/PairedDevices
无请求体
6.开启ShadowPlay。
确保NVIDIA Web Helper.exe
已启动。
使用PostWoman插件发起Post请求。
地址:
http://localhost/ShadowPlay/v.1.0/Launch
请求体:
{"launch":true}
之后,按下Alt+Z
键即可打开ShadowPlay的控制界面