Aframe音频资产 - 正确断开音频src

问题描述 投票:0回答:1

对于某些上下文,我有一系列全景图像,每个图像都有一个与之关联的不同音频文件(mp3)。我想在全景图像改变时播放相关的音频src,但我似乎无法断开以前的音频src。

    <a-assets>
      <audio
        id="vr-audio"
        src={`http://res.cloudinary.com/concept3d/video/upload/audio_files/${trackId}`}
        preload="auto"
      />
    </a-assets>
      {Boolean(tracks.length) && <a-entity sound="src: #vr-audio" />}

当全景变化并从我的组件状态拉出时,插值的trackId会发生变化。我可以看到音频src url正在按预期更改,但是当我查询声音实体时,声音src不会更新到新URL。

任何建议表示赞赏。

audio aframe
1个回答
0
投票

不要在适当的位置更改音频元素,组件不会捕获它。改为改变声音组件的src属性。它可以采用URL。除非预先加载,否则不需要<a-assets>

soundEl.setAttribute('sound', 'src', 'http://res.cloudinary.com/concept3d/video/upload/audio_files/${trackId}');

如果要控制音频元素,请创建新的音频元素并分配新ID。

© www.soinside.com 2019 - 2024. All rights reserved.