Добавьте и измените заголовки или даже поймайте изменение события на MediaElement. JS, используя API - PullRequest
0 голосов
/ 06 марта 2020

Я могу найти метод API, чтобы добавить новый заголовок или изменить существующий в MediaElement API.

Цель состоит в том, чтобы у меня было много файлов SRT, и мне нужно отобрать выбранный из пользователя и затем конвертируйте его в VTT, прежде чем показывать его на самом видео ... преобразование субтитров при загрузке видео займет много времени и ресурсов, поэтому я сосредоточусь на том, чтобы найти способ конвертировать только выбранный.

чтобы поймать событие, я делаю это так:

    player = new MediaElementPlayer(v, {
            features: ['playpause', 'current', 'progress', 'duration', 'tracks', 'volume', 'fullscreen'],
            success: function (mediaElement, originalNode) {
                // do things
                mediaElement.addEventListener('captionschange', function(e) {
                    console.log("caption changed");

                });
            }
    });

HTML:

  <video crossorigin="anonymous" id="player" width="640" height="360" src="//iandevlin.github.io/mdn/video-player-with-captions/video/sintel-short.webm">
      <track src="//iandevlin.github.io/mdn/video-player-with-captions/subtitles/vtt/sintel-en.vtt" kind="subtitles" srclang="en" label="English">
      <track src="//iandevlin.github.io/mdn/video-player-with-captions/subtitles/vtt/sintel-es.vtt" kind="subtitles" srclang="es" label="Spanish">
      <track src="//iandevlin.github.io/mdn/video-player-with-captions/subtitles/vtt/sintel-de.vtt" kind="subtitles" srclang="de" label="German">
  </video>

Итак, событие обнаружено, но проблема остается, какой заголовок выбран?

Ваша помощь приветствуется, спасибо!

...