Base theme and other preconfigured themes

Pexip Infinity ships with its own Base theme. Files and configuration settings from the Base theme are used when no other theme has been selected, or the selected theme does not contain the required file or setting.

You cannot change the contents of the Base theme, but you can create your own themes by uploading customized versions of one or more of the Base files.

When a user accesses a service that has a customized theme applied, Pexip Infinity presents them with the sounds and images from the files included in that theme. If the customized theme does not include a specific file, or the service does not have a theme applied, then Pexip Infinity uses the relevant file from the default theme. If the default theme does not include the specific file either, then the file from the Base theme is used.

The same rules apply when modifying the configuration settings in the themeconfig.json file. If any values within this file are not specified, Pexip Infinity will use the values from the Base theme's themeconfig.json file.

The following sections list the complete set of configuration, audio, and image files that make up the Base theme. If you want to see details of the base theme used in legacy-style themes (customized themes used with version 17 or earlier of Pexip Infinity), see Legacy themes file requirements.

In addition to the files and settings included within the Base theme, there are some advanced settings (such as controlling where screen text is positioned) that are used by default but are not contained with the Base theme's themeconfig.json file, but they can be overridden by adding them to your own customized themeconfig.json file. See Splash screen elements (to control the size and position of text/graphics) for full information about what can be configured, and Default element configuration for each screen to see the default positions, offsets and sizes used by each splash screen.

Pexip Infinity also ships with a number of preconfigured themes which are similar to the Base theme, but contain alternative audio files with different conference entry and exit tones, and alternative references to the "#" key (as the "hash key" or as the "pound key").

The default font for the in-conference display of participant names is Roboto (which cannot be changed), or if that is not available for the character set, Noto Sans. All other overlay text (splash screen text and in-conference messages) uses GT Pressura Light and this can be changed by using a customized theme.

Theme configuration

The themeconfig.json file is the theme's primary configuration file. It is a JSON dictionary that specifies the background and layout of the splash screens used when joining a conference (such as the Welcome screen and PIN entry screens), specifies which image files are used, and controls some of the features and overlays that are used within a conference. It does not control any of the audio (sound) elements of the theme.

{
    "dtmf_conference_control_commands" : {
        "*7" : "toggle_lock",
        "*5" : "toggle_guest_mute",
        "##" : "end_conference"
    },
    "plus_n_indicator_text_color" : "0xFFFFFF",
    "recording_indicator_text" : "Recording",
    "conference_locked_indicator_text": "Conference locked",
    "test_call_service_media_delay" : 2,
    "disable_streaming_indicator" : false,
    "disable_conference_locked_indicator": false,
    "streaming_indicator_text" : "Streaming enabled",
    "public_streaming_indicator_text": "Public streaming enabled",
    "enable_dtmf_conference_control" : true,
    "disable_watermark_icon" : false,
    "plus_n_indicator_bg_color" : "0x323232",
    "test_call_service_disconnect_timeout" : 10,
    "theme_version": 2,
    "conference_unlocked_indicator_text": "Conference unlocked",
    "conference_locked_indicator_n_waiting_text": "{number_of_waiting_participants} waiting for host"
}

Each object in the themeconfig.json file is described in the following table.

All of the colors in these controls are specified using RGB hexadecimal notation (in the format 0xnnnnnn).

Name Description Value in Base theme

dtmf_conference_control_commands

