This page covers the issues most users hit when streaming through Streampixel — blurry streams, connection failures, audio problems, and stalled builds. Click any item below to expand it. If you’re using the Web SDK and need help with SDK-specific code (Webpack polyfills, singleton initialization, codec ID resolution, etc.), see the SDK troubleshooting guide.Documentation Index
Fetch the complete documentation index at: https://docs.streampixel.io/llms.txt
Use this file to discover all available pages before exploring further.
Think Streampixel is down?
If multiple streams stop working at once, or if you suspect a wider outage, check before debugging your own setup:Open the status page
Visit status.streampixel.io. It shows live health for every Streampixel service.
Read the indicator
- Degraded or Down — our team is already aware and working on it. The status page is the canonical place for incident updates; no need to file a ticket.
- All systems operational — the issue is likely on your side. Continue with the troubleshooting steps below, or raise a ticket if you’ve already ruled out the common causes.
Raise a ticket if everything looks operational
Log into the dashboard, go to Support, and raise a ticket with the relevant topic. Our team responds within the published SLA — and almost instantly for critical events.
Stream quality
Stream is blurry or pixelated
Stream is blurry or pixelated
Symptom: The stream connects but looks soft, blocky, or pixelated — especially during motion.Pixelation usually means the encoder is compressing harder than you’d like. Walk this checklist before tuning settings.1. Pull live stats from the player. Press T + 5 together while the stream is focused to open the stats panel. Three numbers tell you most of what you need to know:
Ask viewers to share these values when they report quality issues. Stats beat intuition.2. Check the network path. If RTT is high or packet loss is non-zero, the network is the bottleneck — no encoder setting will fix it. Confirm:
| Stat | Healthy range | What it means if high |
|---|---|---|
| RTT | < 80 ms | Wrong region, or viewer is far from the stream worker |
| Packet Loss | < 1% | Network congestion, Wi-Fi interference, or UDP being blocked |
| Video Quantization Parameter (QP) | low / mid range | Encoder is compressing hard — bitrate capped or network constrained |
- The viewer’s network allows UDP 3478 outbound. Blocked UDP is the single most common cause of blurry, choppy streams. See Network requirements.
- The viewer is on the closest available region to your project.
- The viewer is on Wi-Fi 5 GHz or wired, not 2.4 GHz Wi-Fi or congested cellular.
- Lower Max QP — caps how aggressively the encoder is allowed to compress.
- Raise Maximum bitrate — gives the encoder more bits to spend on quality.
Stream feels laggy
Stream feels laggy
Symptom: Inputs take noticeably long to register, or the stream feels delayed even though the picture is sharp.Solutions:
- Check RTT in the stats panel (T + 5). Anything above ~100 ms means the viewer is far from the stream worker — pick a region closer to your audience.
- On viewer devices: prefer wired Ethernet or 5 GHz Wi-Fi. 2.4 GHz Wi-Fi and cellular both add 30–80 ms.
- For interactive use cases, opening UDP ports 10000–60000 outbound enables a direct peer connection to the rendering node, which is lower latency than the relay path. See Network requirements.
- If your Unreal scene is rendering below 60 fps on the worker, no network tuning will fix it. Profile in Unreal Insights.
Black screen / no video
Black screen / no video
Symptom: The stream connects but the video area is black or empty.Solutions:
- Confirm the project is active in the dashboard.
- Confirm a build is currently live (Builds tab → “Current Live Build” status).
- Reload the page once. Some browsers fail to attach the video element on first load.
- If you’re embedding via iframe, verify the parent page allows the iframe and isn’t blocking autoplay.
No audio
No audio
Symptom: Stream is playing but there’s no sound.Solutions:
- Browser autoplay policy blocks audio until the user interacts with the page. Click anywhere on the stream first — many browsers will then start audio automatically.
- Check the player’s volume controls and make sure both video and audio elements are unmuted.
- Confirm the Unreal project actually emits audio (test the packaged build locally before uploading).
Media files (videos) not playing
Media files (videos) not playing
Symptom: Your packaged build runs fine, but in-scene videos don’t play once it’s streaming on Streampixel.The most common cause is that media files weren’t placed in the folder Unreal expects when packaging. They need to be inside
Content/Movies/ in your Unreal project — anywhere else and they won’t be included in the cook, even if they reference correctly in the editor.Solutions:- Move all
.mp4/.movfiles intoContent/Movies/and re-point your File Media Source assets to the new path. - Re-package the build and re-upload.
- See Playing media files for the full setup.
Connection issues
Connection fails or stalls
Connection fails or stalls
Symptom: The stream is stuck on “Sharpening Pixels & Buffing the Details”, “Establishing WebRTC connection…”, or never gets to a video frame.Almost always a network restriction — typically a firewall blocking WebRTC.Solutions:
- Confirm UDP port 3478 is open outbound. This is the primary media path. If blocked, WebRTC will try TCP fallback, but some networks block that too.
- Try the same stream from a different network (mobile hotspot, home Wi-Fi). If it works there, the corporate / hospital / hotel firewall is the culprit.
- Verify WebRTC isn’t disabled at the browser policy level. Some enterprise browsers turn it off.
- Share the Network requirements page with the network admin — it lists every port and Twilio IP range to allow-list.
Mobile or tablet disconnects when switching apps
Mobile or tablet disconnects when switching apps
Symptom: On iOS / Android, the stream disconnects when the user switches to another app.This is intentional. Streampixel disconnects after 60 seconds of the browser tab being hidden to free up GPU resources. If the user comes back within 60 seconds, the stream continues. After that, they’ll need to reconnect.
Build issues
Build is stuck in a state
Build is stuck in a state
If a build hasn’t moved past
Queued, Downloading Files, or any other state for a long time, see Build lifecycle → When a build sits longer than expected. Most cases are normal queueing or archive retrieval; anything past 2 hours is worth a support ticket.Is it Streampixel or my build? Test locally first
Is it Streampixel or my build? Test locally first
Before opening a support ticket about a build that misbehaves on Streampixel, try the same packaged
.exe on a different local machine — a colleague’s laptop, a different desktop, anything that isn’t your dev machine.If the build is broken on the second machine too, it’s a packaging problem (missing assets, dependencies installed only on the dev box, hardcoded paths). Fix it locally before re-uploading.If the build runs fine locally on multiple machines but fails on Streampixel, that’s something we should look at — share the project ID, build name, and what specifically is failing, and we’ll dig into the worker side.Still stuck?
If status.streampixel.io shows everything as operational and the steps above didn’t help, raise a ticket from the dashboard → Support. Include:- The project ID and (if relevant) build name
- The stream URL the viewer was using
- A screenshot of the stats panel (T + 5) showing RTT, Packet Loss, and Video Quantization Parameter
- The viewer’s browser, OS, and network type (corporate / home / cellular)
Next
Network requirements
Ports and IP ranges to allow-list for clean streaming.
Performance tuning
Hit your latency, FPS, and bitrate targets.
Disconnect codes
What each disconnect code means and how to handle it.
SDK troubleshooting
Web SDK-specific issues — Webpack, singleton init, codec IDs.