Звук катящегося шарика - PullRequest
       43

Звук катящегося шарика

9 голосов
/ 25 августа 2009

Я ищу самый реалистичный способ воспроизведения звука катящегося мяча. В настоящее время я использую сэмпл Wav, в который я играю снова и снова, пока мяч движется - что просто нехорошо.

Я думал о том, чтобы полностью синтезировать звук, о котором я очень мало знаю (почти ничего), я был бы благодарен за любые учебные пособия / исследовательские материалы / образцы, касающиеся синтеза звука шара, сделанного из конкретного материала. на поверхности из другого материала. Также, если эта идея полностью неверна, предложите другой способ сделать это.

Спасибо!

Ответы [ 6 ]

8 голосов
/ 25 августа 2009

Я полагаю, что вы получите максимальную отдачу от своих денег, выполнив динамическую регулировку частоты звука, которая сделает частоту воспроизведения пропорциональной скорости мяча. Я не знаю, какой тип звуковой библиотеки вы используете, но большинство из них будет поддерживать некоторые варианты этого.

Например, в FMOD вы можете использовать метод Channel :: setFrequency. В идеале вы должны рассчитать желаемую частоту воспроизведения на основе исходной частоты сэмплирования WAV (Fo), текущей скорости мяча (Vc) и «идеальной» скорости мяча, при которой WAV по умолчанию звучит правильно (Vi). Нечто подобное:

F = Fo * (Vc / Vi)

Это будет иметь тенденцию ломаться, когда мяч отдаляется от «идеальной» скорости. Возможно, вы захотите иметь несколько разных WAV, которые подходят для разных диапазонов скоростей, на которые вы переключаетесь при определенных пороговых скоростях. В каждой скобке WAV вы будете выполнять одинаковую настройку частоты.

Еще одно замечание: это, вероятно, не то, что стоит делать в каждом кадре. Я предполагаю, что выполнение этого более 20 раз в секунду было бы пустой тратой времени.

ADDENDUM: подобное масштабирование частоты воспроизведения также можно использовать для имитации эффекта Доплера. Как только вы настроите частоту воспроизведения, вы выполните другую шкалу частоты, основанную на скорости мяча относительно «слушателя» (камеры).

6 голосов
/ 25 августа 2009

Вы пытались воспроизвести звук вперед, затем воспроизвести его назад и зациклить? Я использую этот трюк графически для создания повторяющихся узоров. Я не знаю много о звуке, но он может работать?

5 голосов
/ 25 августа 2009

Одним из подходов может быть анализ звука катящегося шара и его разложение на составляющие его формы волны. Тогда вы сможете создать свой собственный файл WAV с синтезированными волнами.
Вы должны быть в состоянии сделать это, используя БПФ на сэмпле звука.

Один недостаток заключается в том, что звук, скорее всего, будет звучать синтезированным - вам придется добавить шум и тому подобное, чтобы он звучал более реалистично. Заставить его звучать достаточно реалистично может быть самой сложной частью.

3 голосов
/ 19 февраля 2010

Мне очень нравится подход, описанный в этой статье 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

Я не уверен, что вы могли бы заставить его работать на смартфоне, но с достаточно эффективной процедурой / приближением свертки вы могли бы сделать что-то интересное ...

3 голосов
/ 25 августа 2009

Я не думаю, что вам нужны проблемы, чтобы синтезировать это. Было бы слишком сложно даже звучать убедительно.

В зависимости от вашей сцены, вы можете зациклить звук вперед / назад и имитировать эффект Доплера, применяя фильтр низких частот и / или изменяя его высоту.

Кстати, freesoung.org - отличное место для бесплатных образцов. Они не профессионально записаны, но являются хорошей отправной точкой для манипуляций. С другой стороны, у sound ideas есть несколько отличных сэмплов (они на самом деле являются отраслевым стандартом), если вы можете найти их по дешевке. Вам просто нужно найти, какой из них имеет раскатистые звуки.

2 голосов
/ 25 августа 2009

У меня вопрос "почему?" - Видите ли вы какую-то выгоду в этом, или это просто для удовольствия? Ваш вопрос подразумевает, что вы недовольны тем, что используете, но я твердо верю, что ваш собственный синтез будет звучать намного хуже.

Если ваш wav-сэмпл звучит неправильно, я бы посоветовал найти другой сэмпл. Синтезировать звук нелегко и никогда не будет звучать так реалистично, как ваш семпл.

Синтез в реальном времени может потребовать больше ресурсов для обработки и вычисления. Вы вполне можете закончить преобразование синтезированного звука в файл wav и выполнить воспроизведение.

Если вы хотите симулировать звук различных материалов, вы можете использовать некоторые DSP или даже простые приемы, такие как замедление или ускорение воспроизведения WAV. Самый простой способ - это предварительно передать их в другом приложении и сохранить одну копию файла для каждого использования.

...