Outsidepro Arts Live
Open in Telegram
Блог незрячего звукорежиссера, музыкального и саунд-продюсера, аранжировщика, автора музыки и текстов, немножко программиста, немножко доморощенного философа, немножко белой вороны, мужа жены и отца двух сыновей. Дистрибуция: Outsidepro Arts.
Show more241
Subscribers
-124 hours
-27 days
+930 days
Posts Archive
Коллегам на заметку
Простите, но опять вайб-кодинг. На этот раз фактически по заказу: захотелось помочь хорошему человеку.
GridSlice — Glitch Looper для REAPER
Автор: Outsidepro Arts
Версия: 1.0
Что это: JSFX-плагин для создания глитч-эффектов на треке с аудио. При удержании MIDI-ноты плагин захватывает фрагмент аудио длиной, соответствующей выбранной сетке, и кольцует его до отпускания ноты. После отпускания возобновляется сквозное прохождение сигнала. Позволяет получить эффекты stutter / repeat / tape-stop без нарезки.
Устанавливается на аудио-трек и принимает аудио и MIDI одновременно.
---
## Установка
1. Файл
GridSlice.jsfx находится в REAPER/Effects/GridSlice/ — REAPER обнаруживает его автоматически. При ручном копировании: Options → Show REAPER resource path → Effects и поместить туда папку.
2. Требуется перезапуск REAPER или FX Browser → Rescan.
3. В браузере эффектов выполнить поиск GridSlice.
Не требует дополнительных зависимостей, работает при любом srate (44.1–192 кГц), компенсирует tempo проекта на лету.
---
## Быстрый старт (30 секунд)
1. Трек: создать трек с битом, вокалом или лупом. Добавить GridSlice в инсерт.
2. MIDI: на тот же трек подать MIDI — либо Input: MIDI → All → All channels + Record Arm + Monitor On, либо настроить Send с MIDI-трека (I/O → Send → MIDI: All → 1).
3. Воспроизведение: при нажатии C3 (MIDI 36) воспроизводится повтор целой ноты (2 сек на 120 BPM). При удержании ноты — кольцо, при отпускании — возврат к исходному сигналу. Доступны, например, D3 (38) — четверть, F3 (41) — 1/32.
4. Графика: в UI плагина (FX → GridSlice) отображаются State: CAPTURING / GAP / LOOPING и длины в семплах.
> Важно: обработка осуществляется только для нот C3–B5 (36–71). Остальные ноты проходят транзитом по цепочке.
---
## Карта сетки — 3 октавы
Каждая следующая нота — в 2 раза короче. Октава задаёт форму:
Более подробно можно почитать в документации в архиве.В прошлом посте была допущена оговорка: я написал, что задержка составляет 900+ МС. Я каким-то непостижимым образом перепутал единицы и написал миллисекунды. На самом деле, задержка измеряется в семплах. Неистово прошу прощения!
Коллегам на заметку
Навайбкодил обвязку в VST3 довольно неплохой нейронной сети DPDFNet. Репозиторий здесь. Собранный VST3 здесь.
ВНИМАНИЕ! Модель расчитана исключительно на голосовые данные!
Плагин вносит хорошую такую задержку в 900+ МС, но она корректно сообщается хосту для компенсации. Однако, вам может показаться, что задержка все равно присутствует: в дельте вы слышите раздвоенный сигнал. Все так, это погрешности самого движка, которые он сам подсчитать не в состоянии.
Как пользоваться: Просто ставите плагин в цепочку эффектов, и он начинает работать. Поскольку движок не подразумевает никаких параметров управления, в плагине ничего настроить нельзя. Лучше не используйте его в Realtime, а рендерите обработку. Плагин кушает ОЧЕНЬ МНОГО РЕСУРСОВ!
Мне очень понравилось, что метод шумоподавления дает весьма чистую картину от артефактов. Да, разумеется, здесь они бывают, но выглядят не как опускания спикера головой в унитаз, а просто небольшой аналоговый брак. Также, модель довольно неплохо вытаскивает голос из весьма зашумленных источников.
ОДним словом, я пользоваться буду. Причем, прямо в продакшне.
Коллегам на заметку
Ребята! Я нашел прекрасную нейронную сеть для шумоподавления! Сейчас пытаюсь навайбкодить VST-плагин.
Точнее, плагин уже навайбкоден, осталось его отладить и задержки компенсировать. Хотя, плагин все-таки нужно использовать не в реалтайме: уж слишком нейронка жручая, потребляет 3.3% мощности процессора.
Да, ребята - вайб-кодеры. Да, сегодня это стало возможным. Да, ребята попробовали. Да, им захотелось поделиться получившимся с сообществом. Что здесь такого? Вы, программисты со стажем, не дошли до этого, а они - дошли. Если уж вы скептически относитесь к вайб-кодерам - не зовите их! Они не стоят вашего внимания! Но самоутверждаться за их счет - моветон.
И да, я тоже вайб-кодер. Зная несколько языков программирования, я предпочту дать задачу LLM, чтобы написать какой-то маленький "длясебяшный" проект. Мне это нравится. Я отдаю себе отчет в том, что эти проекты, по сути, франкенштейн из песни "Я его слепила из того, что было". И ЧО? Оно работает как надо мне? Работает. Я могу почитать код и поучиться? Могу. Я могу закрыть свои задачи по моим нуждам? Могу. Я вообще считаю, что лет через десять программисты будут нужны только для описания какой-то оригинальной идеи, backend'а. Дальше - каждый пользователь будет строить то, что ему нужно, используя ИИ. Грустно? Ну, кому-то, наверное, да. Я же не жду, когда кто-то из разработчиков напишет софт для Apple Magic Keyboard, а вайб-кодю его себе сам.
Да, ребята - вайб-кодеры. Да, сегодня это стало возможным. Да, ребята попробовали. Да, им захотелось поделиться получившимся с сообществом. Что здесь такого? Вы, программисты со стажем, не дошли до этого, а они - дошли. Если уж вы скептически относитесь к вайб-кодерам - не зовите их! Они не стоят вашего внимания! Но самоутверждаться за их счет - моветон.
И да, я тоже вайб-кодер. Зная несколько языков программирования, я предпочту дать задачу LLM, чтобы написать какой-то маленький "длясебяшный" проект. Мне это нравится. Я отдаю себе отчет в том, что эти проекты, по сути, франкенштейн из песни "Я его слепила из того, что было". И ЧО? Оно работает как надо мне? Работает. Я могу почитать код и поучиться? Могу. Я могу закрыть свои задачи по моим нуждам? Могу. Я вообще считаю, что лет через десять программисты будут нужны только для описания какой-то оригинальной идеи, backend'а. Дальше - каждый пользователь будет строить то, что ему нужно, используя ИИ. Грустно? Ну, кому-то, наверное, да. Я же не жду, когда кто-то из разработчиков напишет софт для Apple Magic Keyboard, а вайб-кодю его себе сам.
Когда лидеры мнений свернули не туда
К Тифлостриму я всегда относился с живым интересом. Ведь у них всегда обсуждались животрепещущие темы, свежие новинки в тифло-пространстве, всегда был здоровый оптимизм, была высокая планка, ведь начиналось все еще с эфиров Радио ВОС, где участвовали весьма статусные люди в качестве интервьюируемых. А самое главное - их позиция всегда была близка к журналистской, а если и не журналистской, то популистской.
Время шло, случались события. Вскрывались какие-то непонятные категоричности в поведении людей, граничащие с подростковым протестом. Мне это было непонятно: в Школе Юного Журналиста нас учили, что журналист в эфире не имеет своего мнения. Он доносит сухие факты. Если хочешь сформировать мнение общества - жонглируй фактами, но свое оценочное суждение оставь при себе. Если тебя что-то не устраивает, и ты не можешь изменить ситуацию, а самое главное - отношение к ней, измени место дислокации по отношению к ситуации, но терять журналистскую честь - это самое последнее, на что ты должен идти. К популистам отношение более свободное: они никаких курсов не заканчивали, здесь главное - ответственно относиться к тому, что ты высказываешь, ибо за тобой определенная толпа последователей.
"Ну, ладно, - думал я. - Людям ударила в голову звездная болезнь, ведь на пик популярности в комьюнити они взлетели в текущем моменте." Кредит доверия был высок, и я, пытаясь не оглядываться назад, стал посматривать их уже на Youtube и стал воспринимать их как популистский проект.
Затем случилась война. Или СВО. Предпочтительное для вас подчеркните. Позиция людей стала ультра-правой, я бы даже сказал, радикально правой. Но и это меня особо не удручило. Все мы знаем Andi Vax, все мы знаем, на что он агитирует донатить, как он нас называл и так далее. Тем не менее, Андрея до сих пор интересно смотреть, ведь разбирает он новые плагины, даже через призму своего отношения, и делает это он до сих пор в той же самой манере, а все эти агитации мелькают чуть ли не три процента времени видео, и от них легко абстрагироваться. Тем не менее, качество контента Тифлострима стало падать именно с этого места. Все больше началось обсуждения политических взглядов, все меньше - тематики тифло-мира.
Апогеем стал один из последних эфиров. Каюсь, последнее время мне стало тяжело их смотреть, и я немного отпустил их из своего поля зрения, и узнал о нем из поста Артема.
Раньше я думал, что гостей зовут, чтобы донести информацию об их продукте. Теперь, оказывается, чтобы самоутвердиться за счет них. Круто. Вместо того чтобы обсудить реальную пользу востребованных программ, ведущие сводили диалог к тому, что гости занимаются профанацией, поскольку не умеют программировать классическим способом. Допускать откровенно менторский тон. Допускать постоянные перебивания...
Упрекать гостей за неиспользование систем контроля версий? Вы серьезно? Вы на каждый файл f.txt запускаете git init? Или вы комитите каждое изменение рабочего стола? Или вы каждый сценарий к видео ведете ветками в Git? Если проект не планируется как Opensource, никто никому и ничем не обязан. Мы, на заре программирования, вообще вели код в Dropbox! Мы тоже неучи и бездари? Скажите это Сергею Паршакову, который по знанию заткнет вас за пояс одним только словом какого-то алгоритма!
Критиковать сайт за отсутствие корректной семантической разметки? По-моему, ведущие сейчас живут в Европе? И уж не европейцам бы говорить о доступности! Семьдесят процентов продуктов из Европы сегодня недоступны! Элементы Clickable? Ну и что? У вас же еще не атрофировался мозг, чтобы понять, что слово "Скачать" подразумевает, что сюда нужно нажать, а не сесть на пенек и ждать от него идеальной семантики по стандарту WCAG какой-то там версии! Да, я тоже отключил объявление Clickable! Но у меня как-то не возникает проблем с дедукцией! И да, в следующих версиях NVDA можно будет перемещаться по элементам Clickable.
Отцовские будни
Подкосил малых злостный вирус. Сначала младшого, затем - старшого. Первый день - температура ближе к 40 и не сбивается. Второй день - полегче: температура в районе 39, но уже поддается сбиванию.
Но не в этом суть. Суть в том, что старшой запросил взрослые документалки. Любит он на ночь посмотреть Побединского, ага. Сначала мы смотрели о поездах. Нашел вот это видео, которое он проглотил прямо взахлеб.
Затем он запросил у меня найти что-то о самолетах. Сначала я допустил ошибку, включив ему просто факты о перелетах. То видео, очевидно, ему не особо зашло, так как он утверждает, что о самолетах он ничего не видел.
Но я нашел ему канал! Видео-блог пилота Карена! Я буду плохим отцом, если некоторые видео ему отсюда не зайдут! Тридцати семи летний мальчик сидит и залипает на видео пилота! Съемка, комментирование - все на высоте! С легким юмором, фактически на чиле - то, что надо! Если видео Летчика Лёхи все-таки были по большей части демонстрацией сдержанности, рутины профессионального пилота со стажем, то здесь - неприкрытый энтузиазм и восхищение неофита. Да, я понимаю, что Карен профессионал, но он еще молодой, и ему есть чему еще удивляться в этой жизни. И вот это - прямо захватывает!
А вот и сам плагин.
Версия 1.0.0.
# Simplepumpe
Автор: Outsidepro Arts
JSFX-плагин для REAPER: шейпер громкости, имитирующий сайдчейн-памп от бочки (аналог KickStart / AirPumper). Синхронизируется с темпом и позицией проекта.
## Установка
- Скопируйте файл
Simplepumpe без расширения в %APPDATA%\REAPER\Effects\Simplepumpe.
После установки откройте FX Browser и выполните rescan JS effects. Можно вместо этого просто перезапустить REAPER. Найдите плагин в разделе JS: Simplepumpe и добавьте его на трек.
## Параметры
| Параметр | Диапазон | По умолч. | Описание |
|---|---|---|---|
| Depth (%) | 0–100 | 50 | Глубина приглушения |
| Grid | список | 1/4 | Сетка: один памп-цикл на выбранную длительность. 1/4–1/32, триоли (T), пунктиры (D) |
| Curve (%) | 0–100 | 50 | Форма кубической огибающей возврата: 0 — медленный возврат с акцентом на конец цикла, 100 — быстрый возврат с акцентом на начало цикла |
| Hold (% of cycle) | 0–100 | 0 | Удержание полного приглушения: часть цикла сигнал лежит на минимуме, возврат по кривой начинается после |
| Attack (% of cycle) | 0–100 | 0 | Скорость спада громкости в начале цикла |
| Release (% of cycle) | 0–100 | 0 | Дополнительное сглаживание возврата громкости |
| Offset (% of cycle) | −100…+100 | 0 | Сдвиг фазы цикла относительно сетки проекта |
| M/S Balance (%) | 0–100 | 100 | Баланс обработки Mid/Side: 0% — памп только на Mid-канал, Side не трогается; 100% — оба канала обрабатываются одинаково |
Форма возврата задаётся интерполяцией двух кубических кривых:
y(t) = (1-c) * t^3 + c * (1 - (1-t)^3), где c — Curve от 0 до 1, а t — положение в части цикла после Hold. При Curve=0 возврат медленный в начале и быстрый в конце; при Curve=100 — быстрый в начале и плавный в конце. Это не мгновенный скачок: в обоих случаях громкость достигает единицы только в конце цикла.
Hold, Attack, Release и Offset задаются в процентах от длины цикла сетки, поэтому музыкально предсказуемы при любом темпе. Максимальный «плотный» памп: Depth=100, Hold по вкусу, Curve=0, Attack=0.
## Доступность
Все параметры — обычные слайдеры JSFX: видны в диалоге FX Parameters, автоматизируются, доступны экранным чтецам (OSARA). Окно с осциллограммой огибающей (@gfx) — декоративное, элементов управления в нём нет.
При остановленном транспорте плагин плавно возвращает громкость к единице (шейпинг работает только во время воспроизведения/записи).Коллегам на заметку
Тут плагин Glitch 2 раздают бесплатно
Автор плагина внезапно покинул этот бренный мир, и команда решила его обнародовать.
Плагин есть под все платформы.
Наткнулся случайно на эту короткометражку.
Наши реалии. Причем, в какой бы то ни было сфере. Прямо почувствовал всю боль и рукалицо эксперта: "Что конкретно вам решает выполнить задачу? - Геометрия... - Игнорируйте ее!"
Коллегам на заметку
Как-то давно, в одном тематическом чатике проходила информация о плагине, который бросается на мастер-секцию давки, затем, на телефоне, либо сканируется QR-код, либо вводится адрес в браузере, и вуаля - вы слышите вывод с мастер-секции! Думаю, объяснять зачем это нужно не надо, все прекрасно знают о Shit-control. Все это добро работает в вашей локальной сети, то есть, никуда во внешнюю сеть аудио не просачивается.
С тех пор утекло много воды, и я забыл и разработчика, и название плагина, и даже бесплатный ли он. Решил сесть поискать что-то такое. И нашел.
Плагин EasyLink от PAA Audio. Бесплатен, но не открыт. Работает именно так, как я описал выше: сам плагин устанавливается либо в монитор-секцию (если таковая у вас есть), либо на мастер. Затем, сканируется QR-код на телефоне, который отправляет вас в браузер на локальный адрес компьютера. Здесь нажимаете кнопку воспроизведения и получаете поток из вашей DAW.
Из явных минусов плагина - отсутствие настроек буфера. Плагин "фигачит" все с маленькими-маленькими буферами, посему браузер начинает хрипеть и заикаться, если роутер ваш не самый лучший. Зато задержка - минимум, Стартует тут же, фактически вместе с Asio.
Да будет Shit-control!
Никогда не видел такой коммерциализации!
Вышел тут мод доступности на Cyberpunk 2077. Решил его установить. Захожу на страницу мода на сервисе NexusMods.
Во-первых, меня не пустили с Беларуси. Но ладно, с этим мы уже потихоньку начинаем мириться и имеем простенький VPN.
Во-вторых, поскольку я не авторизован, мне предлагают ручную загрузку. Открываю. И вижу список файлов. Вверху красуется надпись:
Download requirements in 1-click. No page visits or waiting.И ниже кнопочка "Go premium". Внизу весь список файлов мода. То есть, качай по одному, потом понимай куда и что нужно положить. Но, если хочешь, можешь скачать все в один клик, приобретя премиум!, За что мы дальше будем платить? За портабельную копию? За работу локально? За фреймворк? За инсталлятор?
Отцовские будни
Вчера, по следам дня рождения старшого, ходили в торговый центр. Точнее, в развлекательный детский центр, которые обычно в торговых центрах являются местной гордостью. Про то, что папа поседел за эти четыре часа - наверно, тема отдельного поста: все же незрячему контроль выполнить невозможно, и приходится полагаться на авось. И это самое «авось» тебя заставляет неистово нервничать. Каюсь, по выходу я не выдержал и купил стаканчик пива.
А вот то, что я действительно никогда больше даже рассматривать не буду - это планирование какого-либо персонального мероприятия в таких местах. Суть в чем: наши господа носились по всей немаленькой площади комплекса, играли с ребятами и девчатами. И тут приходят аниматоры. Местность декоративно перекрывается. Начинаем выяснять, и выясняем, что у кого-то день рождения, и они заказали аниматоров сюда. Наши пацаны ломанулись туда: «Папа, там лунтик пришел!», но их обламывают: Там день рождения, туда нельзя. А как это нельзя? они же до этого вместе два часа бегали вместе! Так что для меня отмечание дня рождения в таких местах - табу. если, конечно, не рассматривать вариант полного открытого для всех праздника.
P.S.: родители оказались понятливыми и, когда возле ограждения собралась толпа детишек, все-таки пустили всех на игры и чисто символически за участие что-то дарили. Наш младшой урвал два кулака карамелек.
