![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как изменить высоты звука?
@!!ex © (2007-11-20 09:03:00)ПОльзую fmod, нужно проиграть звук с высотой отличной от оригинальной.
Как, не знаю. Подскажите?
Pavia (2007-11-20 17:43:00) [1]Можно так делаем БПФ и смешаем амплитуды частот в сторону с более высокими частотами.
Sapersky (2007-11-20 16:30:00) [2]http://www.harmony-central.com/Effects/audio-effects-faq-10.txt
(How do I change the pitch of a sound?)
http://www.dspdimension.com/admin/time-pitch-overview/
homm (2007-11-20 15:46:00) [3]> [5] @!!ex © (20.11.07 13:38)
> Ошибка в логике? Или я не правильно понял?
Все верно понял. Увеличение частоты — увеличение скорости. Физика.
@!!ex (2007-11-20 13:38:00) [4]> [4] homm © (20.11.07 11:27)
1) У нас есть сигнал.
Мы его выводим быстрее, получаем более высокий звук. Да к томуже удаляем часть слов в итоге получаем еще более короткий сигнал...
Ошибка в логике? Или я не правильно понял?
2)Уже более интересный вариант, тут вроде ошибки нету, только при дублировании таком не очень хорошо получается...
homm (2007-11-20 11:27:00) [5]> [3] @!!ex © (20.11.07 11:25)
вопрос - как...
Я же написал
@!!ex (2007-11-20 11:25:00) [6]Я в курсе, что у звука нет характеристики "высота".
В том и вопрос, нужно добить ощущения, что звук выше, без изменения длины. Fruity как то это делает, вопрос - как...
homm (2007-11-20 10:54:00) [7]Может ты не понял (а может и я ошибаюсь) но у звука нет характеристики «высота». Тебе нужно увеличить частоту?
Есть 2 способа. Я объясню по простому, с реализацией не сталкивался.
1) Тупо выводим сигнал, который у нас есть с большей скоростью, с большей частотой, выкидывая данные, нгапример каждое 8-е слово для 16-и битного звука. Получаем частоту выше, но и по времени звук будет меньше идти. Возможно интерполируем соседние слова с учетом викинутого для увеличения качества.
2) первая часть такая-же, увеличиваем частоту, получая более короткий сигнал, с большей частотой. Дальше разбиваем его на последовательности, скажем по 1мс. и раставляем эти отрезки так, что-бы они начинались в то-же время, что и оригинал. Получем (для приведенного ранее примера) 1мс звука с большей частотой, и 0,11 мс тишины. Дальше заполняем тишину. Самый простой способ — взять и повторить часть блока. Но я думаю есть и более интеллектуальные алгоритмы, дающие лучше качество, но и требужщие расчетов.
Все вышеописаное на основе опыта работы со звуковыми редакторами и 5 минут включения мозгов, так что моги и ошибится.
homm (2007-11-20 09:07:00) [8]> [0] @!!ex © (20.11.07 09:03)
> ПОльзую fmod, нужно проиграть звук с высотой отличной от
> оригинальной.
Поставить колонки повыше?