Skip to main content
Version: 1.41.0

Sofie Core: System Configuration

Sofie Core is configured at it's most basic level using a settings file and environment variables.

Environment Variables

SettingUseDefault valueExample
METEOR_SETTINGSContents of settings file (see below)$(cat settings.json)
NTP_SERVERSList of time servers to sync the system to (comma separated).0.pool.ntp.org,
1.pool.ntp.org,
2.pool.ntp.org
TZThe default time zone of the server (used in logging)Europe/Amsterdam
MAIL_URLEmail server to use. See https://docs.meteor.com/api/email.htmlsmtps://USERNAME:PASSWORD@HOST:PORT
LOG_TO_FILEFile path to log to file/logs/core/

Settings File

The settings file is an optional JSON file that contains some configuration settings for how the Sofie Core works and behaves.

To use a settings file:

  • During development: meteor --settings settings.json
  • During prod: environment variable (see above)

The structure of the file allows for public and private fields. At the moment, Sofie only uses public fields. Below is an example settings file:

{
"public": {
"frameRate": 25
}
}

There are various settings you can set for an installation. See the list below:

Field nameUseDefault value
frameRateThe framerate used to display time-codes in the GUI25
defaultToCollapsedSegmentsShould all segments be collapsed by default, until the user expands themfalse
autoRewindLeavingSegmentShould segments be automatically rewound after they stop playingfalse
autoExpandCurrentNextSegmentShould the segments be expanded when they are On Air or Next, useful with defaultToCollapsedSegmentsfalse
disableBlurBorderShould a border be displayed around the Rundown View when it's not in focus and studio mode is enabledfalse
defaultTimeScaleAn arbitrary number, defining the default zoom factor of the Timelines1
allowGrabbingTimelineCan Segment Timelines be grabbed to scroll them?true
enableUserAccountsEnables User Accounts and Authentication. If disabled, all user stations will be treated as a single, anonymous userfalse
allowUnsyncedSegmentsSwitches behavior between unsyncing entire Rundowns or just Segmentsfalse
allowRundownResetOnAirShould the user be allowed to reset Rundowns when they are On Airfalse
defaultDisplayDurationThe fallback duration of a Part, when it's expectedDuration is 0. __In milliseconds3000
info

The exact definition for the settings can be found in the code here.