Pixel Streaming client server connection problem

I’m not able to get connected to the server using web server and proxy server setup provided https://docs.unrealengine.com/en-us/...PixelStreaming
this works perfectly locally but not on a client-server setup or at least I can’t get it working.
Is there anyone who could help me with this?

  • Is your signaling server running on the host machine?
  • Is your WebRTC Proxy running on the host machine?
  • Is your Unreal project running on the host machine with the -AudioMixer parameter?

If yes to all of these and it is working locally, it is likely a firewall issue. Open and forward port 8888 to your local machine and connect to the public IP from the external computer.

The answer to all 3 questions is yes. And to keep things simple all inbound and outbound ports are open also windows firewall has is disabled.

Do you have any other web services currently running on the host machine that might interfere?

Nah I checked and there are no other web servers

Is the IP address you’re using to reach the computer running the Signaling Server accessible over the open Internet?

Did you configure a STUN server?

1 Like

the IP address is pingable. I used the provided TURN server provided by the 4.21 package

You can try using an ICE (Interactive Connectivity Establishment) architecture so that there’s a fallback even if one of the transitional server fails.

You have to follow this step.
First of all, you have to run to run.bat.
Second of all, you have to run to Start_webRTCProx.
Then click Ue4 shortcut. I suggest trying a packaged project.

I hope your issues gonna be solved.

1 Like

I guess you tried PixelStreaming at the local only connection(no access internet). if you do that you can not Pixel streaming on IOS right now. You have to do make a wifi connect the Internet, Then your issue will be solved. I don’t know why Ios platform has to connect to the Internet. good luck.

@persoDeath were you able to get this working? I was also able to get it to run locally, but not able to get it to run over the web using the STUN server or the TURN server

@persoDeath Have you found a solution to this problem? We are in the exact same position: “Starting connection to server, please wait”.

The answer is here: Reddit - Dive into anything

From rgb-freak:

You have to edit the config.json in Engine\Source\Programs\PixelStreaming\WebServers\SignallingWebServer\

You must add a STUN and a TURN server
in the configuration as it described
under
Unreal Engine Pixel Streaming Reference | Unreal Engine 5.3 Documentation.
This server won’t work behind a NAT.
They must be public reachable in the
Internet.

For STUN i took
stun:stun1.l.google.com:19302

For TURN i rent the cheapest cloud
instance at
Günstiges Cloud Hosting (3 EUR /
Month) and followed this install
instructions:
https://www.nomachine.com/AR07N00894

Now it works like a charm. Only
clients behind proxys have connection
problems with the TURN server. Maye I
change the TURN server software as
mentioned here:
javascript - Coturn/turnserver : error 437: Mismatched allocation: wrong transaction ID (WebRTC) - Stack Overflow

In my case, I just changed this line in the Start_AWS_WithTURN_SignallingServer.ps1 file and it worked:

$peerConnectionOptions = “{ "“iceServers"”: [{"“urls"”: ["“stun:stun1.l.google.com:19302"”,"“turn:” + $PublicIp + “:19303"”], "“username"”: "“PixelStreamingUser"”, "“credential"”: "“Another TURN in the road"”}] }”

I am trying your solution but it still hangs with the “Starting connection to server, please wait” text in the browser. I don’t think hard coding the ps1 is the nicest way, but it seems an easy one. How can your solution work without setting up the TURNS server? Do you start/use something from the provided STUN/TURN in
UE_4.21\Engine\Source\ThirdParty\WebRTC\rev.23789\programs\Win64\VS2017\release directory?

How do you use the provided STUN/TURN servers? How did you configure them?

1 Like

I didn’t setup the stun server. I just use one of the Google Stun server available publicly. As I said, I change the ps1 file to include stun with this: stun:stun1.l.google.com:19302.

Hey there, looks like your reply is the only one in the entire web on this issue, i bought the 3€/m server but i’ve difficult following the guide, can you please help me to set it up? Thanks a lot in advance

Everything you need is already implemented for Pixel Streaming on React.js Have you tried MetaEditor to solve your problem?