Latest news
Unreal Engine Pixel Streaming setup: Bring architectural projects to the browserSetting Up an Architectural Camera Workflow with Unreal Engine Cine Camera and Live LinkGuide to Creating Architectural Concept Images with Nano Banana 2.1CL Sculpt Assistant gives quick access to sculpting tools in BlenderBlender Geometry Nodes Guide: Distributing and Sampling Points on SurfacesArchitectural Image Generation with Nano Banana 2.1: A Step-by-Step Prompt GuideA Guide to Modeling and Unwrapping UVs with Unreal Engine Modeling ModeHoudini Solaris and USD Workflow: 7 Steps to Build Layered ScenesHetao Alpha completed: RSHP’s 45-storey office tower in ShenzhenSuseong Continuum: A Digital Art Gallery by Büro Ole Scheeren
Tips & GuidesUnreal EngineMari

Unreal Engine Pixel Streaming setup: Bring architectural projects to the browser

Unreal Engine Pixel Streaming streams an application’s video and audio to a browser while also enabling remote interaction. This guide covers preparing a project on a local network, starting the servers, and troubleshooting connection issues.

A workspace where an architectural interior visualization is being reviewed on different devicesAI image
Representative image, generated with AI.Image: 3dsınıfı / FCA AI

In brief

  1. Pixel Streaming sends video and audio from a packaged Unreal Engine application to a web browser.
  2. The plugin can be used with a packaged application or a project launched using the Standalone Game option.
  3. For a local network setup, ports 80 and 8888 must be open for communication.
  4. Connecting across different networks may require STUN or TURN configuration.

Epic Games’ Unreal Engine documentation explains how to set up Pixel Streaming on a local network and use it through web browsers and mobile devices. This guide brings together the basic setup steps for teams that want to make an Unreal Engine application created for architectural visualization or an interactive presentation available to viewers on the same network. The steps apply to the Pixel Streaming and Pixel Streaming 2 plugins described in the documentation; compatibility with the operating system and hardware should be verified separately for the setup being used.

1. Prepare the application and plugin

Rather than sharing a regular editor window directly, Pixel Streaming streams the output of a packaged application or a project launched in Standalone Game mode. First, prepare the project for one of these two run modes.

  1. In Unreal Editor, open Edit > Plugins. Enable the Pixel Streaming or Pixel Streaming 2 plugin in the Graphics category, then restart the editor.

  2. If the project includes a character that will be controlled using a phone or tablet’s touchscreen, enable Always Show Touch Interface in the Engine > Input section under Edit > Project Settings. This step is optional; touchscreen controls also depend on whether the project’s Player Controller supports touch input.

  3. To launch Standalone Game from the editor, enter the following connection parameter in the Additional Launch Parameters field under Edit > Editor Preferences... > Level Editor > Play:

Prompt
-PixelStreamingURL=ws://127.0.0.1:8888
  1. To create a Windows package, go to Files > Package Project > Windows (64-bit). The same connection parameter must be supplied each time the application starts; the documentation also describes adding it to the shortcut’s target line.

You can also add the -RenderOffScreen parameter to avoid the possibility that the input stream stops when the application window is minimized. This option runs the application without a visible window and is not required for every project.

SettingRecommended valueEffect
Pixel Streaming connection parameter-PixelStreamingURL=ws://127.0.0.1:8888Connects the application to the server on the local machine.
Local network communication ports80 and 8888 openAllows basic communication between the browser and the Unreal Engine application.
Touch interfaceAlways Show Touch Interface enabled; optionalDisplays the on-screen controls in projects that support touch input.
Run without a window-RenderOffScreen; optionalRuns the application without a visible window.

2. Run the Pixel Streaming servers

The web frontend and server components are part of Pixel Streaming Infrastructure, which runs separately from the Unreal Engine application. Epic’s getting-started guide describes obtaining these components from the GitHub repository or using the get_ps_servers command in the installation. The example in the documentation shows 5.7 as the repository branch; this does not mean that the same branch must be selected for every setup. Check which branch is compatible with the Unreal Engine version in use.

  1. Obtain the infrastructure files and locate the server scripts in the SignallingWebServer folder.

  2. In the Windows example, open PowerShell as an administrator and run the following script to install the dependencies:

Prompt
SignallingWebServer\platform_scripts\cmd\setup.bat
  1. Then start the signalling server:

Prompt
SignallingWebServer\platform_scripts\cmd\start_with_stun.bat

