Multi-operating system setup

Concept

Each operating system has different file paths that need to be adjusted accordingly. Whenever there is an input for a file path in the settings, the software provides you the posibility to set the divergent paths for the operatingh systesm. The current operating system will be underlined.

Settings

It looks something like this - in this example Windows is the current operating system:

If you open the settings file in a text editor it will look like this:

... "root": { "value": { "lin": "/mnt/server/path/to/library", "mac": "/Volumes/server/path/to/library", "win": "C:\\server\\path\\to\\library" } }, ...

 

Since the config file are in a JSON file format all backslashes “\” need to be escaped: \ → \\

 

Transcoding Tasks

The custom command transcoding task might have an different executable for the operating systems. There is a pulldown box to check if the transcoding task is valid for a certain operating system.

Example scripts

Some example scripts from the Github page need to be adjusted for the different operating systems.
You sometimes will find the path to the executables (e.g. FFmpeg) on the top of each scripts.

import sys CURRENT_OS = sys.platform if CURRENT_OS in ("linux", "linux2"): # Linux EXECUTABLE_FFMPEG = '/usr/bin/ffmpeg' elif CURRENT_OS == "darwin": # MacOS EXECUTABLE_FFMPEG = '/usr/bin/ffmpeg' elif CURRENT_OS in ("win32", "win64"): # Windows EXECUTABLE_FFMPEG = 'C:/ffmpeg/bin/ffmpeg.exe' else: raise Exception("Unknown operating system: {}".format(CURRENT_OS))