Ресемплинг

Если кто может, то поделитесь пожалуйста опытом в написании ресемплинга.

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

Пока нашел эти два ресурса:

Последняя правка: пн, 29/08/2011 - 22:13
Submitted by Victor on

Комментарии

Самый быстрый - это наверно методом "nearest neighbour". Но это для извращенцев, ибо звучать будет отвратнейше Smile Линейная интерполяция сойдет для ресэмплинга 44100 <--> 48000, для низких частот плохо будет на слух. Можно попробовать интерполяцию полиномами 3, 4 порядка.

Насчет первой ссылки я не в курсе, а вот http://www.mega-nerd.com/SRC/download.html - это ресамплинг с помощью свертки с sin(x)/x, этот метод качественный но не самый быстрый.

О, вспомнил еще один жутко быстрый метод - заресамплить весь звук заранее на все нужные частоты Smile

Submitted by Rostix on
Quote:
Rostix писал(а):
О, вспомнил еще один жутко быстрый метод - заресамплить весь звук заранее на все нужные частоты :)
Да, вот только знать бы какие нужные )

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

Submitted by Victor on

GameDev.by