Hi there,
I’m using the following setup: UE4.27.2, Dedicated Server, two UE4 clients, Cirrus server and Matchmaker for pixel streaming, all within LAN (or even all on localhost).
Cusom Level, with custom Characters.
Hardware specs: 64GB RAM, i7-7700K 4.2GHz 4 Core CPU, Nvidia RTX 3090
First what is working:
- no cirrus pixel streaming running
- both UE4 clients can connect to the Dedicated Server, and they both run with full resolution and full-screen (using no pixel streaming) without any lag and jitter. Everything runs perfect.
(rules out any replication issues)
This is also working:
- two cirrus streaming servers running
- one UE4 client can connect to the Dedicated Server, and can be access through pixel streaming from Browser, no lag, no jitter. (so seems at least one stream can be perfectly encoded and transferred).
Now here comes the problem:
- two cirrus streaming servers running
- two UE4 clients connected to the Dedicated Server, and both clients accessed from Browser (even on different machines), no lag, but big jitter (like the stream jumps back some of the frames). Mostly visible if you run fast and rotate the world with the mouse. (if needed I can upload a short clip to show it). In the stats panel I see no lost frames, nothing special otherwise. No error messages in the log windows of both, dedicated server and clients…
So I thought maybe a bandwidth issue (doubtful within LAN!), but here is the really weird stuff:
The stutter/jitter already is there in this setup:
- two cirrus streaming servers running
- two UE4 clients connected to the Dedicated Server, but only one client is accessed from Browser (even on different machines), no lag, but big jitter.
What rules out for me the bandwidth issue…
If you even take into account that 1 UE4 client is working perfectly when connected to the Dedicated Server and accessed from browser, this makes for me absolutely no sense…
When I run both UE4 clients not in headless mode so I can see how the browser is controlling the characters, I see there the movement is absolutely smooth, no lag and jitter at all.
Seems there is an issue with encoding and/or transferring that client rendering to the browser.
I’ve also tested Firefox, Chrome and Opera, they all show this behavior.
Any clue on what could be going on here? I mean the used hardware encoding on the RTX 3090 is working perfectly on other apps (even multiple streams, until the driver limit kicks in)…
I’ve also tested another simple level (example level) with Dedicated Server and two clients, and default thirdperson characters, there it works perfectly, no jitter at all even with two Browser connected… I also replaced my customized characters with the default thirdperson character, and the jitter is still there. I deleted half of my level, blueprints and custom logic, but it makes no difference…
Any hint about how to further debug this would be great!
Cheers & thanks for any help