Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Chyba v media-source. Video se nepřehrává

Aktivity
Avatar
Daniel Král
Člen
Avatar
Daniel Král:19.7.2018 23:43

Ná své stránce mám tento media-source script. Prosím vás poradí mi někdo proč se mi video nepřehrává, popřípadě jak ho spustit ? Předem děkuji :-)

<!doctype html>
<html lang="en">
<head>
    <title>Filereader</title>
    <style>
        div {
            font-family: "Helvetica Neue";
            line-height:22px;
            font-size:15px;
            margin:10px 0;
            color: #333;
        }
        em {
            padding: 2px 4px;
            background-color: #efefef;
            font-style: normal;
        }
    </style>
</head>

<body>
        <video src="./1.mp4"></video>
        <script>
  var video = document.querySelector('video');

  var assetURL = '1.mp4';
  // Need to be specific for Blink regarding codecs
  // ./mp4info frag_bunny.mp4 | grep Codec
  var mimeCodec = 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"';

  if ('MediaSource' in window && MediaSource.isTypeSupported(mimeCodec)) {
    var mediaSource = new MediaSource;
    //console.log(mediaSource.readyState); // closed
    video.src = URL.createObjectURL(mediaSource);
    mediaSource.addEventListener('sourceopen', sourceOpen);
  } else {
    console.error('Unsupported MIME type or codec: ', mimeCodec);
  }

  function sourceOpen (_) {
    console.log(this.readyState); // open
    var mediaSource = this;
    console.log(mediaSource);
    var sourceBuffer = mediaSource.addSourceBuffer(mimeCodec);
    console.log(sourceBuffer);
    fetchAB(assetURL, function (buf) {
      sourceBuffer.addEventListener('updateend', function() {
});
      sourceBuffer.appendBuffer(buf);
    });
  };

  function fetchAB (url, cb) {
    var xhr = new XMLHttpRequest;
    xhr.open('get', url);
    console.log(xhr);
    xhr.responseType = 'arraybuffer';
    xhr.onload = function () {
      cb(xhr.response);
    };
    xhr.send();
  };
</script>
</body>
</html>

Chci docílit: Vytvářím webové stránky kde si bude moct přehrát kterýkoli film, ale s tím že si ho daní uživatelé nebudou moct stáhnout a pro jistotu zdrojový odkaz videa chci zašifrovat pomocí BLOB.

 
Odpovědět
19.7.2018 23:43
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:20.7.2018 7:55

A nejaky online priklad, link na video k testovani? Na svem pc nemam jediny film v jakemkoliv formatu. Nehlede na to, ze je to cele nelegalni...

XMLHttpRequest - web prohlizec prehrava lokalni obsah. Ze stejne domeny. Na disku to nejlepe funguje pres server localhost. Nebo je nutne to testovat na serveru hostingu. Jinak prohlizec do js konzoly pinda, ze obsah z bezpecnostnich duvodu znepristupnil.

  1. Firefox - Nastroje - Vyvoj webu - webova konzola
  2. Otevres stranku a ted to do toho okenka vypise chyby. Obvykle pinda na spatne charset stranky. A nekde podtim bude nic nebo dalsi chyby. Napr, u tohoto fora hnedka 2 upozorneni:
  • Použití window.contro­llers/Controllers je zastaralé. Nepoužívejte je pro detekci UA. - ace.js:1:18446
  • unreachable code after return statement[Zjistit více] - js:69:1216
 
Nahoru Odpovědět
20.7.2018 7:55
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.