MIME-тип поддерживается при первом просмотре видео, но не поддерживается в других случаях в пакете - PullRequest
0 голосов
/ 14 июня 2019

Я использую **hls.js** для прямой трансляции. Когда я посмотрю видео на своем пакете для xbox, я проверю, поддерживает ли мой браузер расширения MediaSource. В первый раз он вернет истину, а в другие - ложь.

вот хранилище Hls.js (https://github.com/video-dev/hls.js/blob/master/docs/API.md#first-step-setup-and-support)

function getMediaSource() {
 if (typeof window !== "undefined") {
   return window.MediaSource || window.WebKitMediaSource
 }
}

function isSupported() {
 var mediaSource = getMediaSource();
  var isTypeSupported = mediaSource && typeof mediaSource.isTypeSupported === "function" && mediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"');

  var x =  !!isTypeSupported ;
  if (!x) {
     console.log("do not support!")
     console.log( typeof mediaSource.isTypeSupported)
     console.log(mediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'))
     }

  return !!isTypeSupported
}



loadVideo(src: string) {
 if (Hls.isSupported()) {
    this.createVideoElement();
 } else {

   ... //show some message
 }

 ...
}

Я ожидаю, что Hls.isSupported() всегда истинно, но фактический вывод ложен после первого раза.

...