Знаете SQL? Можете стать композитором!
Мы живем в очень интересное время, когда компьютерные программы способны создавать предметы искусства.
То, что нейронные сети могут создавать картины, поэмы и музыкальные композиции, уже стало для нас обыденностью. Но, что если мы вам скажем, что ClickHouse тоже умеет творить?
Совсем недавно разработчики этой замечательной СУБД смогли при помощи SQL-запросов создать mp4 файлы, которые можно послушать. Ознакомиться с проектом можно в репозитории GitHub.
Как это работает?
В репозитории есть несколько примеров запросов для создания музыки. Их структура сделана так, чтобы в результате получалась таблица с набором параметров звуковой дорожки. Громкость звука, частота звуковых волн разной формы (синусоидальная, прямоугольная, пилаобразная и треугольная), шумы различной формы и так далее.
Результат переводится в бинарный формат и подается в стандартный поток ввода программе aplay, которая воспринимает результат запроса, как будто это медиа файл CD формата, и проигрывает его.
Конечно, это очень упрощенный способ генерации звука, но все ограничения сводятся к разнообразию математических функций в ClickHouse. Однако, в будущем мы наверняка сможем создавать более сложные музыкальные композиции всего лишь при помощи SQL-запроса к одной очень-не-тормозящей-СУБД.