Bass Professor (13 онлайн)

Клод сделал дисторшн как будто лучше, чем был в вст2. В старой версии дисторшн подсирает каким-то шумом и треском, а у клода чистенько.
это кстати чистенько не у клода, а у оригинальной jsfx версии,
The second part is the interesting one: the crackle heard in the VST2 isn't in our version because it isn't in the JSFX either.

Our port is a line-by-line translation of the JSFX running entirely in double precision — which is exactly what REAPER's EEL2 does, since EEL2 is 64-bit float throughout.

The VST2 was a separate hand-port to IPlug, and VST2 processReplacing is a 32-bit float pipeline;
if its internal DSP also ran in single precision (very common in IPlug ports of that era),
then the RMS-normalization division — dividing by a very small, noisy RMS value — and the recursive filter states around the shaper become significant sources of quantization grit.

Crackle specifically also suggests block-boundary discontinuities or denormal stalls in the VST2's OD post-filters.

So "Клод сделал лучше" is half-true: we didn't improve the algorithm, we faithfully reproduced the JSFX, and it's the VST2 that was degrading it.

The decisive experiment: null our VST3 against the JSFX in REAPER with Dirt engaged. If that nulls deeply, it proves the VST2 was the deviant implementation.
 
  • Like
Реакции: Dmitry Stepin
Срочно подсунь ему вст2 длл и проект с ним, чтобы он всё прочитал как положено и подкрутил свой вариант
он подкрутил, вроде замена работает, попробовал в S1 загрузить vst2 plugin, покрутить фэйдеры, потом удалил vst2 и открыл проект, название осталось Bass Professor MK2.x64, но открылся новый VST3 плагин с покрученными фэйдерами
если VST2 не удалить заранее, то VST3 не видно после plugin rescan, это вроде можно решить с помощью Steinberg compatibility declaration, то есть id VST3 не будет полностью меняться, но сможет заменить VST2 версию, если проект её не найдёт. если по быстрому не получится, оставлю так.
1781248101431.png


OS4 Dirt — шейпер дисторшна работает с 4-кратной внутренней передискретизацией (oversampling). Зачем: любая сатурация генерирует гармоники, и на 44.1/48 кГц верхние гармоники «заворачиваются» обратно ниже частоты Найквиста — это алиасинг, негармоничный цифровой «песок», не связанный музыкально с нотой. Из-за него цифровой драйв звучит «дёшево» по сравнению с аналоговым. Передискретизация даёт гармоникам чистый запас по частоте до даунсемплинга. На слух: ручка Dirt звучит мягче и более «лампово», особенно на ярком тембре баса, высоких значениях Dirt и нотах в верхних позициях. Задержку не добавляет. Имеет смысл только при Dirt > 0; в сессиях на 96 кГц выигрыш меньше (запас и так есть).

Smooth — движения ручек и автоматизации сглаживаются за ~10 мс вместо ступенчатого изменения раз в аудиоблок, а смена LF Cut перестаёт щёлкать (в оригинале при смене частоты сбрасывается состояние фильтра — в legacy-режиме эта особенность сохранена намеренно). Когда полезно: при любой автоматизации параметров или «живом» движении фейдеров — гейны полос, Dirt, Output. Без него быстрая автоматизация может давать лёгкий «zipper»-шум; с ним — движения бесшумные.

St.Link — работает только при Channel = Stereo. В обычном стерео левый и правый каналы компрессируются независимо, поэтому когда одна сторона сильнее «давится» левеллерами, образ уезжает в сторону — плохо для стерео-басовых шин и широких синт-басов. В режиме Link все семь полосных левеллеров и мастер-компрессор считают один общий гейн по более громкой стороне и применяют его к обоим каналам: стабильный, центрированный образ даже при сильном левеллинге — поведение мастеринг-класса. В режиме Mono ни на что не влияет.

