做一个虚拟现实的音乐播放软件

类别:编程语言 点击:0 评论:0 推荐:

各位同学,你们好。

我想告诉大家,在多媒体的世界里,计算机技术已经能够很好的模拟现实世界的声音、图象以及很多现实世界的动态效果了。

利用VRML的虚拟现实技术,结合声音立体化、计算机交互和3D建模等知识,用C++ Builder 编程制作的。可以建立了一个虚拟的视听室,用户可以在作品内的各种播放模式里面体验近乎真实的现场音乐,实现玩家和音乐世界的互动。

那怎样在虚拟场景中,实现三维音效的呢?

虚拟世界中的声音,要想给人真实的感觉,这就要要求声音立体化,产生3D的音效。换一句话说,当在虚拟世界中听到一个声音的时候,要能够很明显地判断出这个声音是从什么方向传播过来的,并能够根据声音强度,来感觉出这个声音的声源的距离,以及声源的大概位置等等。

在现实中,人的两个耳朵所听到的声音,是根据声源的位置的不同而有细微的差别的,因为声波在介质中传播的时间和频率不同,人的大脑就根据这细微的差别来确定,声音在现实世界中的位置。但是,对于高频声音,就很难确定时间的差异了,所以这就必须要通过到达两耳的频率差异来判断了。当声波从右耳通过头部到达左耳时,头部略微降低了声音,使左耳听到的声音频率就发生变化了,根据这点差异,我们就能够确定出声源的位置。

声音立体化就是根据场景情况,重新生成这些到达双耳的时间和频率的差异,使我们听到真正的三维音效。声音立体化就是一个数字信号处理过程,经过处理,使声音显得是从三维空间的一个特定点发出的,有特定的声源。不过,这个声音在三维空间中的位置不是固定不变的,和现实世界一样,也可根据场景需要而改变,也可以让声音环绕在身边。

所以只要我们改变声源点的位置,改变声源点的声音传播参数,甚至让声源点运动,那么,就可以模拟现实中的各种听音环境,创造出各种不同的音乐氛围,让听众融入到我们虚拟的声音世界中,真正实现音乐欣赏的互动,这就是我们要达到的目的。

根据欣赏音乐的需要,建立多种虚拟的听音模式。可以让玩家领略家庭影院,闪烁舞台,回归自然等多姿多彩的听音乐趣。

那么虚拟的听音模式有什么特点呢?

第一,音乐不仅仅是声音的世界,它需要动作、环境一起演绎。人们总是喜欢去演唱会听现场音乐,因为多方位、多角度地欣赏音乐,才是真正的享受音乐。我们的作品就是要模拟这种音响效果,让人有着虚拟现实的感觉。第二,每一种听音模式中,玩家都可以通过对鼠标的操作,实现现实中的跑、走、转身等各种动作。在虚拟世界中,玩家相对于音源点的位置、方向发生了变化,于是就会引起听觉效果的变化。第三,为了满足挑剔用户的要求,在高级设置里面,我们可以让玩家自己设置音源的位置、音源的数量、传播方向、传播距离等各种属性,适应不同玩家不同的风格,实现不同的听音效果。 

最后我要强调的一点是,一般的音乐播放器的功能,比如说:显示播放时间,播放下一首歌,保存播放列表等等。但我的目的并不是要一般的音乐播放器。我们已经是新世纪的青年了,一般被动接受的音乐播放器已经不能满足我们的要求,我们需要的是创新,我相信,我的播放器本身就是一种创新,它可以使音乐发烧友们身临其境地的欣赏音乐,体验非一般的音乐旅程,是亲自参与到音乐中去,而不再是被动地接受。

还有,我们的作品有着强大的生命力,虚拟现实本身就是世界上一个重要的研究方向,而我们的研究就是要把多媒体引向虚拟世界,走向三维空间。如果我们将我们的设计与JAVA技术结合,我们的作品就可以登上互联网,在互联网上使用;如果我们拥有一定的辅助,我们甚至可以制作出一个虚拟的电影院来。

本文地址:http://com.8s8s.com/it/it29507.htm