Using live transcription in FAB Subtitler

FAB Subtitler supports several transcription services for speech recognition for:

Introduction to live transcription

Live transcription is available in FAB Subtitler LIVE in manual and also automatic mode. In manual mode an operator activates/deactivates live transcription and has the possibility to correct recognized texts. In automatic mode the playout/automation system can activate/deactivate live transcription using HTTP REST API.

When live transcription is activated FAB Subtitler transfers live audio to the cloud and receives the recognized text with a few seconds delay and transmits the recognized text as subtitles. Subtitles can be transmitted in block mode as complete subtitle or in word by word mode to reduce the delay for the viewer.

FAB Subtitler supports more than 60+ languages for live transcription using the following cloud transcription services:

The quality of the recognized text is generally not 100% perfect but in manual mode recognized texts can be corrected before they are transmitted.

Configuration of FAB Subtitler for live transcription

Google Speech to Text

Options - Live Transcription

  • JSON Key: The JSON Key is a text file which has to be loaded from a JSON file or the content has to be copied into this field. You will find a description how to obtain the JSON key further below.

  • To configure the Google Cloud to be used with FAB Subtitler follow these instructions:

  • Visit and create an account. In July 2018 Google offered a trial account with USD 300 credit which can be used within 12 months. This allows extensive testing of the Google cloud service.

  • Before you can use the Google cloud you must first create a project. Create a project with the name FAB-ASR-Project as shown below

  • Select the project FAB-ASR-Project as the current project

  • Create Credentials for a new service account in the API Manager

  • Enter your service account details

google cloud plattform-create service account1

  • Set the service account permissions


  • Create the Json key

google cloud plattform-create service account3

  • After the previous step the JSON file with the credentials for the new service account will be downloaded to the computer. The JSON file shall be imported into FAB Subtitler Options /Special / Transcription / Google Speech to Text:

Adding Json to FAB Subtitler


To configure FAB Subtitler to use Scriptix cloud service as the transcription service open Options / Special / Transcription:

  • Enter the API Key for Scriptix Live (Realtime) Transcription

  • The API Key can be generated by Scriptix in the web interface

  • Register a new account or login to your existing account:

  • Enter your billing profile (in the “Profile & Settings”) and select your preferred subscription (“Subscription & Bundles”)

  • Go to “API Tokens”

Scriptix add api key

  • Select “Realtime” token type:

scriptix token type

  • Copy the realtime API token from the API Tokens page into the FAB Subtitler

Microsoft Azure Cognitive Services Speech

To configure FAB Subtitler to use Microsoft Azure as the transcription service open Options / Special / Transcription:

After logging into

  • Click on “Create a resource” and search for “Speech”

  • The click on “Create” for Speech

  • Enter the data for the fields as in the picture below

  • The confirmation page will also display the Location and then click on “Go to resource”

  • Click on “Keys and Endpoint” to select one of the API Keys that has to be entered in FAB Subtitler settings

Azure keys

Using other service providers over REST API

It is possible to use other transcription services than the ones, which are provided in the FAB Subtitler, if these services can provide the transcribed text to FAB Subtitler LIVE within a HTTP GET request.

The HTTP GET request should look like this:

This will instruct FAB Subtitler LIVE to accept the transcribed text, convert it to subtitles according to the settings of the speech interface in FAB Subtitler Options and transmit the subtitle(s). FAB Subtitler LIVE will take care of the appropriate timing when converting received transcribed text to subtitles.

To enable this functionality, go to “File > Options > Special > Transcription > Live Transcription” and configure live transcription as seen in the picture below:

Rest API transcription service provider

  • On the “Live Transcription” tab select “None (accept transcribed text over REST API)”
  • Activate “Use this service for live transcription”

To control (start or stop) the live transcription over HTTP with the RESTful API, the automatic operation mode has to be enabled and configured. Detailed instructions on how to set-up the automatic mode can be found below in the section “Controlling Live transcription using RESTful API”

This will allow you to send a HTTP GET REST request to start or stop the live transcription functionality:

  • HTTP GET http://ip:port/livetranscription/start

This will instruct FAB Subtitler LIVE to go ONAIR (establish a connection to output devices for transmission of subtitles).

  • HTTP GET http://ip:port/livetranscription/stop

This will instruct FAB Subtitler LIVE to go OFFAIR (close the connection to output devices for transmission of subtitles).

A real-world usage example would look like this:

  • The automation system would have to send HTTP GET start and stop calls to FAB Subtitler LIVE for programs that need live subtitling with live transcription. You would have to check if your automation system can send such HTTP GET requests as described above to FAB Subtitler LIVE.
  • In case that you would like to use your own live transcription service then this live transcription service would have to provide the recognized text to FAB Subtitler LIVE within a HTTP GET request as described above.

Using Live Transcription Functionality in FAB Subtitler

FAB Subtitler can transfer live audio received over SDI video or IP video to the live transcription service and transmit live subtitles with texts that are recognized by the live transcription service.

To be able to use this functionality it is first necessary to configure the “Video in a Window” functionality in FAB Subtitler correctly so that FAB Subtitler will receive live video/audio and display it on the PC monitor. Find out how on this page.

To display live video first create a new subtitle file and then click on “Display / Editor over video”. After the video is displayed on the PC monitor and you also hear the audio you can activate the transfer of the audio to the transcription service by:

  • Click on “News” in the ribbon.
  • Then click on “Speech Interface” to display a window with the speech interface.
  • Enable or disable “Automatic Mode” depending on whether you wish to transmit recognized text automatically or if you wish to be able to correct the text before transmitting the text as subtitles.
  • Then click on “Transcribe from Video” or “Transcribe from Microphone”

The recognized text will appear in the speech interface window.

Alternatively for testing purposes it is also possible to use a video file as a source for live transcription. In such case simply open a video file in FAB Subtitler, play the file and click on “Transcribe from Video”. The played audio from the video file will be sent to the live transcription service and the transcribed text will appear in the speech interface.

Detailed information about the speech interface can be found here: How to use the speech interface.

Controlling Live transcription using RESTful API

To enable the RESTful API over http please configure FAB Subtitler the following way:

  • In Options/Special/Automation configure the following:

Live transcription automation configuration

Detailed information on how to check, whether the RESTful API is available can be found here: Configuring RESTful service API

  • Start the Automatic mode in Extras / Tools / Start automatic mode:

Start automatic mode

  • A new window “Live transcription status” will appear in the top right corner allowing the user to manually stop the automatic mode and control the transcription if required:

Live transcription status

FAB Subtitler LIVE and MPEG offer a RESTful service API, which can be used to control the Live transcription over http to perform the following actions:

  • START the live transcription
  • STOP the live transcription

The following parameters, which are optional, can be defined:

  • provider: None, Azure, Google, Scriptix
  • language
  • filename
  • useMic – transcribe from mic or from received live video

If the parameter isn’t explicitly defined, the FAB Subtitler will select the default parameter as it is defined in “Options” and useMIC will be set to “False”.

Example REST API requests:

Start live transcription request: GET /livetranscription/start
Example: GET http://ip:port/livetranscription/start?language=de-DE&provider=Google&filename=transcription.stl&useMic=False
Simplified example: GET http://ip:port/livetranscription/start

Stop live transcription request: GET /livetranscription/stop
Example: http://ip:port/livetranscription/stop