Skip to main content

Encoder - MKV In/Out

Encoder - MKV In/Out

This encoder allows you to run a custom command. Whatever ran should provide matroska format media back to MistServer. You can run both commandline applications as well as scripts. As long as MistServer receives matroska on it's standard input.

codec support

TypeCodecs
AudioAny compatible with MistServer
VideoAny compatible with MistServer

Things to keep in mind

MistServer wants matroska data, some applications like ffmpeg post a lot of header & debug data as well. While it will do its best to filter through non-matroska data it would be wise to make adjustments to the command you're running so there's as little as possible interference.

Examples

For examples on this look at our ffmpeg matroska in/out and gstreamer matroska in/out guides.

Configuration

Interface

The interface offers a simple field in which you can put the command or path to script to run.

image

Configuration file / API

The following would be an example of how to add MKV In/Out to your stream.

      "processes": [
{
"exec": "command or script goes here",
"exit_unmask": false,
"inconsequential": false,
"process": "MKVExec",
"tags_inhibit": []
}

Command line

This would be adding a command to the stream example.

MistProcMKVExec '{"exit_unmask":0,"inconsequential":false,"process":"MKVExec","exec":"command or script goes here","source":"example"}'

Required options

KeyNameTypeHelp / DescriptionSelect OptionsDefault / Value
processprocess selectorselectSelects the specific processMKVExec
execExecutablestringWhat executable to run on the stream data

General process options

KeyNameTypeDefault / ValueUnitHelp / DescriptionOptions (if applicable)
debugDebug leveldebugDebug message level for process; inherits from stream setting
exit_unmaskUndo masks on process exit/failbooleanfalseResets input track masks to defaults when process exits or fails
sinkTarget streamstringWhat stream the encoded track should be added to (defaults to source stream)
sourceSource streamstringWhich stream the encoded track should pull from, defaults to the stream the process is added towards
source_maskSource track maskselectKeep original valueDefines which internal processes have access to source tracksEverything, Processing tasks, Processing + pushing tasks, Processing + viewing tasks
target_maskOutput track maskselectKeep original valueDefines which internal processes have access to output tracksEverything, Viewer, Pushing, Processing, and combinations
track_selectSource selector(s)stringaudio=all&video=allWhat tracks to select for input (defaults to all audio and video tracks)
start_controlProcess start behaviourgroupControls when and how process startsSee below

start control options

SubkeyNameTypeDefaultUnitHelp / DescriptionOptions (if applicable)
inconsequentialInconsequential processboolfalseProcess not required for stream to be considered active
restart_delayRestart delayuint0msDelay between restarts
restart_typeRestart behaviourselectfixedWhat to do when the process exits/failsfixed, backoff, disabled
tags_inhibitTag inhibitor(s)inputlist""List of tags preventing process start
track_inhibitTrack inhibitor(s)stringaudio=none&video=none&subtitle=noneWhich tracks inhibit process start