Skip to content

Pixel Streaming (Networking)

This page mirrors Rendering → Pixel Streaming from the networking perspective.

Wire format

Direction Protocol
UE → Browser WebRTC video + audio (H.264 / VP8 / VP9)
Browser → UE WebRTC data channel (text / binary)
Signalling WebSocket via the signalling server

STUN / TURN

For LAN-only deployment, default settings work. For internet deployment:

  • STUN servers (Google's public ones, or your own) for NAT discovery
  • TURN servers as fallback for restrictive NATs — required for ~10% of users

Configure in Pixel Streaming Settings:

PixelStreaming.WebRTC.StunServers=stun:stun.l.google.com:19302
PixelStreaming.WebRTC.TurnServers=turn:your-turn.example.com:3478?transport=udp
PixelStreaming.WebRTC.TurnUsername=...
PixelStreaming.WebRTC.TurnPassword=...

Frame Generation source

Pixel Streaming uses NVENC by default on NVIDIA GPUs. AMF on AMD. Software fallback otherwise. Set:

PixelStreaming.Encoder.Codec H264
PixelStreaming.Encoder.RateControlMode CBR
PixelStreaming.Encoder.TargetBitrate 5000000

Concurrent clients

One UE instance per interactive client. For broadcast (one-to-many view-only) use the SFU in PixelStreamingInfrastructure.

See also