Pull to refresh

Comments 34

ЕМНИП, на виндовых драйверах для набортного аудио (по крайней мере Realtek/VIA) всегда был встроенный питч-шифтер и шакальный фильтр голоса для караоке. Неужели убрали и/или отвратительно работает, что к применению не рекомендуется?

p.s. под виндой набортный звук очень давно не юзал, сейчас винды под рукой вообще нет.

Да, я помню что-то такое на WinXP, далее я с Realteck дело не имел, когда, начиная с 7ки драйвера, особенно на стандартные вещи типа аудио/вай фая

Помню, там были какието такие эффекты примитивные, и помню, что у кого то видел питч шифтер, а вот у меня был только эквалайзер вроде.

В любом случае, здесь можно поставить любой VST плагин в цепочку обработки.

Помню, там были какието такие эффекты примитивные, и помню, что у кого то видел питч шифтер, а вот у меня был только эквалайзер вроде.

Это от драйвера зависит. На thinkbook «родной» ставится вообще без всего — эквалайзера тоже нет :) Просто пустая программулина.

В любом случае, здесь можно поставить любой VST плагин в цепочку обработки.

Да, вы описали очень мощный инструмент. Виртуальные кабеля и банан/картошка — то, что доктор прописал, когда чего-то не хватает.

У меня когда ещё была машинка с виндой, я звук (игры, музыка) слушал с usb-интерфейса. Немецко-китайская компания пожадничала и не положила к ней даже ASIO. Всё вполне реализовалось установкой ASIO4ALL, виртуальных кабелей и картошки. Звук был офигенный. Но добывать всё приходилось самому.

За старания поднял карму, таких статей очень и очень мало в Рунете.

Спасибо, очень интересно.

А есть ли подобные плагины для выравнивания АЧХ/ФЧХ акустической системы ПК? Чтобы можно было с помощью микрофона снять импульсную характеристику и сгенерировать цифровой фильтр, через который будет пропускаться весь звук с ПК, и таким образом устранить все недостатки акустики (резонансы и пр.).

В англоязычном интернете есть масса проприетарного коммерческого ПО для Digital room correction, но свободных аналогов я найти не могу.

Да, действительно есть и свободное ПО. Для анализа - Room EQ Wizard, для фильтрации звука - Equaliser APO.

Room Correction в принципе нельзя выполнить на двух динамиках, потому что чудес не бывает, как бы не хотелось в это кому-то верить. Как минимум из-за такого явления как "интерференционные провалы", не позволяющих корректно замерить АЧХ/ФЧХ, и того что динамик 1D, а комната - 3D.

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

Как говорится в мануалах, невозможно точно выставить импульсную характеристику по всему объёму комнаты. Если выставить её в одной точке пространства, то стоит слушателю сместиться на несколько сантиметров, и вся звуковая картина разрушится (появится куча эхо и пред-эхо). Поэтому измерения делают в большом количестве точек и усредняют результаты так, чтобы для большинства точек устранить самые явные "косяки" амплитуды и фазы, хотя бы в низких и средних частотах. В общем, чтобы получить приемлемый звук, нужен целый набор компромиссов.

Если выставить её в одной точке пространства, то стоит слушателю сместиться на несколько сантиметров, и вся звуковая картина разрушится (появится куча эхо и пред-эхо)

Это в теории. На практике (а я пробовал, и вообще посвятил этому вопросу немалое количество времени), ничего такого нет даже близко. На практике это звучит просто как изменение тембра исходного звука, похожее на применение импульсов от гитарных кабинетов.

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

Ооо.. Давно искал что-то подобное, сделать питч в реальном времени. Спасибо!

Интересно, можно ли там сделать, чтобы три басовые струны играли на октаву ниже? Или даже лучше, дублировались сдвигом на октаву ниже.

Не понял. Вы хотите у какой-то части спектра понизить тон?

Да, чтобы был реальный бас.

Вы можете роутить звук в какойнить приличный DAW типа FL Studio и делать там уже все, что душе угодно)

Например, дублировать звук, обработать его фильтром высоких частот, поставить октавер

Хотел простую примочку для реального времени, чтобы играть "с басом". Педаль пока не катит.

Если вы хотите такой эффект в режиме реального времени, то у меня для вас плохие новости - этот фильтр даёт ощутимую задержку порядка 100-200 мс. А если не в реальном времени, то конечно можно задержать исходный сигнал на ту же самую задержку и смешать. Попадались такие эффекты без задержки, но качество результата у них в разы меньше - "булькают", то есть имеют выраженную амплитудную модуляцию в районе 10 герц.

А как работают октаверы (эффекты, повышающие или понижающие звук на октаву), что на слух ни задержки, ни искажений не заметно? Если для любой сложной обработки звука необходим буфер, который будет вызывать задержку?

Дайте ссылку или название плагина, посмотрим. А так, конечно, можно набрать банк из штук 100 параллельных высокодобротных полосовых фильтров, чтобы на выходе каждого практически чистая синусоида получалась. Сдвигать частоту чистой синусоиды намного проще.

Например, есть вот такой старый VST плагин. Умеет понижать как монофонические, так и полифонические записи, и повышать монофонические (на полифонии даёт искажения). Но это DLL, т.е. исходников нет.

Посмотрел этот плагин. Задержка у него тоже есть, хоть и меньше - около 40 мс. Её всё равно слышно.

и видно

Даже на чистой синусоиде имеет выраженную амплитудную модуляцию:

