LINUX.ORG.RU

Гитарный звук и Linux

 , ,


8

7

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

Кастую ist76, Chelobaka, AP.

Обсуждаем вопросы использования guitarix, rakarrack, tuxguitar, VST, LV2, LADSPA плагинов и прочего.

Практический результат обсуждений можно увидеть тут.

https://github.com/olegkapitonov/Kapitonov-Plugins-Pack

Версия 1.0, бинарники

https://github.com/olegkapitonov/Kapitonov-Plugins-Pack/releases/tag/v1.0

Прямая ссылка на скачивание всех бинарников

https://github.com/olegkapitonov/Kapitonov-Plugins-Pack/releases/download/v1....

Перемещено leave из multimedia

Перемещено jollheef из talks

Перемещено leave из multimedia

★★★★★

Ответ на: комментарий от curufinwe

Так. Я впустую потратил день пытаясь пересобрать Cabbage, чтобы собрать lv2 плагин. Эта штука написана клешнями. Я в прошлый раз мучался, три дня потратил, пока ошибки разгрёб, а теперь они ещё больше ошибок добавили. Я вообще не понимаю, как они это собирают. И, главное, на форуме там кто-то умудрился собрать, а у меня ни в зуб коленом. Таких функций в Джусе нет, какие они вызывают. В других поперепутали названия, что хрен проссышь, в третьих непойми откуда вместо двух членов четыре, искал, может перегружено где - нет, не нахожу. Нормальной среды сборки нет, типичная виндузятная, накидаем всего везде и ручками запишем во все файлы, а файлы должны лежать ровно там, где они были у автора. Указать ему где у меня стайнбергский sdk установлен - никаких шансов. Просто чтобы исправить путь к библиотекам и заголовкам csound, не достаточно передать переменную, надо вручную всё переправить с /usr/local/ на /usr. А оно распихано ВЕЗДЕ. Короче, хрень полная. И всё так. Как это можно собрать? При каком совпадении направления ветра и давления...

Убил я весь день и так и не собрал. Попробовал снова запустить csoundqt и записать - трещит во все поля. Вживую слушаю, всё в порядке, а записать никак. Пробовал поменять импульс, всё что перепробовал - работает чуть по другому, нежели в кабсиме, но восторга уже не вызывает. Есть мысль почему. Разный размер буффера. Каким-то образом это влияет на звук конвольвера. Ну и в баню, раз такие проблем со сборкой, не окупается коврять. Бло б просто мне на побаловаться, другое дело.

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

Deleted ()
Ответ на: комментарий от Deleted

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

Черт знает, я не слышал, может я не знаю что это и не чувствую.

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

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

curufinwe ★★★★★ ()
Ответ на: комментарий от curufinwe

Да, в кирпиче,же объявляется 96000, но на моей лаптоповской встройке, на которой я гоняю сейчас это всё, просто не поставить выше 48000. Но вот это аот, как касетный магнитофон, головка плавает и то больше вверху, то меньше, я заметил только в наушниках. Пока не критично.

Ладно, я тут с детям, последний вечер.

Удачи в экспериментах. Как смогу, вернусь к экспериментам тоже, выйду на связь.

Deleted ()
Ответ на: комментарий от Deleted

ist76

Вот что расковырял пока, не без помощи amplitube. Есть усилители, где перегруз, а потом тонстек. А есть - где тонстек, а потом перегруз. Это фендеры, в том числе понравившийся мне в амплитубе princeton, Mesa Boogie. За счет того, что перед перегрузом тонстек, они перегружают иначе - тот самый чистый глубокий низ и перегруженный верх становится достижим. У которых тонстек после перегруза - дают более равномерный перегруз по частотам.

Чтобы сымитировать это, надо тонстек или эквалайзер между кирпичами втыкать.

Плюс к этому, обнаружил интересное свойство на кирпичах. Когда подогнал перегруз по свойствам сколько-нибудь близко к тому, что дает princeton, стало слышно малейший нюанс в игре. Чуть не так ущипнешь, чуть изменишь наклон медиатора - звук сильно меняется. Если взять другой медиатор - вообще кардинально меняется. А с гитариксом я порой с трудом отличал миддловый датчик от бриджевого )))

curufinwe ★★★★★ ()
Ответ на: комментарий от curufinwe

Есть усилители, где перегруз, а потом тонстек. А есть - где тонстек, а потом перегруз.

Ну какбы да - бывает эквалайзер до, а бывает после гейна. Бывает пассивный, бывает - активный. Всё, конечно, по-своему влияет.

Когда подогнал перегруз по свойствам сколько-нибудь близко к тому, что дает princeton, стало слышно малейший нюанс в игре. Чуть не так ущипнешь, чуть изменишь наклон медиатора - звук сильно меняется. Если взять другой медиатор - вообще кардинально меняется.

