Automated install of FAB Subtitler

FAB Subtitler can be installed by starting the file setupfabsubtitler.exe with specific parameters.

There may be two scenarios how FAB Subtitler may be installed:

  • when the USB Dongle is already plugged into the PC and internet connection is available for software activation (INSTALLATION MODE 1)
  • when the USB Dongle is not plugged into the PC or the internet connection is not available for software activation (INSTALLATION MODE 2)

INSTALLATION MODE 1 for FAB Subtitler

When the USB Dongle is already plugged into the PC and internet connection is available for software activation the following command line can be used to install FAB Subtitler:

setupfabsubtitler.exe /verysilent /password=password /norestart

During the installation the software activation over internet will be started. If the activation is successful then the correct FAB Subtitler Edition will be installed. If the activation is not successful then FAB Subtitler will not be installed.

You can use the following parameter to write a log file during installation:

/LOG="C:\Temp\FABSubtitler-Setup.log"

The exitcode after the installation process is 0 if the installation was successful. If the installation was not sucessful then the exitcode will not be 0 and you should check the logfile to see what caused the installation to be aborted.

INSTALLATION MODE 2 for FAB Subtitler

When the USB Dongle is not plugged into the PC or the internet connection is not available for software activation the following command line can be used to install FAB Subtitler:

To install FAB Subtitler STD/PRO/LIVE/MPEG:

setupfabsubtitler.exe /verysilent /password=password /norestart /type=workstation

To install FAB Subtitler BCAST/XCD:

setupfabsubtitler.exe /verysilent /password=password /norestart /type=bcastxcd

Please note that the software license will not be activated during installation and therefore it will be necessary to activate the license during the first start of FAB Subtitler and administrator rights will be required temporarily during activation.

You can use the following parameter to write a log file during installation:

/LOG="C:\Temp\FABSubtitler-Setup.log"

The exitcode after the installation process is 0 if the installation was successful. If the installation was not sucessful then the exitcode will not be 0 and you should check the logfile to see what caused the installation to be aborted.

Installation of LAVFilters

To install the latest version of LAVFilters first download the installation .exe file from

https://github.com/Nevcairiel/LAVFilters/releases

and then start it by:

LAVFilters-0.74.1-Installer.exe /VERYSILENT /NORESTART

You can use the following parameter to write a log file during installation:

/LOG="C:\Temp\LAVFilters-Setup.log"

The exitcode after the installation process is 0 if the installation was successful. If the installation was not sucessful then the exitcode will not be 0 and you should check the logfile to see what caused the installation to be aborted.

Installation of FFmpeg

To install the correct version of FFmpeg for FAB Subtitler first make sure to download the correct FFmpeg version:

https://www.fab-online.com/publicdownload/ffmpeg-4.1.3-win32-shared.zip

After that the following Powershell script (setupffmpegforfabsubtitler.ps1) can be started by

powershell -executionpolicy unrestricted -windowstyle hidden -File setupffmpegforfabsubtitler.ps1 C:\Download\ffmpeg-4.1.3-win32-shared.zip

setupffmpegforfabsubtitler.ps1:

param(
    # Parameter help description
    [Parameter(Mandatory = $true)]
    [string]
    $ffmpegPath
)

Function LogWrite {
    Param ([string]$LogString)
    $Stamp = (Get-Date).toString("yyyy-MM-dd HH:mm:ss`t`t")
    $Line = "$Stamp $LogString"
    Write-Output $Line
}

If (!([bool](([System.Security.Principal.WindowsIdentity]::GetCurrent()).groups -match "S-1-5-32-544"))) {
    LogWrite "ERROR: Please start the script with administrator privileges"
    Exit
}


if (($ffmpegPath -eq "") -or !(Test-Path $ffmpegPath)) {
    LogWrite "ERROR: Path to ffmpeg ZIP file was not specified"
    Exit
}

$FABSubtitlerFolder = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Wow6432Node\FAB\FAB Subtitler').InstDir
if (($FABSubtitlerFolder -eq "") -or !(Test-Path $FABSubtitlerFolder)) {
    LogWrite "ERROR: FAB Subtitler is not installed"
    Exit
}

if (-Not ($FABSubtitlerFolder.EndsWith("\"))) {
    $FABSubtitlerFolder = $FABSubtitlerFolder + "\"
}
New-Item -Path $FABSubtitlerFolder -Name "ffmpeg" -ItemType "directory"
$FABSubtitlerFolder = $FABSubtitlerFolder + "ffmpeg"

LogWrite "Extracting $ffmpegPath to $FABSubtitlerFolder"
Expand-Archive $ffmpegPath -DestinationPath $FABSubtitlerFolder -Force
LogWrite "Finished"

Please note that this Powershell script will fail if FAB Subtitler is not installed and has to be run with administrator rights.