Once the server is ready, the output indicates that it is listening for publisher WebSocket connections on port 8888 and player WebSocket connections on port 80, with the HTTP service running on port 80. Stop any other web servers running on the same computer before starting. The same process applies on Linux and Mac; the documentation specifies using the scripts in SignallingWebServer\platform_scripts\bash instead of the Windows scripts.

With the application and servers running, open http://127.0.0.1 in a browser. After connecting to the player page, click the page to start the stream. Other computers or mobile devices on the same local network can connect by using the server computer’s network IP address instead of 127.0.0.1.

3. Plan network access and user controls

Testing on the same computer or local network first helps distinguish setup issues from external network connection problems. The getting-started guide requires ports 80 and 8888 to be open for local network communication. If access from different networks is planned, opening only these ports may not be enough: NAT, subnets, or mobile carrier networks can affect the connection.

In these cases, STUN or TURN server details can be added to the signalling server’s peerConnectionOptions configuration. STUN helps endpoints discover their externally visible IP addresses. TURN relays the media stream through a server, so bandwidth and relay load need to be considered. Epic’s documentation notes that TURN may be required on mobile carrier networks or secure corporate networks. When setting up a server exposed to the internet, configuration and access security should be addressed separately; a local network example should not be treated as a production service as-is.

Devices connected to the default player page can send keyboard, mouse, and touch input. If only the presenter should control the session while other participants watch, separate HTML player pages can be customized for different user groups. This makes it possible to separate the control options available to users accessing a single Unreal Engine session.

Impact on architectural and visualization workflows

Pixel Streaming can be used to let people experience an interactive Unreal Engine scene across different screens through a web page. Allowing viewers to connect through a browser without installing additional software can make access easier during presentations or project reviews. However, the scene runs on the remote host, and connected devices receive an image of the same scene. By default, input can also be shared, so control permissions should be considered in advance for presentations.

Image quality can be affected by the GPU and memory capacity of the available host computer. For a service intended for the internet or many concurrent users, server hardware, network conditions, and the scaling approach should be considered together. Epic recommends dynamic scaling for large or demand-driven deployments; while running a fixed number of applications may be possible for smaller-scale use, it can result in idle resources or connection queues. The SFU feature may be an option for many viewers and varied network conditions, but the documentation describes it as experimental.

Common mistakes

  • Not restarting the editor after enabling the plugin, or running the application in a mode other than packaged or Standalone Game.

  • Starting the application without the connection parameter, or trying to connect from a browser before starting the servers.

  • Making the first attempt over the internet instead of testing on a local network, which makes it harder to troubleshoot issues involving NAT, STUN/TURN, and firewalls.

  • Not verifying that ports 80 and 8888 are open, or allowing another web server to conflict with the same setup.

  • Overlooking that, by default, all participants in a presentation can send input to the same session.

After the first successful connection, test keyboard, mouse, and, if needed, touch input separately in the browser. If you plan to stream over the internet or deploy for multiple users, test the network configuration, server capacity, and user permissions during a pilot.

Sources

3 sources
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/pixel-streaming-in-unreal-engine
Summary
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/getting-started-with-pixel-streaming-in-unreal-engine
Summary
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/hosting-and-networking-guide-for-pixel-streaming-in-unreal-engine
Summary

Source texts are not republished; short quotes are marked, everything else is our own summary and commentary.

3dsınıfı’s take
3dEditor’s assessment

For architecture firms and visualization teams in Turkey, Pixel Streaming’s practical value lies in letting people review an interactive Unreal Engine scene in a browser. Not having to install additional software on viewers’ devices can simplify the presentation workflow; however, the GPU and memory capacity of the host computer running the scene directly affect the experience.

Starting with a local network setup is a sounder way to isolate network and firewall issues. For internet access, account for STUN/TURN, bandwidth, and potential server costs. For multi-user use, the default shared-control behavior and the experimental SFU feature should be tested carefully before moving to a production plan.

Frequently asked questions

Which ports need to be open for Unreal Engine Pixel Streaming?

Epic’s getting-started guide requires ports 80 and 8888 to be open for local network communication. The default values can be changed; check the configuration options in the Pixel Streaming reference to do so.

Does Pixel Streaming work across different networks or over the internet?

It can, but NAT, subnets, or carrier networks may block the connection. In these cases, STUN or TURN configuration through `peerConnectionOptions` may be required.

How should an Unreal Engine project be launched for Pixel Streaming?

The project should run as a packaged application or using the Standalone Game option in Unreal Editor. The application must be launched with the Pixel Streaming connection parameter.

Comments and the forum are in Turkish.Join the discussion
+

Related news