Web/API/AudioTrack/language

From Get docs


The read-only AudioTrack property language returns a string identifying the language used in the audio track. For tracks that include multiple languages (such as a movie in English in which a few lines are spoken in other languages), this should be the video's primary language.

Syntax

var audioTrackLanguage = AudioTrack.language;

Value

A DOMString specifying the BCP 47 (RFC 5646) format language tag of the primary language used in the audio track, or an empty string ("") if the language is not specified or known, or if the track doesn't contain speech.

For example, if the primary language used in the track is United States English, this value would be "en-US". For Brazilian Portuguese, the value would be "pt-BR".

Example

This example locates all of a media element's primary language and translated audio tracks and returns a list of objects containing each of those tracks' id, kind, and language.

This could then be used to build a user interface for selecting the language the user would like to listen to while watching a movie, for example.

function getAvailableLanguages(el) {
  var trackList = [];
  const wantedKinds = [
    "main", "translation"
  ];

  el.audioTracks.forEach(function(track) {
    if (wantedKinds.includes(track.kind)) {
      trackList.push({
        id: track.id,
        kind: track.kind,
        language: track.language
      });
    }
  });
  return trackList;
}

Specifications

Specification Status Comment
HTML Living StandardThe definition of 'AudioTrack.language' in that specification. Living Standard  
HTML5The definition of 'AudioTrack.language' in that specification. Recommendation  

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
language

Chrome Full support 37

Disabled'

Full support 37

Disabled'

Disabled' From version 37: this feature is behind the enable-experimental-web-platform-features preference (needs to be set to enabled). To change preferences in Chrome, visit chrome://flags.

Edge Full support 79

Disabled'

Full support 79

Disabled'

Disabled' From version 79: this feature is behind the enable-experimental-web-platform-features preference (needs to be set to enabled). No support 12 — 79


Firefox Full support 33

Disabled'

Full support 33

Disabled'

Disabled' From version 33: this feature is behind the media.track.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

IE

Full support 10

Opera Full support 24

Disabled'

Full support 24

Disabled'

Disabled' From version 24: this feature is behind the enable-experimental-web-platform-features preference (needs to be set to enabled).

Safari

Full support 6.1

WebView Android

No support No

Chrome Android Full support 37

Disabled'

Full support 37

Disabled'

Disabled' From version 37: this feature is behind the enable-experimental-web-platform-features preference (needs to be set to enabled). To change preferences in Chrome, visit chrome://flags.

Firefox Android Full support 33

Disabled'

Full support 33

Disabled'

Disabled' From version 33: this feature is behind the media.track.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

Opera Android Full support 24

Disabled'

Full support 24

Disabled'

Disabled' From version 24: this feature is behind the enable-experimental-web-platform-features preference (needs to be set to enabled).

Safari iOS

Full support 7

Samsung Internet Android

No support No

Legend

Full support  
Full support
No support  
No support
User must explicitly enable this feature.'
User must explicitly enable this feature.