Ceiling — прозрачная защита выхода: полностью линейна примерно до −2.5 dBFS, выше — мягкое tanh-колено, которое асимптотически не доходит до 0 dBFS. Ловит случайные пики от горячих транзиентов или агрессивного Process без жёсткого цифрового клиппинга. Это страховка, а не максимайзер.

Главное правило для всех четырёх: выключено = бит-в-бит оригинальный звук .
Состояния переключателей сохраняются в пресетах, слотах A/B и проекте DAW — можно держать, например, пресет «live» со Smooth+Ceiling и пресет «null-test» со всем выключенным.

И про панель пресетов: — список пресетов для загрузки, поле имени + Save — сохранить под этим именем, Del — удалить пресет с текущим именем (двухступенчато: первый клик «взводит» кнопку, она показывает «Del?», второй клик в течение 3 секунд удаляет — защита от случайного нажатия без модальных окон), < > — листать пресеты по алфавиту, A/B — мгновенное переключение между двумя снимками настроек для сравнения, Cpy — скопировать текущие настройки в другой слот.
 
  • Love
  • Like
Реакции: Dmitry Stepin и Andruha
@evgeny26, передискретизацию на дисторшне и стерео линк точно надо сделать, будет лучше оригинала ) Отключаемые конечно.
p.s. вот бы такую модель как этот новый claude иметь локально на ноуте или мини пк и чтобы не тормозило ничего )
 
Последнее редактирование:
  • Like
Реакции: Andruha и evgeny26
у меня тоже - MK2 пришлось улучшать, поэтому дисторшн не вычитается
Твоя нейронка хуже справилась, потому что её вариант дисторшна вообще никак не вычитается из оригинала. Клод как-то иначе вопрос решил. Вообще клод молодец конечно. Спас прям.

@evgeny26, а де взять новую версию? Хочу подмену потестить)))) кстати, было бы здорово в идентификаторе убрать "х64", это чисто вст2 тема, устаревшая)) но при этом чтобы он все равно подменялся аатоматически
 
p.s. вот бы такую модель как этот новый claude иметь локально на ноуте или мини пк и чтобы не тормозило ничего )

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

To theoretically run a frontier-grade model like GPT-5.5 or Claude Fable 5 locally, you would need an enterprise-grade AI server cluster costing roughly $200,000 to $300,000, as these models likely exceed 1 to 1.5 trillion parameters.

так что ноут и мини пк отпадают... :(

а кстати, я может попробую сравнить с какой то небольшой локальной моделью, как она справится с таким же заданием
 
так что ноут и мини пк отпадают...
Ну это пока. Лет через десять нынешний клод будет летать на минипк того времени, но только он будет уже убогим и устаревшим)
 
  • Wow
Реакции: evgeny26
а де взять новую версию? Хочу подмену потестить)))) кстати, было бы здорово в идентификаторе убрать "х64", это чисто вст2 тема, устаревшая)) но при этом чтобы он все равно подменялся аатоматически
будет чуть позже сегодня,
а идентификатор x64 это от старой версии плагина на треке, после замены в проекте S1,
в браузере VST3 выглядит так:
1781253200199.png
 
будет чуть позже сегодня,
а идентификатор x64 это от старой версии плагина на треке, после замены в проекте S1,
в браузере VST3 выглядит так:
Посмотреть вложение 280062
А кубейс умеет сразу с новым айди подставлять. По идее в нем не будет на треке х64. Надо потестить)) А ручки удалось починить, чтобы шаг стал 0.1?
 
А кубейс умеет сразу с новым айди подставлять. По идее в нем не будет на треке х64.
:oops:
А ручки удалось починить, чтобы шаг стал 0.1?
это в принципе не проблема, стандартные функции JUCE, можно подкрутить.
0.1 на всех ручках ? не слишком мелко будет ? :rolleyes:
 
