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))