Это очень хорошо, так и должно быть.

ist76 ★★★★★ ()
Ответ на: комментарий от curufinwe

Погоди, вот ist76 выкладывал схему, у него тембролок перед вторым контуром, как раз на второй лампе (или второй половине лампы), после темброблока. у него усиление с перегрузом. И у воксов, которые я приводил, тоже. Но звук-то отличается. Мне кажется, надо обратить внимание на сами темброблоки, они сами по себе разные, с разными огибающими, некоторые как эквалайзер, тупо поднимают и опускают свою полосу, со своей синусоидой, а есть такие, что опуская, например, верха, добавляешь внизу и наоборот, добавляя верха, уменьшаешь басы и очень такой пологой дугой. Середина тоже имеет ОЧЕНЬ большое значение, частота, ширина охвата, влияние на соседей. Может в этом секрет «британского» звука?

Deleted ()
Ответ на: комментарий от Deleted

Видимо да. Буду ковырять amplitube, там же все заложено.

curufinwe ★★★★★ ()
Ответ на: комментарий от curufinwe

Для венды есть такое: http://www.duncanamps.com/tsc/
можно по очереди засовывать схемы разных тембрблоков и смотреть как оно работает
Не оно?

ist76 ★★★★★ ()
Ответ на: комментарий от ist76

в Москве, зато снег настоящий

На горных перевалах он тоже ничё так.

AP ★★★★★ ()
Ответ на: комментарий от AP

Там воздуха мало и горячий кофе не продают
Давай лучше к нам, у нас гитары, фотики, нездоровые дискуссии

ist76 ★★★★★ ()
Ответ на: комментарий от Deleted

Доковырялся. Оказывается кирпич в корне не правильно работает. Сама модель правильная, но режим работы триода не тот...

Удивительно, как оно такой звук дает при этом.

curufinwe ★★★★★ ()
Ответ на: комментарий от curufinwe

Ты на гитхаб какой сорцы ещё не выложил?

AP ★★★★★ ()
Ответ на: комментарий от AP

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

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

Когда разберусь и получу хоть что-то похожее на правду, выложу.

curufinwe ★★★★★ ()
Ответ на: комментарий от curufinwe

Но если честно, после 18 страниц треда я морально готов купить Yerasov Classic 50 и педалей к нему набрать :)

AP ★★★★★ ()
Ответ на: комментарий от curufinwe

В гитариксе все нормально.

У меня в кирпиче неправильно напряжение катода задается. Крутилка Bias не имеет смысла, этот параметр должен вычисляться на основании крутилки Feedback. Но вычисляется он при помощи скрипта на питоне с настоящей моделью лампы. Как это сделать в lv2 плагине ума не приложу пока.

Оно не сильно на звук влияет, хотя несимметрию в перегруз вносит заметную.

curufinwe ★★★★★ ()
Ответ на: комментарий от AP

Так это ж не 2+2 сложить. Я только сегодня разобрался как работает усилитель на одном триоде. После 18 страниц треда. Из которых большую часть мне пытались объяснить как на самом деле должен звучать усилитель. Пока я не догадался amplitube поставить.

Еще чуть-чуть и можно будет выкатывать аналог одного усилителя из amplitube, сравнимый по звуку, уже почти получается. Я еще сделал утилитку для определения параметров перегруза, которую можно использовать и с софтовыми и с настоящими усилителями.

curufinwe ★★★★★ ()
Ответ на: комментарий от AP

Хорошая, стало быть, реклама получилась
А я вот, наоборот, теперь про отдельный кабинет и голову начал думать

ist76 ★★★★★ ()
Ответ на: комментарий от AP

А то - если хочешь - можешь вживую в 50ый воткнуться, если не слишком громко

ist76 ★★★★★ ()
Ответ на: комментарий от ist76

Эх как печально все... Я понял, как точно моделировать схемы усилителя. Особых сложностей с точки зрения математики там нет, уравнения и параметры ламп известны, я зря переоценивал неизвестность моделей ламп. Схемы со всеми номиналами тоже есть. И скорее всего, при таком подходе получится звук как у настоящего усилителя, только большая проблема с трансформатором.

Проблема в другом - это делать в реальном времени не реально. Слишком огромный объем вычислений. Вместо того, чтобы как в гитариксе выбирать число из массива, надо решать нелинейные уравнения на каждом отсчете. Это на порядки более затратно.

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

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

Простая схема, как в транзисторных педалях, моделируется легко, модель из гитарикса полностью тут подходит, только надо кривую перегруза заменить. То есть с этим уровнем проблемы нет.

