Tutorial — Pixel Streaming 2

Augmented Traveler local tutorial. Back to Unreal — Tutorials · build first: Tutorial — Packaging Builds for Each Surface

How to run a figure on a GPU server and stream it to a web browser, whether on a phone, a school Chromebook or a museum tablet, with Pixel Streaming 2. The visitor sees the full-quality (Cine) character without installing anything.

Draft. The launch argument names may differ between Pixel Streaming and Pixel Streaming 2. Confirm them in Epic's migration guide on the first test.

1. When to use it

Good for Not good for
School and classroom access (web link, no install) Crowds of simultaneous users (one GPU instance per active visitor, so cost grows with users)
Showing the Cine character on weak devices Poor connections (it needs a stable, low-latency link)
Remote demos to partners and funders Offline venues

2. The parts

Unreal app (packaged, Pixel Streaming 2 plug-in)
   ⇅ WebRTC video/audio/input
Signalling web server "Wilbur" (+ optional SFU) — from Epic's PixelStreamingInfrastructure repo
   ⇅
Browser frontend (TypeScript library; our own caption/ask UI)

3. Local test (one machine)

  1. Turn on the Pixel Streaming 2 plug-in in the project. Package a Development Win64 build.
  2. Clone the infrastructure repo at the UE5.8 branch. In SignallingWebServer/platform_scripts/cmd/, run setup.bat once, then start_with_stun.bat.
  3. Launch the app with the streamer URL, for example -PixelStreamingURL=ws://127.0.0.1:8888 -RenderOffScreen. Check the argument name for Pixel Streaming 2.
  4. Open http://127.0.0.1 in a browser. Click to start, then test the microphone and the push-to-talk button.
  5. Defaults to know:
    • streamer port 8888, player port 80;
    • bitrate cap 40 Mb/s;
    • "stream sharing" was removed; use the SFU for one-to-many.

4. Our frontend

5. Hosting options

Option Notes Link
Our own cloud VMs (AWS, Azure, GCP) with GPUs Most control. The TensorWorks cloud guide covers set-up https://github.com/TensorWorks/PixelStreamingCloudGuide
Azure reference architecture Microsoft's pattern for Unreal Pixel Streaming https://learn.microsoft.com/sv-se/gaming/azure/reference-architectures/unreal-pixel-streaming-in-azure
Managed platform (e.g. Arcware) Fastest to run; per-minute pricing; less control https://www.arcware.com/cloud
Epic's hosting and networking guide STUN/TURN, ports, scaling https://dev.epicgames.com/documentation/en-us/unreal-engine/hosting-and-networking-guide-for-pixel-streaming-in-unreal-engine

Budget note: streaming is paid per GPU-hour. Keep a session limit (for example 10 minutes) and an idle timeout. Put the hosting cost into the next budget revision once a pilot sets real numbers.

Sources