Radiant Media Player

Automated player localization


Radiant Media Player is equipped with various labels acting as helpers to better understand the player UI. Player labels are available in 26 languages. The player will automatically detect which is the preferred language for the viewer and display player labels in that language. Currently supported languages are:

  • Arabic
  • Chinese (simplified)
  • Danish
  • Dutch
  • English
  • Finnish
  • French
  • German
  • Hebrew
  • Hindi (Devanagari script)
  • Hungarian
  • Indonesian
  • Italian
  • Japanese
  • Korean
  • Norwegian
  • Polish
  • Portuguese
  • Brazilian Portuguese
  • Russian
  • Spanish
  • Swedish
  • Taiwanese Mandarin
  • Thai
  • Turkish
  • Vietnamese

Feedback welcome! if you spot an area of improvement for a player label in your native language or if you want to help in adding new languages to our player please contact us.

Player settings

detectViewerLanguage: Boolean

When detectViewerLanguage is set to true the player will automatically detect viewer preferred language and translate player labels in this language (amongst the 26 supported languages). Default: true.

labels: Object

When detectViewerLanguage is set to false you can pass to the player a custom list of labels, to support other languages for example. This is done by passing an Object of labels to the player through the labels setting. Default: {}.

Passing custom labels

Below is a list of all player labels. When passing custom labels to the player through the labels setting, you must fill all required slots for the player to display them. Unfilled slots will be displayed using the English language when passing custom labels.

 bitrates: {
   auto: 'Auto',
   renditions: [
     ['Low quality', 'High quality'],
     ['Low quality', 'Medium quality', 'High quality'],
     ['Low quality', 'Medium quality', 'High quality', 'Maximum quality'],
     ['Low quality', 'Medium quality', 'High quality', 'Higher quality', 'Maximum quality']
 hint: {
   play: 'Play',
   pause: 'Pause',
   seek: 'Seek Bar',
   enterFullscreen: 'Full screen',
   exitFullscreen: 'Exit full screen',
   quickRewind: 'Quick-rewind',
   quickForward: 'Quick-forward',
   sharing: 'Share',
   sharingLink: 'Link to video',
   sharingEmbedCode: 'Embed video',
   quality: 'Quality',
   volume: 'Volume',
   mute: 'Mute',
   unmute: 'Unmute',
   minus: 'Minus',
   plus: 'Plus',
   speed: 'Speed',
   captions: 'Captions',
   track: 'Track',
   transcript: 'Transcript',
   audio: 'Audio languages',
   chapters: 'Chapters',
   live: 'LIVE',
   pip: 'PiP',
   close: 'Close',
   settings: 'Settings',
   back: 'Back',
   cast: 'Google Cast',
   airplay: 'AirPlay',
   playlist: 'Playlist',
   next: 'Next',
   previous: 'Previous',
   related: 'Related',
   upNext: 'Up Next',
   up: 'Up',
   down: 'Down',
   left: 'Left',
   right: 'Right',
   default: 'Default',
   vr: 'VR',
   off: 'Off'
 fccCaptions: {
  fontColor: 'Font Color',
  fontOpacity: 'Font Opacity',
  fontSize: 'Font Size',
  fontFamily: 'Font Family',
  fontEdge: 'Font Edge',
  backgroundColor: 'Background Color',
  backgroundOpacity: 'Background Opacity',
  windowColor: 'Window Color',
  windowOpacity: 'Window Opacity'
 error: {
   customErrorMessage: 'This content is currently unavailable.',
   noSupportMessage: 'This content cannot be played on this device.',
   noSupportDownload: 'You may download video by clicking on that link',
   noSupportInstallChrome: 'Using the latest version of Google Chrome may help to view this content.',
   noSupportInstallChromeLink: ''
 ads: {
   controlBarCustomMessage: 'Ad',
   skipMessage: 'Skip ad',
   textForClickUIOnMobile: 'Learn more',
   adBlockerDetectedMessage: 'Ad-blocker detected. To view this content please disable your ad-blocker.'

When passing custom labels and using the Google IMA SDK to display video ads make sure to set a custom value to adLocale setting.

Player code example for passing custom labels:

<script src=""></script>
<!-- Player container element -->
<div id="rmp"></div>
const src = {
  mp4: [
// Define player labels
const labels = {
  bitrates: {
    auto: 'Auto',
    renditions: [
      ['Basse qualité', 'Haute qualité'],
      ['Basse qualité', 'Qualité moyenne', 'Haute qualité'],
      ['Basse qualité', 'Qualité moyenne', 'Haute qualité', 'Qualité maximale'],
      ['Basse qualité', 'Qualité moyenne', 'Haute qualité', 'Très haute qualité', 'Qualité maximale']
  hint: {
    play: 'Lire',
    pause: 'Pause',
    seek: 'Barre de recherche',
    enterFullscreen: 'Plein écran',
    exitFullscreen: 'Quitter le mode plein écran',
    quickRewind: 'Retour rapide',
    quickForward: 'Avance rapide',
    sharing: 'Partager',
    sharingLink: 'Lien vers la vidéo',
    sharingEmbedCode: 'Intégrer la vidéo',
    quality: 'Qualité',
    volume: 'Volume',
    mute: 'Désactiver le son',
    unmute: 'Activer le son',
    minus: 'Moins',
    plus: 'Plus',
    speed: 'Vitesse',
    captions: 'Sous-titres',
    track: 'Piste',
    transcript: 'Transcription',
    audio: 'Langues audio',
    chapters: 'Chapitres',
    live: 'DIRECT',
    skipToLive: 'Aller au direct',
    pip: 'PiP',
    close: 'Fermer',
    settings: 'Réglages',
    back: 'Retour',
    cast: 'Caster',
    airplay: 'AirPlay',
    playlist: 'Playlist',
    next: 'Suivant',
    previous: 'Précédent',
    related: 'Médias liés',
    upNext: 'A suivre',
    up: 'Vers le haut',
    down: 'Vers le bas',
    left: 'Vers la gauche',
    right: 'Vers la droite',
    default: 'Remise à zéro',
    vr: 'VR',
    off: 'Désactivé'
  error: {
    customErrorMessage: 'Ce contenu n\'est pas disponible pour le moment.',
    noSupportMessage: 'Ce contenu ne peut être lu sur cet appareil.',
    noSupportDownload: 'Vous pouvez télécharger cette vidéo en cliquant sur ce lien',
    noSupportInstallChrome: 'Utiliser la dernière version de Google Chrome peut vous aider à lire ce contenu.',
    noSupportInstallChromeLink: ''
  ads: {
    controlBarCustomMessage: 'Pub',
    skipMessage: 'Passer la pub',
    textForClickUIOnMobile: 'En savoir plus',
    adBlockerDetectedMessage: 'Bloqueur de publicité détecté. Pour accéder à ce contenu, merci de le désactiver.'
// Player settings
const settings = {
  src: src,
  licenseKey: 'your-license-key',
  width: 640,
  height: 360,
  speed: true,
  sharing: true,
  // Passing custom labels
  detectViewerLanguage: false,
  labels: labels,
  contentMetadata: {
    poster: [
const rmp = new RadiantMP('rmp');

Hiding player labels

If you do not want player labels (those are hint.sharing, hint.quality, hint.speed, hint.captions,, hint.cast, hint.related) to be shown within the player you can hide them with the hideExternalPlayerLabels player setting set to true. This setting must be Boolean either true or false. false is the default.

Support notes

The bitrates.renditions label only applies for MP4 and WebM progressive download. For HLS or DASH renditions information (height and bitrate) are automatically displayed instead. You can tune the label for HLS or DASH.

Labels are set using the JavaScript textContent property. Take this into account when using special characters.

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License.

©2015-2021 Radiant Media Player. All rights reserved.