Skip to content

Selected tracks in a push

A stream with a transcoder ladder carries several renditions at once: say, 1080p and 720p with shared audio. By default a push sends everything the stream has to its destination. When a receiver needs one rendition — 1080p to one multicast group, 720p to another — the push is given a set of tracks.

Pick the tracks

The Egress tab, the Pushes block, the push card, the Tracks field.

The options come from the current stream tracks and are labelled so that a rendition is recognisable without knowing its id: the track id, the resolution for video or the language for audio, and the codec — v2 · 1280x720 · h264. Tick the video of the rendition you need and the audio that goes with it.

The Tracks field: the options are labelled with the rendition resolution

An empty field is the protocol default, and the panel says right under the field what will be sent:

  • MPEG-TS/UDP, MPEG-TS/RTP, SRT and RIST — all stream tracks;
  • RTMP — the video and audio with the lowest id.

The order of the ticks does not matter: v2, a1 and a1, v2 are the same set.

Two renditions to two groups

A two-rendition ladder: v1 is 1080p, v2 is 720p, audio is a1. Each rendition goes to its own group:

  1. The + Add push button, name hd, protocol MPEG-TS/UDP, host 239.1.1.1, port 5000, Tracks — v1 and a1.
  2. The + Add push button, name sd, protocol MPEG-TS/UDP, host 239.1.1.2, port 5000, Tracks — v2 and a1.
  3. Save the stream.

The sd push sends the 720p rendition: tracks v2 and a1, a lower rate than hd

Each group receives a single-program transport stream with one video and one audio. Each push shows its own rate: sd sends less than hd by the difference between the rendition bitrates.

PIDs and tables

A track leaves on the same PID as in the output with all tracks. A receiver tuned to the full stream switches to the single-rendition stream without retuning PIDs. The PID map from the outgoing MPEG-TS settings works the same way: an entry for a track outside the set keeps its PID reserved, and the neighbouring tracks do not shift onto it.

The PMT lists only the selected tracks. A destination's own PNR, PIDs and SDT work for a push with a set exactly as for any other push.

Pushes with the same set share one stream, just like pushes without a set: a hundred destinations with the set v2, a1 cost as much as one. A separate stream is built for each distinct set — see Several destinations at once.

RTMP

RTMP carries one video track and one audio track. Without a set an RTMP push takes the video and audio with the lowest id — the first rendition of a ladder. To send another rendition, pick its video and audio.

A second video or audio track, or subtitles, in the set of an RTMP push are flagged by the panel before saving: "RTMP carries one video and one audio track only". A stream with such a push cannot be saved.

A track that is not there yet

A track id can be typed into the field by hand even when the stream does not have that track right now: v3, a2. The panel accepts it and marks it: "The stream has no such track right now; it will be sent once it appears". This way a push is set up in advance, before the transcoder brings the rendition up. When the track appears, it joins the stream without restarting the push.

While the stream has none of the selected tracks, an MPEG-TS push stays silent: after the service tables at start nothing goes to the group. The Pushing status at zero rate means exactly that for such a push.

Only a track id can be typed — v1, a1, t1; the long form video1 is shortened. The panel rejects anything else and names it.

An id points to a track

An id points to a track, not to a rendition. Video ids of a ladder follow the order of the renditions on the Transcoder tab, so a new rendition in the middle of the ladder shifts the ids of all the following ones. A push with the set v2 then sends whichever rendition has become second. The PID map behaves the same way.

After editing the ladder, check the track sets of the pushes.

A stream with encryption

On a stream with MPEG-TS encryption the Tracks field of MPEG-TS pushes is unavailable: one common stream with all tracks is scrambled, and there is no separate rendition in encrypted form. A push of such a stream gets all tracks.

If encryption is turned on for a stream where a set is already given, the panel asks to clear the tracks of those pushes — otherwise the stream will not be saved. Track selection stays available for RTMP pushes.

What next