0

How to do:

  • Pre loading video on play
  • Change resolution
  • Change language

In multiple platforms I see these techniques used but I can't understand which api they use to do these things does anyone have an idea? (Sorry for the ignorance I'm Junior developer)

1 Answers1

1

If you are using HTML5 on a browser then there are a set of events which the HTML5 video playback generates at different stages and which you can register to monitor and then take whatever action you want - for example change language etc.

There is a really nice illustration of the various events and their values when a vide plays (at the time of writing) here:

It's worth noting that the type of features you are describing are usually built into a HTMl5 video player if it is on a website or a native player if it is on Mobile.

For example on a browser the open source DASH if player, https://reference.dashif.org/dash.js/latest/samples/dash-if-reference-player/index.html, will change resolutions for ABR streams and provide the user controls to change it manually and to set the langage.

On Android the open source ExoPlayer, https://github.com/google/ExoPlayer, provides similar functionality, and on iOS the built in media library https://developer.apple.com/documentation/avfoundation?language=objc, provides similar functionality.

To understand ABR streams and how and why they change resolutions this answer may help: (https://stackoverflow.com/a/42365034/334402)

Mick
  • 24,231
  • 1
  • 54
  • 120