Short answers to what people ask most about Eagle 3D Streaming and Pixel Streaming, with a link to the page that covers each properly.
A technology from Epic Games that runs your packaged Unreal application on a remote GPU and sends the result to a browser as video, with input travelling back. The viewer needs no installation and no graphics card of their own — see how it works.
Create an account, then stream a sample app before uploading anything of your own.
Unreal Engine 5.1 and above. Which Pixel Streaming plugin you can use depends on the version: Pixel Streaming 2 has known issues in UE 5.5 and 5.6, and the upload rejects a UE 5.5 build that uses it — use UE 5.7 for Pixel Streaming 2.
Any desktop or mobile device with a modern browser — Chrome, Firefox, Edge, Safari, Opera. See the browser table for Android and iOS on Control Panel features.
60 free lifetime minutes, one concurrent stream, 5 GB of storage, and a watermark on the stream — see plans and billing. The trial is consumed by use rather than expiring on a date, so an account left alone still has whatever it started with.
Pick a plan under Plans in the Control Panel sidebar; manage or cancel it under My Account > Subscriptions. Cancelling stops the automatic renewal, and you can start a different plan at the end of the cycle — plans and billing.
You do not need to set anything — that is how it works already. The core plan includes 300 streaming minutes every month. We email you at 75% and 90% of them, and again when they are used up. When they are used up, streaming stops: viewers in a session are disconnected and new sessions cannot start, until the next billing month begins.
Nothing is ever charged automatically for going over. Streaming continues before then only if you choose to add minutes: Adjust Minutes on your subscription in the Control Panel, in steps of 100, at $0.10 a minute. Added minutes are billed straight away, usable at once, and then added to your monthly bill until you lower them. Unused minutes do not carry over to the next month. Full details: plans and billing — when the month’s minutes run out.
1 on Trial and 10 on Core. Beyond that is Enterprise, up to 1000 — contact support (Email / Discord). See capacity and regions.
Yes. One streaming URL serves as many simultaneous sessions as your plan's concurrent-user limit allows — each viewer gets their own. For everyone in the same session, use meeting links.
Yes, and it is the only one with global deployment and custom domains. Request it from the Control Panel or through support (Email / Discord).
It depends on concurrent users, duration and region, so it is priced per event. Contact support (Email / Discord) with those three numbers.
ZIP.
Your storage allowance is the limit: up to 250 GB on Core and up to 1 TB on Enterprise — plans and billing.
As long as you want them. They stay until you delete them or close the account.
From the Control Panel, or from inside Unreal with the Automation Tools plugin. For a build pipeline, the Automation Kit.
In Eagle 3D's own US datacentre and in Europe — viewers are connected to the closer one automatically. E3DS also deploys to GCP, AWS and Azure. See regions, since distance is the part of latency you cannot optimise away in the app.
At the time of writing, RTX 4080 and 5070 in the E3DS datacentre, and typically T4 or A10 on cloud providers. Check with support if a project depends on a specific GPU. See system requirements for what that means for your frame budget.
No. Windows builds are the normal case; Linux is supported if you want it.
By default a new configuration uses Dynamic: the stream follows the size of the viewer's window. For a fixed size, 1280 × 720 is the recommendation, and 1080p and above are supported. Set it in app configuration — higher resolution costs GPU time and bandwidth, so it is a trade rather than a free upgrade.
Your own domain name on your streaming URLs instead of E3DS's. Enterprise plans only — ask support (Email / Discord) to set one up.
Some teams keep several Unreal apps on one shared framework and do not want to re-upload every app for a small change, so their app fetches the changed files itself. These answers explain how that fits with how Eagle 3D Streaming starts and looks after apps.
The system looks for the best-matching executable in your uploaded folder — normally the root
<AppName>.exe, the small start-up program Unreal places at the top of every packaged build, which
then starts the real Unreal executable inside Binaries/Win64. If your app needs a different executable
in the folder structure to be launched, contact support (Email / Discord) and we will help you set it up.
These are always sent: -PixelStreamingURL= (it changes every session, so never hard-code it),
-PixelStreamingID=, -AudioMixer, -log, -Unattended,
-StdOut, -FullStdOutLogOutput and -ABSLOG=. Many other Unreal Engine parameters
may be added, depending on what you choose in your app's settings and
configuration — resolution, streaming quality, your own
command-line parameters and more.
For cleaning up. We follow the process we start and every child process under it, and when the viewer leaves we make sure they are all closed. If your executable starts Unreal as a child process, keep it running until Unreal exits — Unreal is then closed together with it. Before a machine is given to the next viewer, we also make sure nothing unwanted is still running: a process we do not recognise is usually shut down. For trusted customers this behaviour can be adjusted — contact support (Email / Discord), and our technical team will check that the change you need is safe for the system.
There is no time limit for downloading or preparing an app. A build you upload through the Control Panel is copied to all our streaming machines automatically — you can see that step while your upload is processed — so normally nothing has to be downloaded when a session starts. Apps that download or unpack parts of themselves in stages are given as long as they need, even for very large builds, as long as the viewer keeps the page open. The countdown starts only when the Pixel Streaming code inside your Unreal app connects to our servers: from that moment, video has to appear within 3 minutes, or the session is treated as a failed start. Anything your app does before Unreal starts streaming — such as fetching updated files — does not count against that time.
Each session can run on a different machine. Following Epic Games' standard behaviour, files your app writes during a session stay on that machine: if the same viewer is later connected to another machine, those files are not there. If your app needs certain files to be available on every machine, we have options for that, used by customers for years — contact support (Email / Discord), and our technical team will review your method against our performance and security rules and set it up.
Yes, within normal limits. Our machines run antivirus, a firewall and security policies, and every day many customers download and upload their own files — see file transfer between the viewer's device and the streaming machine. One thing is not possible: replacing an executable while it is running, so an updated Unreal executable has to be in place before it is started. If a download does not work, tell support (Email / Discord).
Yes. Your app's main executable can be a launcher of your own that, for example, updates files and then starts your Unreal application. One rule makes this work: your launcher must take every command-line parameter our system passes to it and pass exactly the same parameters, unchanged, to the Unreal application it starts. Customers have streamed launcher-based apps with us this way, out of the box.
Our system also detects which process is the Unreal application. In rare cases that detection may not match a particular launcher set-up. If your launcher does not work even though it passes on every parameter, contact support (Email / Discord) — our development team will look at your app with you and find what is going on.
Yes — patching an app places new .pak files in your build's
Content/Paks folder, made for people who do not want to deal with .pak details. It does not
replace executables. Advanced Unreal users can also have their own app fetch .pak files. If patching does
not work for you, tell support (Email / Discord) and we will help you get it working, free of charge.
Not by default, but it can be arranged. As explained under do files an app writes stay for the next session?, data your app saves stays on the machine where it was written: a viewer who is connected to that machine again gets their data back, but there is no guarantee they will be connected to the same machine. If your app needs its data back every time, two things can be arranged: viewers can always be connected to the same machine, or your app can get persistent storage. Contact support (Email / Discord) to set either up for your case.
Yes, using a dedicated server build alongside the game build — multiplayer Pixel Streaming.
If you are new, start here rather than with a question.
Last updated