Как стать автором
Обновить

Как создать эвристический алгоритм онлайн-мастеринга и получить предупреждение от RIAA

Уровень сложности Средний
Время на прочтение 24 мин
Количество просмотров 15K
Всего голосов 143: ↑142 и ↓1 +141
Комментарии 32

Комментарии 32

Спасибо за статью!

Интересно почитать причастных да ещё и на этом ресурсе :) Тем более и с вкраплениями личной истории.

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

И хотя с некоторыми моментами я категорически не согласен!

но это бы не гарантировало стабильный заработок

А с некоторыми согласен даже очень!

Субкультура психоделического транса была очень малочисленна

Но выбирать не приходится :)
Тут много про уровни и АЧХ, у нас это на сколько я понимаю, приемлемо решается прямо на поляне с помощью DSP (ADAU).
А лично мой узкоспецифичный интерес по теме: stereo -> surround quadro. Тут пока не очень. Пробовали простейший матричный с али LA2785 - но результат скучноват. На смену лежит плата dolby pro logic 2 от какой-то бытовухи, но хотелось бы свою реализацию, что бы что-то можно было подкручивать и развивать. Всё это конечно темы прошлых дней, нынче надо смотреть на нейросеточки, но не представляю как это можно было бы совместить с real-time.

ещё когда мы все чуть-чуть того...)

ps знакомый музыкант из псай-транс тусы ещё >10-15лет назад лет делился немного о другом подходе - когда каждый участник танцпола - творец. И в рамках этой идеи появлялись управляющие воздействия, но вот сам механизм как влиять на "передвижение" по 3D сцене инструментов и для начала, что их надо как-то выделять, для меня так и остался на том же уровне неведения тем более, что сам я больше попаять да максимум запрогать периферию, а не вот это вот всё матан, Фурье, etc..... и нынче что вот это вот..)

А пока потихоньку собираем датасет материал, что бы отталкиваться хотя бы от чего-то.
Для упорядочивания думаю использовать что-то кроме скудного mp3 tag ещё отсюда : Анализ аудиоданных

Спасибо, коллега! :)

И хотя с некоторыми моментами я категорически не согласен!

Конечно, здесь я должен пояснить. Не знаю как сейчас, но в то время популярнее всего на мероприятиях был dark psy. И хотя я слышал и знаю много глубочайших и достойнейших работ в этом подстиле, на вечеринках зачастую я слышал немного не то. Это было вечным противостоянием: dark vs fullon. Иногда эти подстили даже чередовались на одном танцполе. В том же абзаце я описал мысли коллег-фуллонщиков, к которым не один раз обращались сомнительные личности с просьбой "выключить сопли и врубить ДАРЧИНКИИИ!". Наболевшее. :)

А лично мой узкоспецифичный интерес по теме: stereo -> surround quadro.

Очень интересная тема, но лично у меня был опыт только со стерео. Возможно существуют техники, используемые в постпродакшене, которые позволяют это круто осуществить, но я с ними не знаком. :)

нынче надо смотреть на нейросеточки, но не представляю как это можно было бы совместить с real-time

Я, если честно, тоже. TensorFlow, PyTorch частенько могут гигабайтами VRAM кушать. Как бы так это всё оптимизировать, чтобы на крошечных embedded девайсах всё летало - та ещё задача.

Зачем? DJ-оборудование занимает много места и питается от сети, можно хоть RTX 4090 добавить.

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

Обычно бывало так: основной танцпол - фуллон, вспомогательный (раза в 3 меньше) - дарк.
На совсем андеграунд вечеринках не был. Конечно были такие люди как Гоа Гилл, которые дарк гоняли на "стадионы" людей

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

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

Профессионалам не нужно в силу ряда концептуальных ошибок...А любители, любят сами потрахаться с плагинами :-)

Ну и опять же, говоря за чисто электронную музыку фруктов, зачем хирургия АЧХ если проще и лучше исправить косяк прямо в миксе.

Как выяснилось, есть определённая ниша. В 2017-м могло доходить до 100-200 мастеров в день. В основном это аудитория двух категорий

  • Музыканты, у которых нет навыков мастеринга или возможности приобрести подобные плагины

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

Существует довольно много стилей, в которых формат звучания играет важную роль. Как бы грустно это не звучало, но запросы "хочу саунд как у N" довольно популярны. И, при условии, что обрабатываемый микс довольно качественен и имеет схожие слои с референсом, Matchering может довольно точно перенести АЧХ, RMS и ширину стерео в процессе обработки. Также для некоторых людей ключевую роль может сыграть то, что это бесплатно и open source.

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

Очень воодушевляющий комментарий, благодарю вас! 🙏

Обязательно изучу, очень интересно. Спасибо большое!

А зачем переписывать на питоне, если в матлабе есть возможность генерации c и c++ кода? Не самый простой в освоении инструмент, но пользоваться можно

