Andy's Streaming Field Guide

IRL Pro → IRL Toolkit · high-impact event kit

Your encoder is IRL Pro on the Android phone on T-Mobile, streaming into IRL Toolkit. The whole idea of this guide is that everything you can decide at home gets decided at home, so the only choices left in the field are the six steps in the playbook below.

The panels underneath the playbook expand for the full reasoning and exact settings. You do not need to read them at the event. Read them once now, set everything up, and the playbook is all you should need on the day.

Stream is choppy. What do I do?

In order, escalating. Each step is roughly 30 seconds. Stop as soon as it is fixed.

  1. Check the bitrate stats first
    If bitrate looks healthy but the stream still stutters, it is probably heat, not the network. Shade the phone, take the case off, keep streaming.
  2. Plug in the iPhone tether
    USB-C cable, enable Personal Hotspot and USB tethering. That is your third connection joining the bond. Cheapest real fix, so try it first.
  3. Suspect the venue wifi
    If the drop lined up with joining a large group, drop the wifi connection's weight or disable it in IRL Pro's bonding settings. A half-dead connection in the bond can be worse than a missing one.
  4. Raise latency to 3000–4000 ms
    This needs a stream restart, so do it during a natural break and let the auto-switcher cover the gap with the BRB scene.
  5. Drop to 720p
    Cleaner picture at a lower bitrate.
  6. Last resort
    720p, latency at 5000, FPS at the low end.
HEAT
A phone encoding HEVC in the sun will thermally throttle. Throttling looks exactly like a bad connection, meaning dropped frames and stutter. If possible, keep the case off, keep it out of direct sun, keep brightness down, and don't charge continuously while encoding if you can avoid it. If the stream degrades but your bitrate stats look fine, suspect heat before you suspect the network.
01 Setup & connections How the phones bond together, and the tether plan

Your ideal setup includes having as many internet connections as possible. Your encoder in this case is IRL Pro on an Android phone connected to T-Mobile. Ideally you will connect to the venue's wifi on this phone and connect via USB to a hotspot, whether that is a dedicated mobile hotspot or another phone with USB tethering enabled, since IRL Pro supports a maximum of three connections.

Using wifi as the hotspot on the secondary phone eliminates the ability to use the venue's wifi. However, given our inability to find suitable hardware in the compressed time frame, one strategy is to typically stay connected to the venue's wifi, but when there are challenges, run a USB-C cable between both phones and enable USB tethering on the iPhone, which temporarily increases your connections to 3. If this is used sparingly it will not destroy your battery life, since it is a temporary solution. If the venue wifi is completely unusable, just turn on wifi tethering on the iPhone and run it.

TETHER
A few things to know about the tether plan before you rely on it in the field:
  • Test it at home first with these exact two phones. Not all setups tether cleanly.
  • Many USB-C cables are charge-only. Bring a known-good data cable and confirm it actually passes data between the two phones.
  • One phone will charge the other, often the Android encoder feeding the iPhone, which drains your encoder faster than you would expect. Carry a power bank on the Android regardless. Charging during breaks beats charging continuously while encoding, since constant charging adds heat.
02 IRL Pro — Connections URL, connection weights, and latency

URL Use SRTLA

IRL Toolkit supports both SRT and SRTLA. Make sure your address begins with:

srtla://

The LA stands for Link Aggregation, which is the connection bonding technology. This matters more than it sounds. Plain SRT is a single-path protocol, so if you use an srt:// address, your second and third connections do nothing at all. SRTLA is the only mode where bonding actually happens, so never simplify back to plain SRT while you are troubleshooting.

Connection weights Set ahead of time

In the bonding settings you can set a weight per connection and disable connections individually. Set these before the event. Weight T-Mobile high and the venue wifi low, so the bond leans on the connection you trust. If the venue wifi turns bad mid-event, dropping its weight or disabling it here beats forgetting the network at the OS level.

Latency Start 2000–3000

Latency is the value that effectively works as a buffer. The lower the latency, the more real-time the stream is. However, if you have a choppy connection, increasing latency allows for more dropped packets before you get stutters on stream. IRL Pro expresses latency in milliseconds. It cannot work miracles, but it can help. A good starting value on an unpredictable network is 2000 to 3000. The highest I would recommend going is around 5 seconds (5000), and only as a last resort.

  • SRT uses the higher of the two latency values between your encoder and the receiving end. IRL Toolkit has its own latency setting on the ingest side, so set both intentionally. If you set IRL Pro to 5000 but the Toolkit ingest is at 2000, know which one is actually in effect. So it's just best to set them the same anyway.
  • Latency changes only apply on a reconnect. This is a stop-change-restart fix, not a live knob. Do it during a natural break and let the auto-switcher cover the gap.
03 IRL Pro — Video & phone Resolution, FPS, bitrate, keyframes, HEVC, battery

Resolution

Self-explanatory. However, if you are having significant issues streaming at 1080p, consider dropping to 720p, since you can have a cleaner feed with a lower bitrate at 720 than you can at 1080.

FPS 15–30 variable

I recommend 15 to 30 variable rate on an unpredictable network. IRL Pro will automatically change between FPS values based on connection quality.

Bitrate Matches Resolution: on

To start, toggle Bitrate Matches Resolution on. If you have issues with it, you can toggle it off and set manual bitrates. Either way, keep your ceiling realistic. At 1080p HEVC, around 4500 Kbps is plenty. At 720p, around 2500 to 3000. A lower ceiling gives the adaptive bitrate less distance to fall when the network dips, which reads as stable instead of the picture pumping up and down.

Keyframe frequency 2

Keep this at 2.

Format HEVC

I highly recommend setting this explicitly to HEVC. HEVC's compression makes it more data efficient. Effectively you get a lower bitrate on HEVC than h264 at the same image quality, so it is much better for your situation.

Battery optimization Do before the event

One phone setting to think about outside the app but within Android. Exempt IRL Pro from battery optimization, or Android will throttle background networking. Go to Settings, Apps, IRL Pro, Battery, and set it to unrestricted. Do this before the event, not at it.

04 IRL Toolkit side Check your ingest region

Check your ingest region

Make sure the ingest server is the closest one to the venue. I'm guessing it's Central.

Pre-event checklist