我正在开发一些 A 框架项目,但 videosphere 没有自动播放其源代码。我从cinema4d渲染了一个球体视频并注入了元数据,我可以看到源已加载,但未播放。
我原本想在本地播放60MB的视频,但是即使我将视频剪切到1MB以下,它仍然无法正常工作,所以我认为这不是大小的问题。
我尝试了有声视频和无声视频,但都不起作用。
我也尝试过在其他人的项目中有效。
这是视频的链接,如果您也可以查看视频的话!
https://drive.google.com/open?id=1F3VLYFTSnnlmRY1-xYxOe2SEWjZDwI9q https://drive.google.com/open?id=1F3VLYFTSnnlmRY1-xYxOe2SEWjZDwI9q
https://drive.google.com/open?id=1kshs3IqJD0nMi0-fGLibnMDg9wc9lrxx https://drive.google.com/open?id=1kshs3IqJD0nMi0-fGLibnMDg9wc9lrxx
<!DOCTYPE html>
<html>
<head>
<title>Palm to Room</title>
<link rel="stylesheet" href="style.css" />
<script src="https://aframe.io/releases/0.9.2/aframe.min.js"></script>
</head>
<body>
<a-scene>
<a-assets>
<video
id="BankVideo"
autoplay
loop="true"
preload="auto" crossorigin="anonymous"
src="src/sample-ij.mp4"
>
</video>
</a-assets>
<a-videosphere
id="EnvBank"
rotation="0 180 0"
src="#BankVideo">
</a-videosphere>
<!-- Define camera with zero user height, movement disabled and arrow key rotation added. -->
<a-camera
user-height="0"
wasd-controls-enabled="false">
</a-entity>
</a-camera>
</a-scene>
</body>
</html>
***** 更新 *****
我按照@PiotrAdamMilewski 在评论中建议的方式研究了一些问题,但它仍然没有真正起作用。但我发现当我添加这个脚本并将这个aframe组件使用到videosphere时,我可以播放视频。所以我认为这不是真正的浏览器或操作系统问题...
所以现在我正在尝试将组件调整为触发视频播放的组件(最初应该自动播放)。我对 Aframe 组件真的很陌生,所以这确实需要一段时间,但如果有人可以对此添加一些建议,我真的很感激!
AFRAME.registerComponent('play-on-window-click', {
init: function () {
this.onClick = this.onClick.bind(this);
},
play: function () {
window.addEventListener('click', this.onClick);
},
pause: function () {
window.removeEventListener('click', this.onClick);
},
onClick: function (evt) {
var video = this.el.components.material.material.map.image;
if (!video) { return; }
video.play();
}
});