UE像素流送
版本:UE4.27
音频混合
像素流IP、端口
-AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8888
cd
SignallingWebServer\platform_scripts\cmd\setup.ps1
运行SignallingWebServer\platform_scripts\cmd\Start_SignallingServer.ps1
提示:
说明虚幻引擎应用程序已经启用了像素流送插件,前端信令和Web服务器也已准备好将客户端连接到虚幻引擎应用程序。
参考: https://docs.unrealengine.com/4.27/zh-CN/SharingAndReleasing/PixelStreaming/Hosting/
配置:配对服务器、信令服务器、UE应用、浏览器
定位
工程打包路径/WindowsNoEditor\Samples\PixelStreaming\WebServers\Matchmaker
命令
run.bat --HttpPort 90 --MatchmakerPort 9999
注意:参数大小写
工程打包路径\WindowsNoEditor\Samples\PixelStreaming\WebServers\SignallingWebServer\config.json
公网配置:
公网IP
Stun服务器IP
Trun服务器IP
工程打包路径\WindowsNoEditor\Samples\PixelStreaming\WebServers\SignallingWebServer2\platform_scripts\cmd\Start_Common.ps1
连接项
不使用默认值
Stun服务器端口
Turn服务器端口
用户名/密码配置:
启动服务器:
打开PowerShell:
定位:
工程打包路径\WindowsNoEditor\Samples\PixelStreaming\WebServers\SignallingWebServer\platform_scripts\cmd
直接拖Start_WithTURN_SignallingServer.ps1文件入命令窗口,回车
新建UE应用程序快捷方式,设置属性:
-AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8886
启动
输入网址:
10.0.12.33:90
拷贝SignallingWebServer文件夹,粘贴重命名SignallingWebServer2
工程打包路径\WindowsNoEditor\Samples\PixelStreaming\WebServers\SignallingWebServer2\config.json
公网配置:
工程打包路径\WindowsNoEditor\Samples\PixelStreaming\WebServers\SignallingWebServer2\platform_scripts\cmd\Start_Common.ps1
连接项用户名/密码配置:
启动服务器:
打开PowerShell:
定位:
工程打包路径\WindowsNoEditor\Samples\PixelStreaming\WebServers\SignallingWebServer2\platform_scripts\cmd
直接拖Start_WithTURN_SignallingServer.ps1文件入命令窗口,回车
新建UE应用程序快捷方式,设置属性:
-AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8887
启动
输入网址:
10.0.12.33:90
外网端口未开放可测试10.0.12.33:19305
(8)外网
开放端口:90、19304、19305
参考:https://docs.unrealengine.com/4.27/zh-CN/SharingAndReleasing/PixelStreaming/CustomPlayer/
参考:https:///o0pk2008/article/details/102589585
emitCommand (测试未成功)
emitUIInteraction (测试成功)
UE
像素流送组件::Send Pixel Streaming Response(FString)
JS
app.js
注册监听器函数
addResponseEventListener("handle_responses", myHandleResponseFunction);
移除事件监听器
removeResponseEventListener("handle_responses");
参考:https://www.jianshu.com/p/90f1f67fc7a8
Samples\PixelStreaming\WebServers\Matchmaker\matchmaker.js
修改
//获取URL地址中的自定义参数
function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name +"=([^&]*)(&|$)","i");
var r = window.location.search.substr(1).match(reg);
var context = "";
if (r != null)
context = decodeURIComponent(r[2]);
reg = null;
r = null;
return context == null || context == "" || context == "undefined" ? "" : context;
}
易出现:Client断开不及时
易出现:Cirrus服务不足
REM 启动 SignallingWebServer2
start powershell -windowstyle hidden -File ./Samples/PixelStreaming/WebServers/SignallingWebServer2/platform_scripts/cmd/Start_SignallingServer.ps1
REM 启动 SignallingWebServer
start powershell -windowstyle hidden -File ./Samples/PixelStreaming/WebServers/SignallingWebServer/platform_scripts/cmd/Start_SignallingServer.ps1
Start 工程名.exe -AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8888 -AllowPixelStreamingCommands -RenderOffscreen
Start 工程名.exe -AudioMixer -PixelStreamingIP=localhost -PixelStreamingPort=8889 -AllowPixelStreamingCommands -RenderOffscreen
“.\Samples\PixelStreaming\WebServers\Matchmaker\run.bat”
exit
REM 启动前先清理
taskkill /f /im 工程名-Win64-Shipping.exe
Start Start_ps1_NoWindow.bat
Start Start_ExeAndRun.bat
避免重复启动
避免带窗口启动
指定需要的参数
@echo off
REM 防止重复启动
tasklist | findstr “工程名Server” >nul 2>&1
if errorlevel 1 (
start /b powershell -WindowStyle Hidden -Command “Start-Process ‘%~dp0\GS_QinZhou_VR\Binaries\Win64\工程名Server-Win64-Shipping.exe’ -ArgumentList ‘-server -log -port=23001’ -WindowStyle Hidden -Verb RunAs -PassThru”
) else (
echo Running
)
exit
bat启动无反应:可能是杀毒软件拦截;
处理:关闭杀毒软件的免打扰模式(拦截弹窗),再次启动bat,加入信任列表;
或者直接关闭杀毒软件。
因篇幅问题不能全部显示,请点此查看更多更全内容