我正在创建一个虚拟全景巡演,其中包含与热点链接的几种不同的全景图。在每个全景图上,我都有一个播放视频的视频热点。
我的问题是,每次加载一个新场景时,我都要触摸显示器,因为视频加载...... Panotour还解释说,这种行为是正常的
现在我正在寻找一个解决方案,我可以在进入vr模式时第一次触摸播放/停止所有视频...我创建了一个包含所有视频的阵列,让它们播放/停止后第一次触摸,但它只是加载第一个场景中的视频而不是所有其他场景中的视频。
我还尝试制作一个全局图层,并在播放按钮上插入javascript的视频源和位置,但全局图层不在VR立体模式下
我试图将所有视频热点放在第一个场景上,但这不起作用,因为它不允许2个热点具有相同的ID。
有谁知道如何在进入vr模式时第一次触摸播放所有视频?
非常感谢你 亚历
Panotour Pro 2.5.5
答案 0 :(得分:0)
对于任何寻找相同答案的人,我都设法在整个巡回演出中播放视频...我有5个不同的场景,其中有视频,并且适用于所有设备
我必须在第一个场景中加载所有视频斑点并将它们设置为alpha =" 0.0"。在第一次触摸时,进入vr模式的那个,我播放所有视频并使用javascript再次停止它们。此外,我已经设置了视频点以保持=" true"所以他们留在一个全景变化后...然后我检查加载了哪个场景,并将视频设置为alpha =" 1.0" ...
更大的部分是将所有视频设置在第二个,第三个场景中应该位于的正确位置......所以我手动更改了index_vr.xml中的设置......这需要花费很多时间但是它工作...我已经在正确的场景中导出整个旅游视频,以便我有正确的设置(ath,atv,width,height,rx,ry,rz),然后我已经导出了与第一个场景中的所有视频一起游览
接下来的问题是视频声音只是在主电源内播放,而不是在视频应该显示的位置...所以我导出了没有声音的视频,并使用javascript创建了一些html5音频标签在体内......加载我播放并暂停它们然后我可以用javascript控制它们。因此,当我播放视频的同时播放音频。
这是一个很好的解决方法,它运作得很好
玩得开心
function player(){
if(tourplayer == null){
tourplayer = document.getElementById('krpanoSWFObject');
}
return tourplayer; }
var _objIDs = ['spotvideo2869','spotvideo2870','spotvideo2871','spotvideo2872','spotvideo2873','spotvideo2874','spotvideo2875','spotvideo2876','spotvideo2877','spotvideo2878'];
$.each(_objIDs,function(index,value){
player().call('hotspot['+value+'].play()');
player().call('hotspot['+value+'].stop()');
});
$.each(_videoSounds,function(index,value){
$('#container').prepend(
'<audio preload="auto" controls style="display: none" id="'+index+'_sound"><source src="indexdata/sounds/'+value+'" type="audio/mpeg"></audio>'
);
document.getElementById(index+'_sound').muted = false;
});
function playVideoSound(videoID) {
$.each(_videoSounds,function(index,value){
$('#'+index+'_sound').trigger('pause');
});
$('#'+videoID+'_sound').trigger('play'); }