Твоя нейронка хуже справилась, потому что её вариант дисторшна вообще никак не вычитается из оригинала. Клод как-то иначе вопрос решил. Вообще клод молодец конечно. Спас прям.
Без сомнения Claude более продвинутая, да и нейронка не моя. Но насчет хуже - так нельзя говорить. Вычитаемость из оригинала в скрипте JSFX не является признаком качества, так как в оригинале какие-то косяки. Пока я чинил косяки нейронка что-то сильно там подтянула по точности и алгоритмам в дисторшне, а я был не против ) В целом, работает и ладно. Да и наличие таких инструментов в свободном бесплатном доступе - тоже очень радует.
Будем юзать проделки Claude, а это будет про запас :Dle8:
 
Вычитаемость из оригинала в скрипте JSFX не является признаком качества
Ну не совсем. Всё-таки в общем характер диста должен остаться тот же, это важно для обратной совместимости. Если сильно улучшить дист, то это может получиться другой плагин, что неплохо, но под данную задачу не особо годится.
 
Вычитаемость из оригинала в скрипте JSFX не является признаком качества, так как в оригинале какие-то косяки.
а клод наоборот сказал что jsfx норм, и должен вычитаться, а косяки были в портированной vst2 версии.
я в промпте сказал что нужно аудио обработку на 100% точно портировать.
но если в задании нейронке не было точно снять, то очевидно что будет разница, из за всяких импровизаций.
А как их юзать то вообще? Через синтакс?
в смысле, как полученный код скомпилировать ? :rolleyes:
 
  • Like
Реакции: dugdum®
Парни, спасибо огромное. Плаг нужный, часто использую (всегда). В Кубе запустился, в работе еще не проверил.
 
@evgeny26, блин, а куда делась кнопка моно/стерео?))) Это фича вст2 версии была? А как бы её вернуть-то, очень полезная кнопочка. И я ей активно пользовался. Без неё совместимость не полная:(
 
блин, а куда делась кнопка моно/стерео?))) Это фича вст2 версии была? А как бы её вернуть-то, очень полезная кнопочка.
вот жеж глаз-алмаз, ни одной кнопки не пропускает :Dle18:
а где она была расположена на морде лица? я уже стёр VST2 версию и лениво обратно возвращать :rolleyes:

Хороший вопрос пользователя — и он прав. Кнопка Mono/Stereo была фичей именно VST2-версии (в JSFX её никогда не было, поэтому её нет и на оригинальной графике фона, которую мы используем). Сам параметр Channel в нашем порте есть с момента анализа dll — он мигрирует из старых проектов и доступен из generic-вида DAW — но видимого контрола в GUI я не делал. Возвращаю кнопку на панель, рядом с Transients:

Кнопка вернулась. Ответ для пользователя:

Да, Mono/Stereo — это была фича именно VST2-версии: в оригинальном JSFX её никогда не было (JSFX всегда работает «mono → оба канала»), поэтому её нет и на фоновой графике, которую использует наш GUI.

При портировании я снял поведение переключателя с живой VST2-dll: Mono = обрабатывается левый канал и пишется в оба выхода (в точности как JSFX), Stereo = два полностью независимых тракта обработки (dual mono) — и реализовал параметр Channel один-в-один, включая его место в списке параметров (index 13), чтобы он корректно переносился при миграции старых проектов.

Просто видимого контрола в GUI не было — параметр был доступен только из generic-вида DAW.

Теперь он на панели: чекбокс «Stereo» в нижнем левом блоке, в одном ряду с Transients (галка = Stereo, пусто = Mono). Подпись отрисована в стиле остальных подписей блока, сам чекбокс — той же графикой, что In±6dB и Transients.

Параметр тот же самый, так что: автоматизация и состояния из уже сохранённых проектов подхватываются как есть, миграция из VST2 продолжает работать, и связка с режимом St.Link в HQ-баре остаётся прежней (Link действует только когда Channel = Stereo).

Пересоберите из свежего архива — и совместимость с VST2 по контролам теперь действительно полная: все 14 параметров старой версии имеют и точное соответствие в DSP, и видимые органы управления.
 
мля да выложите уже куда нить на нормальный хост ) у меня так и не открывается трансфайлс )
 

Сейчас просматривают