Back to guides
Engineering
July 22, 2026
4 min read

Dropped mid-stream? How reconnect stitching still gives you one MP4

7

7cubit Team

More in Engineering

Dropped mid-stream? How reconnect stitching still gives you one MP4

A short network drop should not turn a two-hour show into a folder of fragments. Wi-Fi can hiccup, OBS can restart, and a laptop can briefly lose its connection. If the recorder treats every disconnect as a finished session, you are left to find the usable pieces and join them yourself.

ApexStream takes a different approach when a publisher disappears without an intentional stop. The recorder holds the current pieces during a 120-second reconnect grace window. If the same stream comes back in that window, the pieces stay associated with the show and are stitched into one MP4. The gap is still there, but the file is usable.

Two kinds of stop

The lifecycle watcher distinguishes how a stream ended:

  • Explicit stop: you ended the session from the product, so finalization begins immediately.
  • Disconnect: the publisher vanished, so the system starts the 120-second grace timer and keeps the segment files available.

This distinction matters. Waiting two minutes after every normal sign-off would make every recording look stuck. Finalizing immediately after every network blip would lose the chance to make one continuous library asset.

The watcher also waits for the media path to actually appear before recording starts. Authentication can happen before a publisher is registered; recording attaches to a real source rather than to an early event that only says the source might arrive.

What happens when you reconnect

If a new session start arrives for the same stream key while the grace timer is active, the timer is cancelled. The existing segments remain in the pending set, a new segment begins, and the recorder treats the reconnect as another interval of the same show.

When the grace period expires without a reconnect, the finalizer filters out unusable fragments, stitches what remains, and uploads the result. A single valid file is promoted without unnecessary work. Multiple valid files are concatenated with FFmpeg into one combined file.

The garbage filter is not identical for every source. Studio dual-pipeline recordings and classic OBS-style ingest fail in different ways, so their minimum size and duration checks are source-aware. A three-second failed attempt should not become the first scene of your final VOD.

Studio recording and encoder recording

Web Studio cloud recording has a related but separate capture path. The browser records short WebM chunks containing the composited canvas and master audio, uploads those chunks, and the server finalizes them into an MP4. OBS, Streamlabs, vMix, and similar encoder sessions use the media-node stitcher against the ingest path.

The internal steps differ, but the useful result is the same: when the pipeline completes, the Media Library gets one playable asset instead of a list of reconnect fragments.

What you will see after a drop

During the grace period, the recording can remain in progress even though the destination player has stopped. That is expected: the lifecycle watcher has not yet decided whether the publisher is returning. If you reconnect, the new interval joins the pending set. If you do not, the finalizer proceeds when the timer expires.

The completed file may have a visible cut at the reconnect point. Check that moment before you send the recording into another workflow, especially if the drop happened while a guest was speaking. Stitching protects the file structure; it does not remove the editorial scar.

What stitching cannot do

It cannot recreate frames that were never published. The finished MP4 can contain a jump at the point of the reconnect because there is no video to fill the gap. That is preferable to a fake freeze frame or a silent claim that nothing happened.

It also does not reset the session clock. Stream-length limits still apply: Free is capped at 2 hours, Hobby at 6, Creator at 8, Scale at 10, and Enterprise at 24. Reconnecting preserves the recording artifact; it does not create an unlimited session.

Cloud recording starts on Hobby; Free cannot record. Retention remains tied to the plan as well: 7 days on Free, 15 on Hobby and Creator, 30 on Scale, and 365 on Enterprise. Stitching keeps the recording coherent, not permanent.

The practical outcome

When you intentionally end a show, finalization starts right away. When the wire drops, the system holds the pieces for two minutes. Return in time and you get one MP4 with a visible gap; stay offline and you still get the part that was successfully captured.

Reconnect stitching is a small promise: protect the file from a short network failure without pretending missing seconds can be recovered.

That is why the Media Library may stay in progress briefly after an unexpected drop. The recorder is deciding whether the show is over, then doing the boring work of turning the surviving segments into one file.

Frequently asked questions

Is a reconnect the same as starting a new recording?

Not necessarily. During the reconnect grace period, ApexStream can keep the session open and stitch valid segments into one recording after the source returns.

When should I worry?

Wait for the post-show status to finish stitching and uploading. Investigate when the recording becomes Failed or remains stuck beyond the normal processing window.