For the Pixel Streaming Signalling Web Server, add an error code for the disconnect player event.
#jira UEENT-3397
#rb Stuart.Hill
#ROBOMERGE-SOURCE: CL 12350736 in //UE4/Release-4.25/... via CL 12350738
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v671-12333473)
[CL 12350754 by alistair white in Main branch]
Swapping Bcrypt node module to native js version
Adding npm console commands to ease usage
#jira: UE-89833
#rb: Stuart.Hill
#ROBOMERGE-SOURCE: CL 11851819 in //UE4/Release-4.25/... via CL 11851825
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)
[CL 11851829 by alistair white in Main branch]
For Pixel Streaming added a client-side AFK system which will disconnect inactive users. It will first warn the user after a period of inactivty that they are to be disconnected and a countdown will be shown. If the user does not click then they will be disconnected.
This is configurated in app.js as follows:
afk.enabled: Set this to true to activate the AFK system; default false.
afk.warnTimeout: Set this to the number of seconds of inactivity before the warning overlay is displayed; default 120 seconds.
afk.closeTimeout: Set this to the number of seconds the warning overlay will be displayed before the user is disconnected (unless they click); default 10 seconds.
#jira FORT-207270
#rb Alistair.White
[RN] Added a client-side AFK system which will disconnect inactive users.
#ROBOMERGE-SOURCE: CL 9688071 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v538-9681622)
[CL 9688076 by alistair white in Main branch]
This mainly covers the new Pixel Streaming plugin version along with minor changes to other parts of the engine:
* removed multiple copies of FThread as it's now a part of Core
* changes to SlateUser required to fix user input in Pixel Streaming
This wasn't formally reviewed due to the size of Pixel Streaming changes, but was skimmed over by Zack Letters before integration
#rb zack.letters
[CL 9486237 by Andriy Tylychko in Main branch]
Also merge build break fixes 8224117, 8224125, 8225640.
Allow Pixel Streaming to stop streaming and to send a freeze frame JPEG for the browser to display. This is for situations where the camera is not moving and nothing is animated in the scene, so the user will not perceive and difference, other than the JPEG being higher quality perhaps.
This is controlled by two new Blueprint functions: FreezeFrame and UnfreezeFrame. FreezeFrame may be supplied with a texture which will be used for the freeze frame. If this is not supplied then the back buffer will be captured and used as the freeze frame, acting as an impostor for the suspended video stream.
#rb none
[CL 8374931 by Stuart Hill in Main branch]
If you still need to old behavior of searching for a library we use the new PublicSystemLibraries instead (used very sparingly).
Also updated conventions on importing Android libraries to use the newly introduced Android Architecture instead, which is always set to a valid architecuture (unlike Target.Architecture for the general case)
Lastly I updated some build.cs files that were doing filesystem enumeration or copying as they were being parsed, this is highly discouraged (partially because we cache filesystem operations but also it adds a cost to something we expect to be very fast). Any operations like this should be done as part of the build if they have to be done at all.
#rb none
[CL 7918851 by Joakim Lindqvist in Dev-Build branch]
Allow the address (as well as the port) of UE4 to be given to the Proxy. This allows us to test the Proxy when UE4 is not on the local machine.
[RN] Changed the -UE4 option of the WebRTC Proxy from -UE4Port=<Port> to -UE4=<IP:Port>. Previously the IP was hard-coded to localhost; now you may have the UE4 and WebRTC Proxy instances on separate machines.
#rb none
#jira none
#ROBOMERGE-OWNER: ben.marsh
#ROBOMERGE-AUTHOR: stuart.hill
#ROBOMERGE-SOURCE: CL 7050456 in //UE4/Release-4.23/... via CL 7050466
#ROBOMERGE-BOT: BUILD (Main -> Dev-Build) (v367-6836689)
[CL 7121366 by stuart hill in Dev-Build branch]
- This allows for Confidential platforms to exist outside of the engine, and insert themselves in as needed
- Directory structure is, where .... mirrors the directory structure for Engine and projects
- /Platforms/XXX/....
- Moving to more data driven approach for ShaderPlatforms and PlatformInfo, where they can be read from DataDrivenPlatformInfo.ini files that live in the platform config folders
- Removed platform mentions from UBT, by way of changing some enums to partial classes with static members (see UnrealTargetPlatform)
- Various other UBT/UAT modifications to allow for looking in other locations for files
- THIS IS NOT A COMPLETE AND FINAL SOLUTION. WE WILL CONTINUE WORK IN DEV-BUILD BEFORE ITS READY FOR PRIMETIME
#rb ben.marsh
[CL 6271418 by Josh Adams in Dev-Build branch]