Буду знать, спасибо. Здесь скорее всего было дело в технологиях, в которых хотелось развиваться. C/C++ мне всегда давались с трудом - одна из причин моей последующей любви к Rust.

Отличная разработка, спасибо! Сделал простой pip install..., написал за 3 минуты цикл по списку треков папки и полностью локально отремастерил свой альбом 2000 г. (в стиле progressive rock/djent) по референсу группы DreamTheater, их альбому Awake за... 8 минут!

Что впечатлило: ушел бубнеж баса, вокал стал разборчивее и шире по панораме, нет зудящих гитар (записанных в линию). В сравнении с аналогами (напр. iZotope iOzone) - тот же результат бесплатно и быстро.

Я могу cейчас того же результата добиться с большими затратами труда (2 часа+), а 22 года назад "гонка децибел" только началась и софта было мало. Но парадокс в том что во многих стилях музыка уже рождается мастеренной, не хватает лишь "фирменного" призвука, который данная разработка дает (а благодаря python реализовать авто-подстановку разных референсов не составляет труда).

Насчет "fail story" - не согласен: да, продукт не стал товаром (в основном из-за того что его жизненный цикл короток), но он стал востребован. Правильно сделали что открыли и возродили на доступном языке. Сейчас множество музыкантов пишут на Python/Lua под DAW Reaper, и в своей массе перед кодингом в студиях страха уже нет ни у кого. А вот засилие колдунства "мастеровиков" - достало. Превратили ремесло в культ наживы и плодят еретические мысли, надеясь на почве невежества собрать невиданный урожай клиентов :-)

Автор, не бросайте музыку, она непременно вас еще "позовет" и лучше быть неподалеку. Да и Вирусу нужны трансовые секвенции.

Искренне благодарю за добрые слова и напутствие! Я рад, что вы нашли применение разработке ;)

Отличная история и слог. Досадно и поучительно для опенсорсеров про 60 чашек кофе за 8 лямов - как мелочь в шапку кинули. Фу такими быть.

Осенью'22 Джеральдо хотел отправить еще один донат, но это не удалось по причинам, которые известны всем.

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

:)) Картинка в тему!

Да, официальной облачной версии нет, только Songmastr и Moises.

На python благодаря современным фреймоворкам типа streamlit - онлайн-сервис наподобие Songmastr и Moises (и не сильно уступающий по внешнему виду) - можно запилить за пару часов. Но мастерить локально и безопаснее, и быстрее: студийные компьютеры не просто мощные, это 4+ ГГц монстры, которым такой пре-мастер - минутное дело.

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

Зачем скейлить? Может сделать клиентскую версию с Web Assebly(вроде есть такое для питона)

Да, да @tohodov, вы читаете мысли. :) Я тоже думал в этом направлении. Текущая Python-версия вряд ли зайдет, даже если numpy, scipy и другие зависимости заведутся на wasm (pyodide, python-wasm). С оптимизацией там не всё хорошо, во время свёртки использование памяти может достигать несколько ГБ. Поэтому я и рассматривал возможность переноса на Rust, где можно было бы всё это тонко переработать и нативно скомпилить под wasm.

Очень круто, не знал что так можно

Попробовал на songmastr отмастерить свои треки, результат не впечатлил. Может потому-что премастер сделал? Мои звучат как то воздушно, а после мастера зажато. Мастерил по референсу IM-I shine. И вроде и референс звучит красиво и мой трек, а на выходе что-то невнятное и зажатое. Год назад я нашел пост про нейросетевой мастеринг, где было несколько сайтов. В основном они хотели денег за шкуру неубитого енота, но я хотел просто попробовать. И нашел сайт, который выдавал часть трека, а за целый надо было платить 30 баксов. Причем я ждал сутки. И результат меня совсем не порадовал. Это получился трек, звучащий из радиоточки. За что там нужно было платить деньги - непонятно.

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

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

Результат сильно зависит от правильного выбора референсного трека. В вики репозитория я указал некоторые рекомендации по этому поводу. Например, у треков должны быть схожие слои и структура. Так как в Matchering отсутствует глубокое обучение, он не может добавить того, чего нет. Попробуйте поиграться ещё с другими вариантами референсов, если будет желание. :) Спасибо за отзыв!

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

Свёртка - самая дорогая операция здесь, это факт. Но без FFT не было бы Matchering, ИМХО =)

Понравился трэк Inspiration Feeling, чем-то напомнил альбом Infected Mushroom - Classical Mushroom

Спасибо! :)

Я часто вдохновлялся звучанием треков таких артистов, как Infected Mushroom, Beat Hackers, Vibe Tribe, Ananda Shake, ITP... список можно продолжать бесконечно :)

И остальной альбом весьма забористый, слушаю на спотифай.

К слову, деньги с продаж альбома идут неизвестно куда. Менеджер Sundance Records сообщил, что их кинул вышестоящий дистрибьютор Wirikuta. Мутная история, но я решил оставить всё как есть. Главное - слушатели.

Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории