我正在寻找播放滚动球声音的最真实的方式。目前,我正在使用 Wav 样本,只要球在移动,我就会一遍又一遍地播放它 - 这感觉不太对劲。

我一直在考虑完全合成声音,对此我知之甚少(几乎一无所知),我将不胜感激任何有关合成由特定材料制成的在表面滚动的球的声音的教程/研究材料/样本另一种材料的。另外,如果这个想法完全错误,请建议另一种方法。

谢谢!

有帮助吗?

解决方案

我猜你会做的,使回放频率成正比的球的速度声动态频率调整中可以获得的最大的爆炸。我不知道是什么类型的,你用声音库,但大多数人会支持这方面的一些变种。

例如,在 FMOD 则可以使用频道:: setFrequency方法。理想情况下,你会根据你WAV的原始采样频率(FO)所需回放频率计算,球的当前速度(VC),以及球的“理想”的速度在其默认的WAV听起来是正确(VI)。东西一般喜欢:

F =佛*(VC / VI)

这将趋向于分解为在球传到远离“理想”速度。你可能想有几个不同的WAV文件是适合于您在某一阈值的速度切换到不同的速度范围。在每个WAV的支架,你会做同种频率的调整。

另注:这可能不是一件值得做的每一帧。我猜想,这样做每秒20次以上将是浪费时间。

附录:这样回放频率缩放也可以用于模拟多普勒效应,以及。一旦你的调整的回放频率,你会执行基于相对球的“监听”(相机)的速度的频率的另一个规模。

其他提示

您是否尝试过打声前进,然后打它落后,循环呢?我用这一招图形创建重复的模式。我不知道很多关于声音,但它可能工作?

一种方法可能是分析滚动的球的声音,并将其分解成其组分的波形。然后,你可以用合成波生成自己的wav文件。点击 你应该能够做到这一点使用上的声音样本的FFT。

一个缺点是声音很可能会合成的声音 - 你必须增加噪声和这样的,使其听起来更加逼真。得到它的真实声音足够可以是最难的部分。

我不认为你需要的麻烦,从而合成。这将是方式太硬,甚至听起来似乎有理。

根据您的场景的方式,你可以循环的声音盼着/向后和模拟多普勒效应将低通滤波器和/或改变其音高。

顺便提及, freesoung.org 是为免费样品的好地方。他们不是专业录制的,但对于操纵一个很好的起点。在另一方面,声音有一些伟大的样本CD的想法(他们实际上是行业标准),如果你可以找到他们的便宜。你只需要寻找是哪一个滚动球的声音。

我真的很喜欢这篇 SIGGRAPH 论文中描述的方法:

http://www.cs.ubc.ca/~kvdoel/publications/foleyautomatic.pdf

它描述了合成岩石在锅中滚动的声音(不,真的:)。这个想法是使用模态合成(即卷积脉冲响应),结果非常有说服力。

以下是本文附带的视频演示的链接:

http://www.cs.ubc.ca/~kvdoel/publications/foleyautomatic.mpeg

这是 JASS 库(由其中一位作者编写)的链接,该库用于为视频创建声音:

http://www.cs.ubc.ca/~kvdoel/jass/jass.html

我不确定你是否可以让它在智能手机上运行,​​但是通过足够高效的卷积例程/近似,你也许可以做一些有趣的事情......

我的问题是“为什么呢?” - 你认为在这一些好处,或者是它只是为了好玩?你的问题意味着你不乐意与你正在使用的WAV,但我坚信,合成自己是要健全远远不如。

如果您的WAV样品不好听,我建议尝试寻找另一个样本。合成声音是不容易的,是永远不会听起来你的样品现实。

实时合成可能需要用于处理和计算更多的资源。你很可能最终会预渲染的合成声音为wav文件,并进行播放。

如果您想模拟不同材料的声音,那么你可以使用一些DSP,甚至简单的技巧,比如减缓或加速的WAV播放。最简单的方法是预渲染这些在另一个应用程序和存储该文件的一个副本为每次使用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top