Javascript 如何在Facebook AR studio中将mp4视频用作外部纹理?

Javascript 如何在Facebook AR studio中将mp4视频用作外部纹理?,javascript,spark-ar-studio,Javascript,Spark Ar Studio,我第一次在Facebook Spark Studio上工作 我想做一个基于标记的AR,就像我通常对Vuforia做的那样 我想通过扫描标记来播放mp4视频 我阅读了Facebook AR studio文档,它们只支持png和jpg文件格式 参考: 外部视频纹理是否有播放控件 有人能帮我在扫描跟踪器时播放视频吗?你可以通过链接在线托管的视频纹理,使用“外部纹理”来播放视频 创建材质 在“材质漫反射纹理”属性下,选择“新建外部纹理” 在纹理属性中,在URL字段中输入视频的URL 要使用跟踪器,请

我第一次在Facebook Spark Studio上工作

我想做一个基于标记的AR,就像我通常对Vuforia做的那样

我想通过扫描标记来播放mp4视频

我阅读了Facebook AR studio文档,它们只支持png和jpg文件格式

参考:

外部视频纹理是否有播放控件

有人能帮我在扫描跟踪器时播放视频吗?

你可以通过链接在线托管的视频纹理,使用“外部纹理”来播放视频

  • 创建材质
  • 在“材质漫反射纹理”属性下,选择“新建外部纹理”
  • 在纹理属性中,在URL字段中输入视频的URL
  • 要使用跟踪器,请查看PlaneTracker对象的文档:
    我们遇到了同样的问题。诀窍(或Facebook bug)是在材料的编辑器中设置url,并链接到您的视频。然后在代码中执行以下操作:

    const Scene = require('Scene');
    const Animation = require('Animation');
    const Materials = require('Materials');
    const Textures = require('Textures');
    const D = require('Diagnostics');
    const Audio = require('Audio');
    
    const animRoot = Scene.root.find('animRoot');
    const planeTracker = Scene.root.find('planeTracker');
    const targetMat = Materials.get('targetMat');
    const externalText = Textures.get('externalAnimation');
    const playbackController = Audio.getPlaybackController('playback_controller_model0');
    
    planeTracker.confidence.eq('HIGH').onOn({fireOnInitialValue: true}).subscribe(function(e) {
    
        playbackController.play();
    
        externalText.url = '';
    
        externalText.url = 'https://urlToYourVideo.mp4';
    
        D.log('Tracking starts');
    });
    
    planeTracker.confidence.eq('HIGH').onOff({fireOnInitialValue: true}).subscribe(function(e) {
    
        playbackController.stop();
    
        externalText.url = '';
    
        D.log('Tracking stops');
    });
    

    希望这有帮助

    谢谢你的回答。我正在使用此过程将视频应用于平面标记。但问题是我无法从视频中听到声音。在扫描我不想要的标记后,视频会自动播放。是否有任何控件可以应用于视频纹理以重置或暂停?据我所知,外部纹理不支持音频,目前它只是视频。似乎也没有办法控制播放,但我会尝试设置对象可见性,或者通过脚本更改外部纹理URL,以便在播放时触发。是的。。。我正在尝试通过脚本添加外部纹理url。但事实并非如此。我不知道为什么。基本上我想播放一段演讲视频。有办法吗?请帮我做这个,行吗?我采用了外部纹理的方法,将其作为材质应用于平面,但声音不会出现。我在javascript中点击平面事件时使用了上述解决方案,并更改了外部纹理url,但仍然听不到视频声音。有什么指示吗,伙计们。。。。