These Eagle 3D Streaming settings control the microphone your viewers speak into and what reaches your Unreal app. Here is what each one does, what you can set it to, and what changes if you go all the way to either end.
Where: Control Panel › your app › a stream link's configuration › pencil icon (edit) › switch on Advanced Options › Microphone tab.
Turn on Use Browser side Microphone first. It captures the viewer's microphone in their browser and sends it to your app, and every other setting on this tab describes that microphone — so the rest stays greyed out until you switch it on.
When it is on, each viewer is asked by their browser for permission to use the microphone the first time they open the stream. If they say no, there is no microphone; nothing you set here can override that.
All three are off by default, which gives the fastest, most direct sound. Each one adds a small amount of processing, so turn them on to solve a problem rather than as a matter of course.
Stops your app's own sound coming back in through the viewer's microphone.
Perfectly fine when viewers wear headphones. On speakers, the microphone picks up your app's audio and sends it back, and the app hears it as if the viewer were speaking.
The browser removes your app's sound from what the microphone hears. Adds a small delay, and can make a voice sound thinner when someone talks over loud app audio.
Turn it on if your app hears itself, or viewers are likely to use speakers rather than headphones.
Reduces steady background sound — fans, air conditioning, traffic hum.
Everything the microphone hears is sent through. The right choice if the sounds in the room are part of what you want to capture.
Constant background sound is filtered out. It works on steady noise; sudden sounds still come through. It can occasionally clip the first moment of very quiet speech.
Turn it on if viewers are in noisy places — offices, showrooms, trade stands.
Evens out voices that are too quiet or too loud, so everyone reaches your app at a similar volume.
Volume is whatever the viewer's microphone produces. Someone sitting back from a laptop will be faint; someone speaking close may sound harsh.
The browser raises quiet voices and holds back loud ones. In a silent room it also lifts the background between sentences, which can be faintly audible.
Turn it on if some viewers come through much quieter than others.
Each of these accepts a range. If you enter something outside it, the settings will not save and you will be told which field and what range it accepts — nothing is silently adjusted behind your back.
How much data the microphone is allowed to use, in bits per second. This limits only what the viewer sends up to your app — the sound your app sends back to them is not affected.
Speech is still understandable but sounds thin and compressed. Uses a tiny fraction of the data. Worth it only for viewers on genuinely poor connections.
The default, and effectively no limit at all. A microphone left here can use several hundred times more data than speech needs — data taken away from your video quality.
Recommended: 32000. Comfortable for speech and leaves the bandwidth for your video. Raise it only if you are capturing music or something other than talking.
How finely the microphone is measured, in hertz. A higher number captures more of the higher frequencies in a voice.
Telephone quality. Speech is clear, but sounds like s and f lose their crispness. Most devices will refuse this and give you 48000 anyway.
Full quality, and what nearly every device offers. This is what you will normally get whether you ask for it or not.
Recommended: leave it blank. Almost every microphone runs at 48000 and will ignore a lower request.
Whether the microphone is treated as mono (one channel) or stereo (two).
Mono, and the right answer for a person talking. Half the data of stereo with nothing lost that a listener could hear.
Stereo. Doubles the data for a voice that has no stereo information in it. Some equipment reports two channels whatever you ask for.
Recommended: 1. Change it only if you are deliberately capturing something with a left and right side.
The highest rate the viewer's end is allowed to send. Related to sample rate, but this one announces a ceiling rather than asking the microphone for a setting.
Tells the connection not to carry anything above telephone quality, so no data is spent on higher frequencies. A real saving, but a blunt one.
No ceiling, which is the default. Lowering it often changes very little in practice, because the quality is already decided by the max bitrate above.
Recommended: leave it blank and use Max bitrate instead if you need to reduce what the microphone uses.
Adds a microphone section to the stream's info panel: whether permission was given, whether sound is being sent, the delay, the data rate, the input level, and each setting shown as what the browser gave you next to what you asked for.
The quickest way to answer “is the microphone working, and did my settings take effect?” It only reports; it cannot change the sound.
Hides the section from viewers. Everything else carries on working exactly as before.
Turn it off for a polished, customer-facing stream where viewers should not see technical detail.
This is the microphone section as a viewer sees it, taken from a real session. Every row is explained underneath.
Healthy in most respects — audio is flowing and nothing is being lost — but four settings were refused by the device, and the round trip is spiking badly.
| Row | What it tells you |
|---|---|
| Is the microphone working at all | |
| Permission | Whether the viewer allowed their browser to use the microphone. granted is what you want. denied means they refused, and nothing else here will work until they allow it and reload. prompt means they have not answered yet. unavailable means their browser will not report it — which is not the same as denied. |
| Track | Whether a microphone is actually attached. live is healthy. ended means it was working and stopped. none means one was never attached. |
| Muted | The browser reporting that no sound is arriving from the device — a physical mute switch, or muted in the operating system. false is healthy. |
| Enabled | Whether the page has switched the microphone off. Separate from Muted, and normally true. |
| Sending | The row to read first. yes means audio is genuinely leaving the viewer's browser. If this says no while Permission is granted and Track is live, the microphone is connected but silent. |
| Connection quality | |
| Latency (round trip) | How long a packet takes to reach the server and come back. This is network delay, not microphone delay. Under about 150 ms feels immediate; several hundred is noticeable in conversation. |
| Worst latency | The highest round trip seen this session. A large gap between this and the current figure means the connection is unstable rather than simply slow — a steady 500 ms is easier to talk over than 80 ms that spikes to 4000. |
| Jitter | How much the spacing between packets varies. Low single figures are healthy. High jitter is heard as choppy or robotic audio even when nothing is being lost. |
| Packets sent | A running total for the session. It should keep climbing while someone is speaking. |
| Packets lost | A running total. 0, or close to it, is what you want. A steadily rising number means audio is being dropped on the way. |
| How much data the microphone is using | |
| Bitrate | What it is using right now. Drops to 0.0 when nothing is being sent. |
| Peak bitrate | The highest seen this session. |
| Average bitrate | The average across the whole session. It falls on its own while nothing is being sent, because the session keeps getting longer — expected, not a fault. |
| Bytes sent | A running total for the session. |
| Bitrate cap | Two limits shown together, because both are in force. The first is your Max bitrate setting; the second is the ceiling agreed when the connection was set up. The lower of the two wins, so “6 kbps · SDP allows 510 kbps” means your setting is what is actually limiting it. |
| What the microphone is doing | |
| Input level | How loud the signal is, as a percentage. Watch it while the viewer speaks: if it stays at 0 % they are connected but the microphone is picking up nothing — wrong device selected, or muted in the operating system. |
| Codec | The audio format in use. Always opus. |
| Audio streams | How many separate audio streams are being sent. Normally 1. |
| SDP stereo | Whether the connection was set up able to carry stereo. This describes the connection, not the microphone — the microphone's own setting is Channels, below. |
| Device | A short identifier for the microphone in use. It is unique to your site, so the same physical microphone shows a different identifier elsewhere. It tells you whether two sessions used the same device, not which device it is. |
| Your settings, and what the browser did with them | |
| Sample rate | Every row in this group shows what the browser actually gave you. The note in brackets appears only when that differs from what you asked for, so 48000 Hz (asked 8000) means your setting arrived and the device would not do it. |
| Channels | Same. 2 (asked 1) is a device that only reports stereo. |
| Echo cancellation | Same. false (asked 1) means you switched it on and the device would not apply it. The 1 is how the setting is stored; it means on. |
| Noise suppression | Same as echo cancellation. |
| Gain control | Same as echo cancellation. |
A viewer can withdraw microphone permission in their browser while the stream is running. Only four rows react — and the last column is the one that surprises people.
| Row | While working | Switched off mid-stream | Switched back on |
|---|---|---|---|
| Permission | granted | denied | granted |
| Track | live | ended | still ended |
| Sending | yes | no | still no |
| Bitrate | 6.3 kbps | 0.0 kbps | 0.0 kbps |
| Muted | false | false | false |
| Enabled | true | true | true |
| Latency, Jitter, Input level | updating | stop updating | stop updating |
| Packets sent, Bytes sent | rising | stop rising, total kept | total kept |
| Packets lost, Worst latency, Peak bitrate | session totals | kept | kept |
| Average bitrate | settles | falls slowly | falls slowly |
| Sample rate, Channels, processing rows | current | last known | last known |
| Codec, Bitrate cap, SDP stereo, Audio streams, Device | unchanged | unchanged | unchanged |
The running totals are left alone on purpose, so after a viewer switches the microphone off you can still see how much they sent and how the connection behaved while it was working.
| Setting | Accepts | Default | Suggested |
|---|---|---|---|
| Echo cancellation | on / off | off | On for speakers |
| Noise suppression | on / off | off | On in noisy places |
| Automatic gain control | on / off | off | On for uneven voices |
| Max bitrate | 6000 – 510000 | 510000 | 32000 |
| Sample rate | 8000 – 48000 | 48000 | Leave blank |
| Channels | 1 – 2 | 1 | 1 |
| Max capture rate | 8000 – 48000 | 48000 | Leave blank |
| Show microphone info | on / off | on | Off for customers |
Saved settings reach viewers the next time they open the stream. Anyone already watching keeps the settings they started with until they reload.
Last updated