ещё скриншот

А на чуть более сложном сигнале уже и смещает криво, и гармоники с шумом добавляет:

ещё два

Судя по всему, вариация SOLA.

Вот как! Спасибо. Не знал, что в Audacity можно так просто подключить VST плагин. Надо попробовать написать свой.

Не, плагин я подключал в своей программке) Audacity просто в записи стоял через виртуальный кабель.

Теоретически, питч-шифтер можно реализовать двумя способами: во временном домене (сжимая и добавляя периоды, либо растягивая и выкидывая "лишние") и в частотном домене (через БПФ). Вот обзор реализаций данного эффекта.

Первый способ кажется более простым и легко реализуемым, а также обладающим минимальной задержкой, так как мы можем сразу начать генерировать выходной сигнал, как только обнаружим 1-2 периода во входном сигнале. Для поиска периода можно использовать автокорреляцию. Её вычисление "наивным" способом требует много умножений, но алгоритм можно ускорить, уменьшив разрядность сигнала до 1 бита и заменив умножения операцией XOR с подсчётом единичных бит.

Второй способ требует разложения входного сигнала на синусоидальные гармоники, частоты которых в общем случае не совпадают с частотами БПФ, и для выделения гармоник требуются специальные методы (например, можно вычислять сдвиг фаз в перекрывающихся на 1/4 буферах БПФ), а затем после сдвига частот синусоид из них заново синтезируется выходной сигнал. Но этот метод даёт задержку, соответствующую двойной длине буфера БПФ.

Этот ещё не пробовал, интересно. Но у "железных" октаверов, что пробовал, либо звук ужасен, либо задержка сильно непривычная, либо и то, и другое. Поддержка полифонии в общем даже не особо нужна, т.к. на нижних басовых нотах полифония, кроме октав, или квинт один хрен не звучит. Ну разве что, специально для пошуметь)

А вот сыграть квинтами или квартами - этот способ работает без задержек. За счёт психо-акустического эффекта восстановления основного тона. Квинта снизит на октаву её нижний тон. Кварта - на 2 октавы верхний. Главное, без медиатора и подальше от нижнего порожка, чтобы высших гармоник было меньше.

А если это всё пропустить через какой-нибудь несимметричный нелинейный эффект (ламповый овердрайв, его имитация, или вообще фузз), то и реальный основной тон появляется.

На акустической гитаре это звучит, как бас. Но, конечно, потише, чем на акустическом басу, и тем более на контрабасе. Apocalyptica, короче)

Ого, всё-таки оно существует! Я давно уже ищу хороший VST host, и использую в этих целях OBS Studio, но всё что позиционирует себя как VST хост по факту не умеет работать с несколькими аудиодевайсами (((
Может быть кто-нибудь ещё софта накидает аналогичного Pedalboard?
Вот через OBS Studio можно то же самое сделать, например, но он очень тяжеловесный и там нет нативной поддержки VST3, и приходитcя тонну окошек открывать ((

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

IMHO, Direct Sound - это очень плохая идея, как минимум, из-за задержек и из-за того, что этот аудиоинтерфейс, как таковой, для музыки никогда не предназначался, а предназначался он для унификации аудиовывода, чтобы приложение не заморачивалось, что там у нас из аудио аутпутов есть. Если есть возможность, лучше использовать WAS (Windows audio session (Он же сеанс Windows Audio)), а, начиная с Windows 7 WASAPI. Ну и поставить пакет VST плагинов Waves, там чёрта лысого можно найти и не в пример качественнее того, что тут предложено. Повторюсь, всё на правах IMHO.

Спасибо
Я упомянул, что можно юзать FL Studio ASIO, у кого есть, тоже

VST плагинов Waves -- а они фришные? ;)

ASIO немного из другой оперы и, строго говоря, требует поддержки на аппаратном уровне. Ну то есть Asio4all и прочее, конечно, можно использовать, но, IMHO, как-то велосипедно. Другое дело WASAPI. Он программный, встроен в любую винду, начиная с 7-рки и предназначен для качественного прослушивания звука. За фриварность вавесов я вам не скажу, не обременял себя, к сожалению, выяснением этого факта, но там реально много хорошего, начиная от изминений времени, тональности, компрессоров, лимитеров, параметрических эквалайзеров, ревербераторов, делеев... Ну, в общем...

Наоборот, DirectSound был предназначен для минимизации задержек, и до Windows 7 альтернативы не было. А после - WASAPI в эксклюзивном режиме покрывает все потребности.

А не проще через условный audacity тон шифтануть? Меньше софта и лишних телодвижений

А то что нужно все это можно получить? Перенаправление звука и прочее?

Audacity не работает в реальном времени - это аудио-редактор для пост-обработки.

А чтоб это делать в реальном времени, то всё по-любому начинается с низкоуровневой поддержки в ОС - драйверов ASIO в Windows или микшера JACK в Linux/MAC. Дальше уже возможны варианты.

Звучит это, конечно странно. Одноядерный DSP на 200-400 МГц в гитарном процессоре обрабатывает звук без задержки, а 4x3 ГГц в ПК не всегда может удержать задержку в пределах 20 мс, даже если просто копирует входной аудио-поток на выход. Но это, к сожалению, факт.

Потому что и Windows, и Linux - это не системы реального времени и должны обеспечивать многопоточность. А у гитарных процессоров никаких других задач нет и работают они в однопоточном режиме.

Sign up to leave a comment.

Articles