Skip to main content

Recording/Pushing basics

Recording in MistServer

Recording in MistServer is done through the push panel. Here you can create both pushes and automatic pushes as well as set up the automatic push settings. We will only be mentioning recordings to local file in this How-to.

Image of the push panel

Automatic push settings

The automatic push settings can be found at the top of the push panel, they only affect automatic pushes.

These settings exist out of 2 options,

  • Delay before retry : The amount of seconds before an automatic push should retry.
  • Maximum retries : The amount of recordings that are allowed to start at the same time.

Difference between automatic pushes and pushes

Automatic pushes will try to start every time a source is active and the pushing conditions apply. The pushing conditions will be covered when we'll set up an automatic push. In order for an automatic push to start the live stream needs to be available and active.

If no additional push settings have been set this means when:

  • A live stream is being pushed into MistServer
  • A pull stream has at least 1 viewer or is flagged as always on

A push is a single push attempt done by MistServer. A stream does not have to be available or active for it to be attempted, but they will need to become available else they will fail. The main difference is that this is a singular event.

Important recording knowledge

What outputs can record?

All outputs that can record can be found here

In general you can expect that most outputs of MistServer capable of storage can be used to record. Some recording formats require specific options, a good example is HLS storage, which requires you to set up a MPEG-TS push with an index, which makes it a HLS recording.

Of course, whether your output can be recorded also depends on whether the output supports the codecs of the audio/video tracks inside the stream.

Additionally should you have configured an external writer its corresponding URI protocol will become available as a push target.

You can use variables

You can use variables to ensure recordings will get new filenames so they will not overwrite previous recordings. The moment a recording starts is when the variables would get inserted. Custom variables if set up can be used as well.

If you use a ? Mistserver will assume parameter selection

You can use parameters to select tracks or start pushes at specific points in time. MistServer will always strip the last ? and try to parse parameter options so if for any reason you have a ? in your recording name, add a ? at the end to ensure the name gets completed properly.