В гитариксе эпик фейл вот в чем - сеточное сопротивление, два варианта, 68 кОм и 250 кОм. А в реальных схемах не так. Это сопротивление стоит в первом каскаде, который не перегружается. А в перегрузе - либо еще конденсаторы, либо вообще тонстек. То есть на разных частотах будет разная кривая, разный характер перегруза! Вот где ответ, почему звучит плоско.

Тут надо, видимо, пойти по пути который предлагал templarrr - строить многомерные таблицы с зависимостью от производных.

curufinwe ★★★★★ ()
Последнее исправление: curufinwe (всего исправлений: 1)
Ответ на: комментарий от curufinwe

а) CUDA, OpenCL ?
б) да хрен с ним, согласен на offline-рендеринг в полную силу и низкокачественный обсчёт в реальном времени (и даже вовсе без него)

ist76 ★★★★★ ()
Ответ на: комментарий от ist76

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

да хрен с ним, согласен на offline-рендеринг в полную силу и низкокачественный обсчёт в реальном времени (и даже вовсе без него)

Неплохо было бы это сделать, но чуть позднее.

curufinwe ★★★★★ ()
Последнее исправление: curufinwe (всего исправлений: 1)
Ответ на: комментарий от curufinwe

Тут надо, видимо, пойти по пути который предлагал templarrr - строить многомерные таблицы с зависимостью от производных.

И получить петабайты данных.

templarrr ★★★★★ ()
Ответ на: комментарий от templarrr

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

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

curufinwe ★★★★★ ()
Последнее исправление: curufinwe (всего исправлений: 3)
Ответ на: комментарий от curufinwe

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

Если прям в лоб делать то петабайты. Надо решить 2 проблемы: как сгенерировать сигнал для профилирования (взять сигнал, который использует Kemper - законно?..) и как это все дело интерполировать.

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

На операционнике вряд ли, а на полевиках - запросто.

Тут я противоречу сам себе, получается что педаль моделируется тоже не так просто.

С этим guitarix вроде неплохо справляется. ИМХО получше, чем Amplitube.

templarrr ★★★★★ ()
Ответ на: комментарий от templarrr

Откуда я знаю? Я что, программист? Это был просто вопрос

ist76 ★★★★★ ()
Ответ на: комментарий от curufinwe

Слишком огромный объем вычислений. Вместо того, чтобы как в гитариксе выбирать число из массива, надо решать нелинейные уравнения на каждом отсчете.

Где можно на эти уравнения посмотреть? Может их можно адекватно заменить полиномами?

templarrr ★★★★★ ()
Ответ на: комментарий от ist76

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

templarrr ★★★★★ ()
Ответ на: комментарий от templarrr

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

Вообще я пока прихожу к мнению что эта различная нелинейность влияет только как нюанс, в основном характер перегруза зависит от АЧХ тракта до перегруза, а тут все намного проще. То есть можно пока не заморачиваться и доделать как есть.

curufinwe ★★★★★ ()
Последнее исправление: curufinwe (всего исправлений: 1)
Ответ на: комментарий от templarrr

Ну вот на CUDA нелинейную оптимизацию же делают, нагугливаются реализации.

curufinwe ★★★★★ ()
Ответ на: комментарий от templarrr

Ну вот некуда здесь это применить

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

ist76 ★★★★★ ()
Ответ на: комментарий от ist76

Час назад зашёл в музторг и воткнулся в несколько комбиков. Ощутил рукожопие в терминальной стадии. Это когда вдруг не знаешь, с какой стороны за инструмент вообще браться, и аккордов никаких не помнишь. И пальцы деревянные :)

AP ★★★★★ ()
Ответ на: комментарий от AP

Предложение, если что в силе. Захочешь пощупать классика - милости просим. И стесняться меня не придётся - я вообще играть не умею.

ist76 ★★★★★ ()
Ответ на: комментарий от curufinwe

Здорово всем. Швецыя на проводе. Так что, для первой лампы достаточно имеющейся реализации, да? И про биас я, вроде, писал и раньше, что он у тебя не работает. А скажи, биас на первой лампе в принципе нужен? Не на второй лампе смещение появляется?

Deleted ()
Ответ на: комментарий от Deleted

Здорово!

Так что, для первой лампы достаточно имеющейся реализации, да?

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

И про биас я, вроде, писал и раньше, что он у тебя не работает. А скажи, биас на первой лампе в принципе нужен? Не на второй лампе смещение появляется?

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

Теперь просто вывалю инфу, то как я понимаю, если что не так, поправьте меня.

Есть два типа усилителей - без master gain (старые) и с master gain (современные). У старых перегружают выходной каскад - мощник, который работает в классе B или AB. Преамп с низким гейном, не перегружается. Может подгружаться лампа фазоинвертора.

