Почему видеосфера отображается локально, а не на gh-страницах?

У меня есть видеосфера, которая показывается локально, но, переместив ее на gh-страницы, видео не показывается.

Там нет ошибки 404, что файл не существует, и я использую GIT LFS для видео MP4 (это видео 360, так что довольно большой).

https://github.com/ybinstock/GreatEscape360

<html>

<head>
  <title>Great Escape</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
  <meta name="mobile-web-app-capable" content="yes">
  <meta name="apple-mobile-web-app-capable" content="yes" />
  <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
  <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,shrink-to-fit=no,user-scalable=no,minimal-ui">

  <script src="https://aframe.io/releases/0.4.0/aframe.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>

</head>
<body>


<a-scene>
  <a-assets>
    <video id="greatescapevideo" autoplay loop="true" src="video2.mp4"> </video>
    <img id="logo" src="logo.png">
    <img id="slide1" src="slide1.png" >
    <img id="slide2" src="slide2.png" >
    <img id="slide3" src="slide3.png" >
    <img id="slide4" src="slide4.png" >
    <img id="slide5" src="slide5.png" >
  </a-assets>

  <a-camera wasd-controls="enabled: false"> </a-camera>

  <a-videosphere src="#greatescapevideo"></a-videosphere>

  <a-image id="logo" class="logo" src="#logo" position="0 2 -2" rotation="0 0 0"></a-image>
  <a-image id="logo" class="logo" src="#logo" position="1 2 2"  rotation="0 180 0"></a-image>
  <a-image id="logo" class="logo" src="#logo" position="-2 2 0" rotation="0 90 0"></a-image>
  <a-image id="logo" class="logo" src="#logo" position="2 2 0" rotation="0 -90 0"></a-image>

  <a-image id="slide1" class="slide1" src="#slide1" position="0 2 -2" rotation="0 0 0" ></a-image>
  <a-image id="slide1" class="slide1" src="#slide1" position="1 2 2"  rotation="0 180 0" ></a-image>
  <a-image id="slide1" class="slide1" src="#slide1" position="-2 2 0" rotation="0 90 0"></a-image>
  <a-image id="slide1" class="slide1" src="#slide1" position="2 2 0" rotation="0 -90 0"></a-image>

  <a-image id="slide2" class="slide2" src="#slide2" position="0 2 -2" rotation="0 0 0" ></a-image>
  <a-image id="slide2" class="slide2" src="#slide2" position="1 2 2"  rotation="0 180 0" ></a-image>
  <a-image id="slide2" class="slide2" src="#slide2" position="-2 2 0" rotation="0 90 0"></a-image>
  <a-image id="slide2" class="slide2" src="#slide2" position="2 2 0" rotation="0 -90 0" ></a-image>

  <a-image id="slide3" class="slide3" src="#slide3" position="0 2 -2" rotation="0 0 0" visible="false"></a-image>
  <a-image id="slide3" class="slide3" src="#slide3"position="1 2 2"  rotation="0 180 0" visible="false"></a-image>
  <a-image id="slide3" class="slide3" src="#slide3" position="-2 2 0" rotation="0 90 0" visible="false"></a-image>
  <a-image id="slide3" class="slide3" src="#slide3"position="2 2 0" rotation="0 -90 0" visible="false"></a-image>

  <a-image id="slide4" class="slide4" src="#slide4" position="0 2 -2" rotation="0 0 0" visible="false"></a-image>
  <a-image id="slide4" class="slide4" src="#slide4" position="1 2 2"  rotation="0 180 0" visible="false"></a-image>
  <a-image id="slide4" class="slide4" src="#slide4" position="-2 2 0" rotation="0 90 0" visible="false"></a-image>
  <a-image id="slide4" class="slide4" src="#slide4" position="2 2 0" rotation="0 -90 0" visible="false"></a-image>

  <a-image id="slide5" class="slide5" src="#slide5" position="0 2 -2" rotation="0 0 0" visible="false"></a-image>
  <a-image id="slide5" class="slide5" src="#slide5" position="1 2 2"  rotation="0 180 0" visible="false"></a-image>
  <a-image id="slide5" class="slide5" src="#slide5" position="-2 2 0" rotation="0 90 0" visible="false"></a-image>
  <a-image id="slide5" class="slide5" src="#slide5" position="2 2 0" rotation="0 -90 0" visible="false"></a-image>

</a-scene>


</body>
<script src="app.js"></script>

</html>

2 ответа

Вам нужен CDN перед страницами GitHub, если вы хотите обслуживать расходные мультимедийные файлы. Попробуйте использовать rawgit.com

Быстрый ответ: не используйте страницы GitHub для видео-хостинга.

Более длинный ответ: когда я проверяю https://ybinstock.github.io/GreatEscape360/video2.mp4 он возвращает только 133 байта, что, очевидно, неверно. Это странно, поскольку страница файла в графическом интерфейсе GitHub позволяет загружать весь файл: https://github.com/ybinstock/GreatEscape360/blob/master/video2.mp4

Таким образом, мы видим, что файл успешно размещен в вашем репо, но страницы github его не обслуживают. Единственное решение, которое я могу предложить, - это другой сторонний файловый хост.

Другие вопросы по тегам