Программирование музыки на Лиспе

    Сэм Арон (Sam Aaron), один из разработчиков Overtone, выложил впечатляющее видео, как он синтезирует мелодии в редакторе Emacs, используя различные приёмы — триггеры инструментов, назначение будущих событий и проектирование сэмплов — на языке Clojure. Музыка звучит сразу после написания строчки кода (live coding).




    Overtone — это удобный фронт-энд для известной open-source программы SuperCollider (см. «Введение в SuperCollider»). Overtone использует в качестве аудиодвижка SuperCollider, а программирование осуществляется на Clojure. Впрочем, Overtone может работать и на другом движке, например, jack под Linux.

    Синтез звука в Overtone выглядит впечатляюще, но сложно представить, что его реально станут использовать музыканты. Скорее, это инструмент для развлечения или обучения программированию, может быть, ещё для разработки игр. Работать с Overtone легче, чем с SuperCollider, потому что не нужно учить особый язык программирования, который используется в SuperCollider.

    Но у разработчиков Overtone серьёзные планы. Они собираются сделать визуальный интерфейс, аналогичный PureData или Max/MSP, а также интегрировать P2P-функционал для совместного сочинения музыки, проведения совместных джем-сессий, обмена инструментами и эффектами.

    Можно представить, как в будущем ди-джеи будут зажигать публику на дискотеках, программируя миксы в Emacs прямо на сцене. Программный код будет транслироваться на большом экране, а музыка тут же звучать из колонок. Это и есть джем-сейшн с использованием live coding, о чём, наверное, мечтают разработчики Overtone.
    Метки:
    Поделиться публикацией
    Похожие публикации
    Комментарии 25
    • 0
      Комментируем! Создал «первый коммент», чтоб можно было комментить, пока Хабру не починят :) Подробности: habrahabr.ru/qa/12275/
      • +1
        Есть хорошее видео на эту же тему: vimeo.com/2735394
        • НЛО прилетело и опубликовало эту надпись здесь
      • НЛО прилетело и опубликовало эту надпись здесь
        • НЛО прилетело и опубликовало эту надпись здесь
          • +7
            Чуток оффтопик, ибо вопросы не про музыку, но всё-же про emacs. Как так получается, что у людей он красивый, а у меня как будто [censored]?..
            1. Почему впечатление, будто буквы у автора видео неоновые? Это постобработка видео такая или хитрая тема для емакса?
            2. Там автокомплит программерский, это что было? man/google чего?

            Спасибо.
            • –1
              Я очень сильно удивлён. Мужик пишет «не думая» 45 рядков кода за 3:30 секунд = 10800 рядков (говнокода) кода за 1 рабочий день = хороший работник.
              • +2
                А как ему еще писать, если он один из разработчиков этой штуковины? Если у вас есть опыт разработки чего-либо, с чем вы сталкиваетесь каждый день, и знаете систему наизусть, то удивления у вас это вызывать не должно.
                • 0
                  Ну вот подумайте, вы завтра прийдёте на работу, сделаете себе чашечку кофе, и начнёте в таком-же бешенном темпе программировать? Мужик явно долго подготавливался, если не читал это всё это с листа ;-).
                • +1
                  В комментариях на hackernews автор видео пишет что тренировался целый день, чтобы записать ролик без ошибок.
                • +3
                  Можно и на С =)
                  www.youtube.com/watch?v=GtQdIYUtAHg&
                • 0
                  On-tne-fly кодинг уже давно есть в языке Chuck, так что не удивили;)
                  • +1
                    2003 г. Давно? Прекратите эту бестолковую рекламу.
                    • 0
                      Если on-the-fly — это возможность выполнить текущую строчку кода по хоткею, то надо вспомнить Smalltalk.
                    • НЛО прилетело и опубликовало эту надпись здесь
                      • НЛО прилетело и опубликовало эту надпись здесь
                        • 0
                          Как раз, хотел lisp поучить.
                          • +2
                            Признанный сообществом лучший учебник: lisper.ru/pcl/ (перевод)
                            • +1
                              А ещё заглядывайте на irc://irc.freenode.net/#lisp Коммьюнити даже вчера впервые услашавшим слово „лисп“ готовы помогать.
                              • 0
                                Спасибо за советы. Я как раз думал либо эту книгу взять, либо начать с публикации из журнала «Практика функционального программирования», но там больше про Clojure, чем lisp.
                                • +1
                                  Чуть не забыл, на канале всего два человека по-русски говорит. Если это проблема, то на lisp@conference.jabber.ru их больше.
                                  • НЛО прилетело и опубликовало эту надпись здесь
                              • +1
                                А почему не упомянут extempore? :)

                                www.vimeo.com/20502359

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