If DTMF controls are enabled, this section specifies the DTMF digits used for each control. Current controls are:

  • toggle_lock (*7): toggles the locked/unlocked state of the conference
  • toggle_guest_mute (*5): toggles the muted/unmuted status of all Guest participants
  • end_conference (##): terminates the conference

When changing the DTMF controls, you must only edit the digits inside the first pair of quotes on each line (i.e. *7, *5 and ##). Editing anything else will disable DTMF commands.

Each control must be two DTMF digits long, and all the commands must be different. See Changing DTMF controls for guidance on best practice.

"*7" : "toggle_lock"
"*5" : "toggle_guest_mute"
"##" : "end_conference"

plus_n_indicator_text_color

The color of the text on the thumbnail that shows how many additional participants are in the conference. This is used in conjunction with plus_n_indicator_bg_color. 0xFFFFFF
(white)
recording_indicator_text The text that appears to the right of the recording indicator when it slides out over the main video image. Recording

conference_locked_indicator_text

The text that appears to the right of the conference locked indicator when it slides out over the main video image.

This has a maximum limit of 20 characters.

Conference locked

test_call_service_media_delay

The number of seconds that media is delayed before being looped back to the caller when using a Test Call Service.

(For more information, see Configuring the Test Call Service.)

2

disable_streaming_indicator Determines whether the streaming indicator icon is disabled (true) or enabled (false). false

disable_conference_locked_indicator

Determines whether the conference locked and conference unlocked indicators are disabled (true) or enabled (false). false
streaming_indicator_text The text that appears to the right of the streaming indicator when it slides out over the main video image. Streaming enabled
public_streaming_indicator_text The text that appears to the right of the streaming indicator when it slides out over the main video image when Google Meet public streaming is enabled. Public streaming enabled

enable_dtmf_conference_control

Determines whether Host participants can use DTMF to control the conference (true) or not (false).

true
disable_watermark_icon Determines whether the watermark icon is overlaid onto the main speaker video (false) or is not used (true). See Video watermarking for more information. false

plus_n_indicator_bg_color

The background color of the thumbnail that shows how many additional participants are in the conference. This is used in conjunction with plus_n_indicator_text_color. 0x323232
(dark gray)

test_call_service_disconnect_timeout

The number of seconds that a user can test their media before the disconnect message is played, when using a Test Call Service.

10

theme_version Controls whether legacy (version "1") or new style (version "2") themes are used. If "theme_version": 2 is not present in a themeconfig.json file at the lowest level of the theme file hierarchy then it is assumed to be a legacy-style theme (see How do I know which files and configuration settings will be used in a particular VMR? for more information). 2

conference_unlocked_indicator_text

The text that appears to the right of the conference unlocked indicator when it slides out over the main video image. Conference unlocked

conference_locked_indicator_n_waiting_text

The text that appears underneath the conference locked indicator text, and shows the number of participants waiting to join the locked conference.

{number_of_waiting_participants} waiting for host

◊ Note that Google Meet public streaming has not been launched by Google yet.

Audio files

The following table lists the default audio files and their content, which is contained within the Base theme:

Image files

Background image files (JPG)

Two full-size background JPG image files are used — one (which is just a black screen) for the Test Call Service, and one (fjord) for all other cases. Other SVG images and text that are specified in other theme files is overlaid onto these screens according to any layout requirements that have been added to the themeconfig.json file, and the type and status of the call.

File name Image size (width, height) Content in Base theme Notes
background.jpg 1920 x 1080 pixels
JPG (RGB mode only)
The background image used by default on all splash screens except for those used by the Test Call Service.
background_test_call.jpg 1920 x 1080 pixels
JPG (RGB mode only)
The background image (a black screen) used by default on the Test Call Service splash screens.

Splash screens

The following table lists the splash screens that you can configure within a theme. It describes when that screen is shown and shows its default appearance. It also identifies the screen key to use in a screens object if you want to override the default behavior, and the default icon image and text label elements used on that screen.

All of the screens used when joining a conference use background.jpg as the default background image. The Test Call Service uses background_test_call.jpg during the call.

Overlay SVG image files

All of the overlay vector images in the Base theme are listed below. All of the images are white, except for icon_inactive_page.svg, and are shown here against a gray background. The table also lists the splash screens on which the overlay images are used by default.

File name Content in Base theme Associated default splash screens
icon_active_page.svg

test_call_welcome
test_call_in_progress
test_call_complete
(they are rendered as the progress dots along the bottom of the screen)

icon_connecting.svg connecting
inlobby_status_unknown
icon_error.svg

error_capacity_exceeded
error_insufficient_licenses
error_invalid_license

icon_error_insufficient_video_licenses.svg

error_insufficient_video_licenses
icon_inactive_page.svg

test_call_welcome
test_call_in_progress
test_call_complete
(they are rendered as the progress dots along the bottom of the screen)

icon_is_in_lobby.svg* inlobby

icon_other_participants_audio_only.svg

other_participants_audio_only
icon_pin_entry.svg pin_welcome
pin_entry
icon_pin_entry_digit.svg pin_entry
icon_pin_invalid.svg pin_invalid
icon_streaming_screen.svg

streaming_in_progress
stream_waiting

icon_timeout.svg timeout

icon_virtual_reception_conference_id_entry.svg

virtual_reception_conference_id_entry

icon_virtual_reception_conference_id_invalid.svg

virtual_reception_conference_id_invalid

icon_virtual_reception_connecting.svg

virtual_reception_connecting

icon_virtual_reception_welcome.svg

virtual_reception_welcome
icon_waiting_for_host.svg waiting_for_host
icon_welcome.svg welcome
pin_correct
* This is new in version 24.

Overlay SVG image files used by the Test Call Service

These overlay SVG image files are used only by the Test Call Service:

File name Content in Base theme Associated default splash screens
icon_test_call_complete.svg test_call_complete
icon_test_call_welcome.svg test_call_welcome

Indicator graphics used within an ongoing conference

The following graphics may be used during a conference. The SVG indicators are rendered on top of a dark gray background (the color is 0x7f323232, where 7f is the alpha channel which makes the background slightly transparent). The gray background is not part of the actual SVG image itself and it cannot be customized. If you use your own customized SVG images, ensure that they look appropriate when displayed on sizes from 20x20px to 48x48px, and are recognizable when displayed as 12x12px for participants that use very low resolutions.

If you are using a theme to customize gateway calls only, then you only need to consider a subset of these images, as indicated in the table below.

File name Content in Base theme Notes Used in gateway calls
icon_audio.svg

Used to represent an audio-only participant.

For more information, see Features common to all layouts.

icon_conference_locked.svg

Slides out over the main video image (displayed to Hosts only) to indicate that the conference is currently locked.

It is used in conjunction with the conference_locked_indicator_text and the conference_locked_indicator_n_waiting_text in the themeconfig.json file.

 
icon_conference_unlocked.svg

Slides out over the main video image (displayed to Hosts only) to indicate that the conference has been unlocked.

It is used in conjunction with the conference_unlocked_indicator_text in the themeconfig.json file.

 
icon_no_presentation.svg

Used to indicate that there is currently no presentation stream.

It is used by default on the no_presentation splash screen.

 
icon_no_video.svg

Shown when a video stream is not available.

It is used by default on the no_main_video and no_incoming_video splash screens. It should look appropriate when displayed at sizes up to 400 x 400 pixels.

presence_avatar_image.jpg

Shown next to the conference alias when using legacy Infinity Connect clients, and as the contact avatar when using Skype for Business / Lync.

When the image is used, the corners are cropped so that it can be displayed as a round image.

It is a JPG image (RGB mode only) and should be 128 x 128 pixels.

icon_recording.svg

Indicates that the conference is being recorded.

icon_streaming.svg

Indicates that the conference is being streamed.

icon_public_streaming.svg Indicates that the conference is being publicly streamed via a Google Meet conference.

watermark_icon.png

Transparent image used for applying a watermark to the main speaker video in a conference.

The default image is a white Pexip logo with 40% transparency and is shown here against a blue background.

It is a PNG image and should be 200 pixels wide x 100 pixels high.

See Video watermarking for more information.

 

† Only applies when the gateway call is into an externally-hosted conference, such as a Microsoft Teams or Skype for Business meeting, or Google Meet. In Google Meet conferences, the icon_recording.svg image is used when the conference is being recorded and the icon_streaming.svg image is used when the conference is being streamed. The icon_public_streaming.svg icon is used only in Google Meet conferences.

◊ Note that Google Meet public streaming has not been launched by Google yet.

Preconfigured themes

Pexip Infinity ships with a number of preconfigured themes. These themes can be copied and edited, making it easier for you to select and create themes suitable for your deployment.

The preconfigured themes are identical to the Base theme with the following exceptions:

  • some include entry and exit tones (the Base theme contains "empty" tones files)
  • some refer to the "#" key as the "hash key" (the Base theme refers to this as the "pound key").

The files that may differ from those in the Base theme are:

  • Entry tone: conf-participant_entry_tone_48kHz_mono.wav
  • Exit tone: conf-participant_exit_tone_48kHz_mono.wav
  • "#" key reference: 2sd-number-pound-key_48kHz_mono.wav, conf-getpin_pound-key_48kHz_mono.wav, conf-waithostpin_pound-key_48kHz_mono.wav

The content of the above files for each of the preconfigured themes is as follows:

Theme Entry tone Exit tone "#" key references
Pexip theme (English_US) * <empty file> <empty file> "...the pound key"
Pexip theme (English_UK) <empty file> <empty file> "...the hash key"
Pexip theme (English_US) with entry tones A high tone followed by a low tone A low tone followed by a high tone "...the pound key"
Pexip theme (English_UK) with entry tones A high tone followed by a low tone A low tone followed by a high tone "...the hash key"

* This theme is identical to the Base theme, although unlike the Base theme it can be edited.