声音相关 | krpano声音的四种使用方法

导言

我们要实现的三种用法分别是:

  1. 在项目启动时即播放背景音乐、即使场景切换音乐也不会变化
  2. 全局声音与单场景声音
  3. 随心所欲控制各场景声音,也就是不同场景可能用同一背景音乐,而没有中断

以上所有三种情况都需要先做三件事情:

  1. 将音频文件放在对应的文件夹中,根目录也好,或者你自己建一个sound文件夹也好。你需确保其路径是正确的。
  2. 将krpano安装包viewer文件夹中plugins文件夹中的soundinterface.jssoundinterface.swf两个文件拷贝到项目的plugins文件夹。
  3. tour.xmlvtourskin.xml的某个空白位置(不要放在scene标签内即可)插入以下代码:

声音在krpano中的使用有些特殊情况,尤其是手机端,请查看soundinferface插件官方说明文档

 

在项目启动时即播放背景音乐、即使场景切换音乐也不会变化

正如标题所示,我们要的就是一个一直在背景中持续播放的声音。在tour.xml找到下面的代码

改为

playsound是播放普通声音的action,bgsnd代表该声音的id,名字要与其它声音的id不冲突,‘backgroundmusic.mp3’对应声音文件的路径,0代表循环播放,填1则代表只播放一次。

如果你用那么一个按钮,则可以在layer上添加onclick属性控制声音的暂停和播放。

 

既有全局背景声音也有单场景的解说声音

全局的背景声音始终在各个场景中荡漾,同时切换到不同的场景时,不同场景有自己的声音。

在tour.xml找到下面的代码

改为

以上是实现背景音乐,下面是加上每个场景的音乐。

方法一:

首先加入一个events和一个action,主要是在每个场景切换时执行一次playsound

然后在每个scene标签中加sound=”audio1″,也即是audio文件夹中的mp3文件的名字,注意是不带前缀的。

方法二:

是使用了一个启动画面来触发音乐的播放。看下面splash的onclick,执行了一次FirstStart。

默认下音频文件的路径是相当于viewer文件。

这里的情况是假设你每个场景都有单独的解说,因此你在每个场景都要加入bgmusic=“xxx.mp3” 这样的属性。这样的话,背景音乐会一直播放,同时每个场景都有自己的声音。

 

随心所欲控制各场景声音

我们来假设这么一种情况。有三个展厅,每个展厅我们有三个场景,但我们只有三个解说词对应着这三个展厅,也就是当同一展厅的场景互相切换时,我们需要解说词是持续的,而不是因场景的变换而停止或重新开始。例如展厅1的场景a、b、c之间的相互切换,或展厅2的场景d、e、f的相互切换时,其解说词是流动的,只有当不同展厅的场景切换时,才会中止之前展厅的解说词,而开始新的展厅的解说词,例如从展厅1的场景b到展厅2的场景f。

我们来假定四个场景,其中第一个场景和第三个场景属于一个“展厅”,第二个和第四个场景属于另外一个“展厅”,至于全局音乐为了方便,我们暂时不添加。
我们在tour.xml找到skin_settings标签,大概是这样的

我们在skin_settings标签内增加

然后我们对四个场景进行处理,注意省略号代表了中间省略了的代码,显示的是你需要增加的代码以及对应的位置。我们列出的是scene的情况。

同时在scene外加上events代码

 

控制场景中不同位置的3D声音(旧版本Flash可用)

在 “声音相关 | krpano声音的四种使用方法” 上有 2 条评论

发表评论