У новых преамп с высоким гейном, потому можно перегрузить как преамп, так и преамп + мощник.

Перегруз мощника очень симметричный, поэтому дает только нечетные гармоники, и мягкий для обеих полуволн. Очень плавный вход в перегруз за счет этого, более «чистый» тон.

Преамп работает в классе A, поэтому дает несимметричный перегруз. С одной полуволны он мягкий, как у мощника (перегруз за счет сеточного тока), с другой полуволны - жесткий, как у транзистора (клиппинг). В результате, по сравнению с мощником - есть четные гармоники, более резкий вход в перегруз и больше «жужжания» (из-за жесткого ограничения с одной стороны).

Кирпич реализует каскад преампа (усилитель класса А). Поэтому для кранча, где желателен мощниковый перегруз - он дает не тот тип перегруза. Я сделал кирпич с мощником, в классе AB, выложу сегодня.

Заметил, что этот мощниковый кирпич хорошо накладывает свой перегруз на уже подгруженный звук. То есть если два обычных кирпича подряд перегрузить, получается грязно, а мощник после перегруженного кирпича - намного лучше. И после Tube Screamer.

Сейчас доделываю профилировщик, когда доделаю выложу графики, что получается в amplitube. Ну и звук. Если получится, можно будет как вторая проверка запрофилировать Classic 50 у ist76.

Когда пробую играть на всем этом - возникает ощущение рук из жопы. Очень чувствительно к корявой игре.

curufinwe ★★★★★ ()
Последнее исправление: curufinwe (всего исправлений: 2)
Ответ на: комментарий от curufinwe

Это всё с очень большими упрощениями и оговорками
Есть куча усилителей с мощником в классе А
Есть куча усилителей, которые лучше всего (как считается) звучат, когда у них перегружен и пред и мощник
Да вообще, схем немеряно самых разных

Когда пробую играть на всем этом - возникает ощущение рук из жопы.

А уж когда пробуешь записать - вообще караул, чем и ценно

ist76 ★★★★★ ()
Ответ на: комментарий от curufinwe

Ты моск. Так глубоко влез в этот вопрос... Просто - Вау. Удачи тебе в поисках.

Deleted ()
Ответ на: комментарий от ist76

Это понятно, я к тому что не было модели каскада класса B.

curufinwe ★★★★★ ()
Ответ на: комментарий от ist76

Теперь возник другой вопрос, даже более сложный - как выпрямить руки?

curufinwe ★★★★★ ()
Ответ на: комментарий от curufinwe

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

Deleted ()
Ответ на: комментарий от curufinwe

Когда пробую играть на всем этом - возникает ощущение рук из жопы. Очень чувствительно к корявой игре.

Ты на верном пути :)

AP ★★★★★ ()
Ответ на: комментарий от curufinwe

Запись в этом деле - самый первый помощник
А так - руки выпрямляет практика, но времени на нее никогда нет

ist76 ★★★★★ ()
Ответ на: комментарий от ist76

Сделал часть профилировщика, которая определяет уровень входа в перегруз сигнала на разных частотах. Это сильнее всего влияет на характер перегруза. Вот несколько интересных графиков, по оси X частота, по оси Y - уровень сигнала в децибелах.

Fender https://imgur.com/a/lRLsr

Marshall https://imgur.com/a/YXcKa

Guitarix https://imgur.com/a/IIz1V

Fender и Marshall из amplitube, при определенном положении ручек. И один из дефолтных преампов гитарикса, из пресета который я активно использовал раньше.

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

У гитарикса какая-то запредельная хрень. Сильно перегружается узкий кусочек сигнала около 2 кГц, что прекрасно объясняет звучание - на слух оно как из телефона.

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

Возникла внезапная проблема дебильная - не могу найти деконвольвер под линукс, мать его. Пришлось использовать Voxengo Deconvolver. Судя по всему, придется еще и деконвольвер самому писать, без него это профилирование вообще не реально.

curufinwe ★★★★★ ()
Последнее исправление: curufinwe (всего исправлений: 1)
Ответ на: комментарий от curufinwe

Автор Voxengo, кстати - из Сыктывкара
можешь попробовать поделится с ним наболевшим, возможно подскажет что-нибудь

ist76 ★★★★★ ()
Ответ на: комментарий от ist76

Исходники он вряд ли даст, а так то деконвольверы - не rocket science.

curufinwe ★★★★★ ()
Ответ на: комментарий от curufinwe

может, подскажет чего про подводные камни
кто знает?

ist76 ★★★★★ ()
Ответ на: комментарий от ist76

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

AP ★★★★★ ()
Последнее исправление: AP (всего исправлений: 1)
Ограничение на отправку комментариев: ★★