Так, деякі з нас можуть це зробити, ви можете пришвидшити або сповільнити роботу, не впливаючи на крок, деякі хлопці називають це додатками Time Stretch, є різні способи зробити це, ви можете зробити в частотній або часовій області, вам потрібно вибрати що найкраще для вас, ви знайдете деякі переваги та недоліки кожного.
Часовий домен:
У Time Domain ви можете спробувати деякі методи, такі як:
- TDHS (Гармонічне масштабування в часовій області)
- SOLA (Додати синхронне перекриття)
- PSOLA (додавання синхронного перекриття шага)
- WSOLA (Додати подібність форми перекриття хвилі)
Плюси: швидко, деякі алгоритми легко зрозуміти, хороша якість в однотонних звуках.
Мінуси: Зазвичай вам потрібна дуже гарна пікова доріжка, щоб сплавитись у потрібному положенні, це важко зробити :-(, тож якщо ваш крок не виходить з ладу або не працює в поліфонічних звуках, ці алгоритми дадуть багато збоїв / артефактів у вихідному звуці.
Домен частоти:
Весь час розтягнення, яке мені відомо в частотній області, засноване на фазових методах вокодера .
Плюси: буде працювати в поліфонічних або однотонних звуках.
Мінуси: може бути болісно зрозуміти всю математику, реалізація трохи складна, не така швидка, як коди доменних часових доменів, для голосу я віддаю перевагу результатам часової області, деякі хитрощі для поліпшення результату стандартного фазового вокодера не поділяються.
Я можу сказати, що розмір вікна та розмір хопу є однією з ключових для якості фазового вокодера, зазвичай ми обираємо 4x
перекриття для ресинтезу. 4096
Для моїх вух вистачить одного розміру вікна Ханна (звичайно, якщо у вас є потужність обробки для цих розмірів) , стандартний факторний вокодер може додати деякі зворотні ефекти, щоб спробувати уникнути подібних проблем, можливо, вам потрібно заблокувати фазу.
Щоб отримати докладнішу інформацію, подивіться у папері Міллера та Портнофф