• ,
  • вход на сайт

    Имя пользователя :
    Пароль :

    Восстановление пароля Регистрация
    Max/MSP. Взгляд инженера.

      Max – продукт компании Cycling74, это среда визуального программирования для работы с аудио, видео и мультимедиа информацией и создания приложений, работающих в реальном времени. Max/MSP/Jitter изначально создавался, как инструмент для музыкантов, однако за долгую историю превратился в универсальный инструмент, позволяющий решать любые задачи, связанные со звуком, изображением и взаимодействием с человеком или оборудованием. Чаще всего он применяется для создания интерактивных инсталляций, алгоритмической музыки и визуального ряда, хотя, благодаря открытому API и возможности написания собственных объектов, его можно использовать для любых целей, требующих работы в real-time.

    Max/MSP. Взгляд инженера.

      Чем же данная среда может быть интересна радиолюбителю? Ответ прост - быстрое и удобное прототипирование. Что означает, что написание программы управление каким-нибудь девайсом на МК будет занимать пару чашек чая.)

    Прежде чем начать, немного теории.

      Max/MSP/Jitter по сути является огромной библиотекой готовых модулей (их принято называть "объектами"), из которых, путем их соединения виртуальными проводами, собирается программа, она же "патч". Объекты выполняют простейшие функции, типа арифметики, сортировки, преобразования, синтеза сигналов и т. д. Каждый объект имеет входы и выходы, которые принято называть  инлетами и аутлетами.

      Обмен данными между различными объектами происходят по средствам пересылки сообщений различных видов.

    Сообщения могут быть числами, списками (list) чисел, разделенными пробелами, словами (symbol) или любыми комбинациями чисел и слов. Содержание сообщений определяется их типом (type).

    Типы сообщений (messages):

     

      - int — когда сообщение состоит только из целочисленных значений;

      - float — когда сообщение состоит только из чисел с плавающей точкой;

      - list — список (list) чисел, разделенных пробелами (60 79 1.02);

      - bang — сообщение bang — это особый вид сообщений, обозначающих: «делай то, что ты должен делать». Например: когда объект random получает сообщение bang, он отсылает случайно выбранное число, через свой выход;

      - symbol — символ (symbol) — это слово или другой набор не числовых символов. Множество символов обозначают какие–либо команды, когда поступают в определенные объекты. Например, объект seq — это секвенсор для записи игры на MIDI. Он реагирует на сообщения типа: start, stop, record, delay и print. Все эти сообщения будут непонятны объекту типа * (умножение), который ожидает поступления в свои входы только чисел (или bang);

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

    И так, приступим!

    Max/MSP. Взгляд инженера.

     После успешной инсталляции Max должно открыться консоль (Max Console). Далее создадим патч нажатием Ctrl+N или File->New Patch.
    Напишем патч "Hello World" с печатью в консоль.

    Max/MSP. Взгляд инженера.

      Для создание объекта жмем "N" или кнопку под номером 1 на рисунке. В появившемся пустом прямоугольнике начинаем вводить название создаваемого объекта, например button (обычная кнопка) и жмем Enter. По нажатию кнопки мы будем отправлять сигнал bang. Так же нам понадобятся объекты message, который будет хранить текст и print для вывода сообщения в консоль Max. Для открытия консоли в правом боковом меню нажимаем кнопку под номером 3. Кроме этого, свойства созданных объектов можно изменять в Инспекторе (Inspector), для открытия см. указатель 2.

    Объекты соединяем виртуальными проводами протягивая их от выхода к входу.

     

     Все, наша первая программа в Max готова. Для запуска жмем нам нужно заблокировать патч - нажимаем на изображение замка под указателем 4. Открываем консоль, если еще не открыта, и нажимает на объект button.

    Max/MSP. Взгляд инженера.

     Кстати, если нажать на объект message, сообщение тоже выведется в консоль, так как в этом случае данный объект отправит два сообщение: "bang" и "Hello World!".

      Одна из вещей, которые меня очень порадовали после таких программ как LabView и Simulink, это удобная система туториолов, примеров и подсказок. Справка по объектам Max представляет собой такой же патч с кучей комментариев и демонстрацией всех фич и возможностей. Для вызова справки, вызываем контекстное меню на интересующем объекте и жмем Open <obj.name> Help или Open <obj.name> Reference.

    Max/MSP. Взгляд инженера.

    Что в итоге?

      Так как данная статья является вводной, по этому не углублялся во множество нюансов среды. Поработавши со связкой Max/MSP + Arduino/ESP8266/Orange Pi, могу сказать, что использование данного программного обеспечения значительно сократило время прототипирования устройств. Яркий пример - проекты с использовании различных протоколов, таких как OSC, UPD, DMX-512 и подобное.

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

      Для изучения Max/MSP обязательны к прочтению туториалы доступные из меню Help.

      Патч с первого скриншота можно скачать здесь: max_1.rar [1,01 Kb] (cкачиваний: 9)


    Теги: Arduino
    • 0
    Новость опубликована 14-08-2016, 00:07, её прочитали 734 раз(а).
    Понравилась тема? Посмотрите эти:
    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.