Skip to main content

Executable input for streams

Exec-based inputs

These inputs allow you to consume data piped from another application, without any additional protocol delay or overhead. They take the form of FORMAT-exec:COMMAND, where FORMAT is the stream format it expects to read and COMMAND is a shell command that MistServer will execute to request live stream data in the given format.

For example, the source h264-exec:video_generator will look for the executable or script video_generator in the system path, execute it, and expects raw Annex B H.264 data to be output by said executable or script.

MistServer will automatically (re)start, stop and monitor the provided command as needed, taking the value of the "Always on" setting into account.

Do note that the COMMAND does not support any form of shell escaping or interpreting, so it is impossible to provide arguments or executables which contain spaces. To use these, please create a shell script that call your intended command in the intended way, and have MistServer call the script. This limitation is the result of a full shell parser being outside the scope of the MistServer project and a simple workaround being readily available.

mkv-exec input

Matroska format is supported over this method through:

ts-exec:COMMAND

ts-exec input

MistServer also accept TS data through this method:

ts-exec:COMMAND

h264-exec input

Raw annex B H.264 data can be used through:

h264-exec:COMMAND