You produce your own live content, like a local event, a studio show or a camera feed, and you want it on a channel next to the rest of your lineup. Live Ingest lets your encoder send the signal straight to one of your servers. You then use it as a source of any channel, alone or with backup sources.
New in Xtream AI 2.5.0. Requires engine 2.5.0 on your main server.
Only servers that also run engine 2.5.0 can receive encoders. The others show as "cannot receive encoders yet".
Step 1: Create an ingest
- Open Channels > Sources > Live Ingest and click Add ingest.
- In Name, type a name you will recognize, for example "Saturday event camera".
- In Receiving server, choose the server that receives the signal. Pick the one closest to your encoder.
- Click Create.
The panel creates a stream path from the name, plus a username and a password for the encoder. Encoder setup opens with everything you need to paste.
Renaming an ingest later does not change its stream path, so the encoder keeps working. Moving it to another server disconnects the encoder in about 10 seconds, and the encoder must then use the new server address.
Step 2: Set up the encoder
Encoder setup has four tabs. Each value has a Copy button.
- OBS: in OBS, open Settings > Stream, choose the Custom service, and paste the Server (for example
rtmp://203.0.113.24:1935/live) and the Stream key. - vMix / one URL: for encoders that ask for a single address. In vMix you can also use Server and Stream key as in OBS.
- SRT: the full SRT URL, and the standard stream ID for encoders that build it themselves. In OBS, paste the SRT URL as Server and leave the Stream key empty.
- Credentials: the username and password, with buttons to create new ones.
In OBS, leave Use authentication unchecked. The username and password already travel inside the stream key, and that checkbox uses a different method that the server rejects.
The stream path, username and password are case sensitive.
Step 3: Use it in a channel
- Edit the channel and open the SOURCES tab. See Add a Live Channel.
- Click Add live ingest under Primary Sources or under Secondary Sources, and choose the ingest.
- Click SAVE.
The ingest shows as a row with its name, its server and its live status. You can move it, delete it and crown it like any other source. Change replaces it with another ingest and Manage opens Live Ingest.
How it behaves:
- With the encoder off, the ingest is a source that is down, so the channel moves to its next source. There is no "no signal" screen: if the channel has no other source, it stays down until the encoder is back.
- When the encoder comes back, 24/7 channels that use it start on their own in about 10 seconds. On-demand channels start with their first viewer.
- To have the channel always return to the encoder, crown the ingest in Primary Sources. The channel returns once the encoder has been live for 15 seconds, usually 30 to 60 seconds after it comes back. See Preferred Source.
- For encoder redundancy, put one ingest in primary sources and another one in secondary sources.
- Viewers see the ingest 10 to 30 seconds behind the encoder, like any other source.
What the list shows
- Status: Live with how long and from which IP and protocol, Offline with since when (or "Never connected"), Disabled if you turned it off, and Unknown if the server has not reported for more than 2 minutes.
- Receiving server, with the RTMP and SRT ports of that server.
- Used by: the channels that use it as a source. A crown marks the channels that return to this encoder on their own.
- Enabled: turning it off cuts the connected encoder in about 10 seconds and rejects new connections.
One encoder at a time per ingest. While one is connected, a second encoder on the same stream path is rejected.
New credentials
In Encoder setup > Credentials, choose New username, New password or New username and password. The connected encoder is cut in about 10 seconds and must use the new values. For 24 hours, an encoder that keeps retrying with the old values gets a notice to update instead of being blocked.
Delete an ingest
If channels use the ingest, the panel offers to remove it from their sources too, and warns you about channels that would be left with no other source. If you keep it in the sources, that source simply stays unavailable.
Ports and firewall
Each server receives on two ports. Change them in Servers > edit the server > Live ingest ports:
- RTMP Port (TCP), 1935 by default.
- SRT Port (UDP), 8890 by default.
Set a port to 0 to turn that protocol off on that server. A change reconnects the encoders that use it (OBS reconnects on its own) and applies in about 30 seconds.
Open those ports in your hosting provider's firewall for the receiving server, and TCP 18554 between your servers. If ufw is active on the server, the panel tells you: open the same ports there too.
Emergency switch
In Settings > Streaming, Live ingest (RTMP / SRT) turns ingest off on every server at once. Within 30 seconds the ports close, connected encoders are cut and channels move to their other sources.
Common problems
- OBS does not connect and the ingest stays Offline: check that Use authentication is unchecked, that you copied the full Server and Stream key, and that the port is open in your hosting provider's firewall.
- "Not receiving" or "port conflict" on a server: the ingest ports clash with a port the server already uses. Change them in the server settings.
- "Needs engine 2.5.0": that server cannot receive encoders yet. Update it or choose another server. See Update the Engine.
- Status says Unknown: the server stopped reporting. The status may be out of date until it is back.
- The encoder dropped during an engine update: this is expected. It stays disconnected for 1 to 1.5 minutes and reconnects on its own.