Virtual ANS: руководство пользователя
PDF версия

Что такое Virtual ANS

Virtual ANS - симулятор легендарного фотоэлектронного синтезатора АНС, который впервые позволил рисовать музыку в виде спектрограммы, без участия живых инструментов и исполнителей. АНС был создан советским изобретателем Евгением Мурзиным в период с 1938 по 1958г.
Вы можете услышать звуки синтезатора в некоторых композициях Альфреда Шнитке, Станислава Крейчи, Эдуарда Артемьева, в фильмах Андрея Тарковского "Солярис", "Зеркало", "Сталкер", или, например, в сцене ночного кошмара из комедии Леонида Гайдая "Бриллиантовая рука".

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

Отличия от оригиналього инструмента 1958 года:

  • Virtual ANS - кроссплатформенная программа, которую можно запустить даже на телефоне/планшете; качество проигрывания легко подстраивается под любой компьютер;
  • неограниченное количество генераторов (в оригинале было 720);
  • диапазон частот, количество октав и количество нот в октаве задаются пользователем;
  • у генераторов может быть задана погрешность (Random Frequency) для получения неровного распределения частот и более "живого" звучания;
  • сонограмму можно составлять из слоев;
  • вспомогательная вертикальная клавиатура слева активная: на ней можно играть выбранной кистью или всей сонограммой (в режиме полифонического синтезатора);
  • в любой момент времени можно проиграть любой кусок партитуры - достаточно коснуться шкалы времени в верхней части экрана;
  • возможна загрузка WAV аудиофайла или живая запись с микрофона или линейного входа; звук будет преобразован в сонограмму АНС.

Официальная страница Virtual ANS

Установка

Большинство моих десктопных приложений (для Windows, macOS и Linux) распространяются в формате переносимых приложений без установки. Иными словами, это просто ZIP-архив, который после распаковки превращается в папку со всеми необходимыми для работы файлами: версиями программы для всех систем, примерами, документацией, логами, вашими личными файлами (которые вы создадите позже) и т.д. Такую папку можно легко переносить с одного компьютера на другой.

Windows

  • Минимальные требования: Windows 7 (x86/x86_64); свежий драйвер OpenGL.
  • Как установить:
    • скачайте приложение (ZIP архив);
    • найдите скачанный файл на диске и распакуйте его в вашу личную папку (открытую для чтения и записи, не системную) или на внешнюю флешку (наиболее удобный вариант, т.к. программу с вашими файлами можно будет легко переносить с одного компьютера на другой);
    • перейдите в распакованную папку и нажмите два раза на START_WINDOWS.

Linux

  • Минимальные требования: любой дистрибутив Linux (x86/x86_64); свежий драйвер OpenGL; libsdl2.
  • Как установить:
    • скачайте приложение (ZIP архив);
    • найдите скачанный файл на диске и распакуйте его (желательно в локальную директорию пользователя /home/имя_пользователя);
    • перейдите в распакованную папку и нажмите два раза на START_LINUX_XXX, где XXX - название архитектуры.

macOS

  • Минимальные требования: macOS 10.9 (x86_64).
  • Как установить:
    • скачайте приложение (ZIP архив);
    • скачанный архив будет распакован автоматически; если нет - распакуйте его самостоятельно просто кликнув на нем два раза;
    • распакованный архив скопируйте куда-нубудь в личную директорию (не используйте системные папки, типа Applications);
    • если у вас macOS 10.12 и выше - прочтите эту информацию;
    • перейдите в распакованную папку и нажмите два раза на START_MACOS.

Android

  • Минимальные требования: Android 4.1.
  • Как установить:
    • найдите и установите приложение в Google Play;
    • если что-то не работает, ознакомьтесь с этой страницей.

iOS

  • Минимальные требования: iOS 9.
  • Как установить: ищите приложение в App Store.

Описание интерфейса

Основное окно

КнопкаОписание
Начать запись в текущую сонограмму с клавиатуры или с микрофона
Остановить проигрывание
Проигрывать вперед или остановить
Проигрывать назад или остановить
Настройки (проект, визуализация, звуковые настройки, ...). Полный список приведен ниже.
  • Проект - изменение параметров текущего проекта:
    • ширина - размер партитуры по горизонтали (в пикселях);
    • высота - размер партитуры по вертикали (в пикселях);
    • нижняя частота - частота тона в самой нижней части партитуры;
    • количество октав;
    • количество нот в октаве;
    • случайная частота - случайное смещение частот генераторов для получения более живого звучания;
    • количество ударов в минуту (BPM);
    • количество пикселей в ударе (PPB);
  • Привязка к направляющим - включите, если нужно прилипать к направляющим линиям во время рисования; в роли направляющих выступают линии, соответствующие последним проигранным нотам на клавиатуре слева;
  • Визуализация - настройки визуализации (какие элементы показывать на экране, какими цветами рисовать сонограмму и т.д.);
  • MIDI вход - выбор внешнего MIDI-устройства;
  • Привязка MIDI - привязки внешних MIDI ручек и кнопок к внутренним параметрам программы;
  • Количество уровней отмены - сколько раз можно нажать на кнопку ОТМЕНА без потери данных, с возможностью возвратиться назад к отмененным действиям;
  • Качество звука:
    • частота дискретизации: для идеального качества требуется как минимум 44100; чем ниже частота, тем меньше нагрузка на процессор;
    • количество каналов: моно (1) или стерео (2);
    • алгоритм преобразования звука в сонограмму (при записи с микрофона/линейного входа или при импорте WAV):
      • FFT - быстрый, но менее точный;
      • банк фильтров - медленный (на базе банка фильтров), но более точный;
    • разрешение записи: -100 - высокое временное разрешение (больше ритма); 0 - оптимальный режим; 100 - высокое частотное разрешение (больше деталей в тембре и мелодии).
  • Системные настройки: масштаб интерфейса, звуковой драйвер и т.д.
Проект (создать новый, сохранить, загрузить, импорт/экспорт, ...). Проект - это текущая сонограмма АНС и все ее настройки. Список функций управления проектом приведен ниже.
  • Новый - создать новый проект;
  • Загрузить проект с диска; грузить можно следующие форматы файлов: ANS, WAV (PCM, без сжатия), AIFF (PCM, без сжатия), JPEG, GIF, PNG;
  • Сохранить проект на диск;
  • Сохранить проект на диск с указанием нового имени файла;
  • Различные функции экспорта/импорта (зависит от версии программы и устройства); например, экспорт проекта в звуковой файл или картинку;
  • Инфо / помощь - информация о проекте, программе и получение лога (журнал событий, часто требуется для поиска причин ошибок в программе).
Перейти в режим навигации (перемещение/масштабирование сонограммы)
Перейти в режим управления слоями
Перейти в режим выделения (операции копирования, вставки, наложения эффектов)
Перейти в режим рисования
Параметры синтеза, которыми можно управлять в реальном времени.
Здесь же можно включить режим полифонического синтезатора.
Если полифонический синтезатор включен: каждая нажатая нота играет сонограмму на отдельном канале с учетом огибающей ADSR.
Если полифонический синтезатор выключен: каждая нажатая нота играет спектр из центра выбранной кисти, без учета огибающей.

Основные параметры:

  • skip tone - сколько чистых тонов пропускать;
  • freeze - заморозка спектра;
  • note - смещение нот (транспозиция); влияет только на команды с клавиатур;
  • finetune - подстройка: -100% (ниже на полутон) ... 100% (выше на полутон); влияет только на команды с клавиатур;
  • loop crossfade - сглаживание перехода на границах повтора;
  • loop p1 - позиция начала повтора;
  • loop p2 - позиция конца повтора;
  • тип повтора: off (выключен) / обычный, в одном направлении / двунаправленный (сначала вперед, потом назад);
  • loop sustain (S) - удержание повтора; если включить, то повтор будет прекращаться после отпускания ноты;
  • параметры, активные только при включенном режиме полифонического синтезатора:
    • synth volume (V) - громкость полифонического синтезатора;
    • attack (A) - атака (период начального нарастания громкости);
    • decay (D) - спад (период ослабления сигнала после начального нарастания);
    • sustain (S) - поддержка (уровень постоянной силы сигнала);
    • release (R) - затухание (период окончательного затухания сигнала).
Полный список можно посмотреть в окне Настройки -> Привязка MIDI. Там же можно любой параметр привязать к внешним MIDI-контроллерам.
Отмена предыдущего действия
Возврат отмененного действия

Рисование

В этом режиме вы можете изменять (или рисовать с нуля) сонограмму при помощи нескольких графических инструментов. Принцип напоминает работу обычного графического редактора (PhotoShop, Gimp и пр.): вы выбираете один из инструментов рисования, степень его непрозрачности, размер кисти, градиентную заливку и прочие параметры, после чего рисуете на партитуре АНС.

Инструмент

Инструменты рисования:

КнопкаОписание
Свободное рисование
Линия (указывается начало и конец)
Закрашенный треугольник
Треугольник с градиентом
Закрашенный прямоугольник

Кисть

В программе есть несколько встроенных типов кистей. Можно создавать свои кисти из картинок или из выделенного участка (в режиме выделения).

Параметры кисти:

  • Размер (по умолчанию - 1.0);
  • Интервал - расстояние между мазками кисти.

Градиент

Градиентная заливка - это изменение прозрачности нарисованной фигуры по выбранным правилам.На выбор предоставляются несколько кнопок: верхний ряд - режим градиента по горизонтали; нижний ряд - режим по вертикали.Градиентная заливка будет применяться ко всем последующим операциям рисования.

Пример рисования без градиента:

Пример рисования с градиентом:

Режимы рисования

РежимОписаниеПример
Нормальный
Очистка
Только СветлоеРисуются только участки, которые светлее заднего плана
^ Исключающее ИЛИ
+ Добавление без контроля переполнения
- Вычитание без контроля переполнения
* Усиление
/ Ослабление

Горячие клавиши

Сочетание клавишОписание
ESCAPEвыход
CTRL + Zотмена предыдущего действия
CTRL + Yвозврат предыдущего действия
CTRL + X / SHIFT + DELвырезать
CTRL + Cскопировать
CTRL + V / SHIFT + INSвставить
CTRL + Dповторять
CTRL + Aвыделить все или снять выделение
CTRL + Oзагрузить новый проект
CTRL + Nсоздать новый проект
CTRL + Tзагрузить шаблон
LEFT / RIGHTперемещение курсора (или выделенного участка) влево / вправо; (нажмите SHIFT для ускорения)
UP / DOWNперемещение выделенного участка вверх / вниз; (нажмите SHIFT для ускорения)
SHIFT + Cперейти в центр сонограммы
SHIFT + Fрастянуть сонограмму до размеров экрана/окна
SPACEпроигрывать вперед / остановить
SHIFT + SPACEпроигрывать назад / остановить
ENTERостановить движение курсора и играть текущую позицию
Z, S, X, D, C ...ноты C, C#, D, D#, E, F ...
Q, 2, W, 3, E ...те же ноты, но на октаву выше
F1переход на октаву вниз
F2переход на октаву вверх
КОЛЕСО ПРОКРУТКИ МЫШИувеличение или прокрутка
СРЕДНЯЯ КЛАВИША МЫШИперемещение содержимого окна

Как это работает

В основе - партитура АНС. Она же - сонограмма или спектрограмма. То есть - изображение, показывающее зависимость спектра от времени, раскладывающее композицию на "звуковые атомы" - чистые тона. Горизонтальная ось X - это время (слева направо). Вертикальная ось Y - высота тона (снизу вверх от басов к высоким частотам). Яркость отдельного пикселя - это амплитуда синусоиды с частотой Y в момент X. Сонограмма по вертикали делится на октавы. Октава делится на полутона (по умолчанию их 12).Полутон делится на еще более мелкие части, еле уловимые на слух микротоны, для точного описания любого звука, любого музыкального строя. Количество микротонов зависит от высоты сонограммы в пикселях. Например, для сонограммы с высотой 512 пикселей, при диапазоне в 10 октав, количество микротонов в октаве будет 51, а количество микротонов в полутоне - примерно 4.

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

Оригинальный железный синтезатор АНС работает по аналогичному принципу, но вместо цифровой начинки в нем находится оптоэлектронная система, состоящая из источников света, дисков с наборами чистых тонов, фотоэлементов и партитуры.

Пожалуй, самой важной деталью является диск оптической фонограммы, на котором нанесен рисунок из 144 дорожек, прозрачность которых изменяется по синусоиде с определенной частотой. Разница по частоте между соседними дорожками - 1/72 октавы. Таким образом, один диск содержит две октавы, по 72 микротона в каждой. В АНСе пять таких дисков, что в итоге дает диапазон в 10 октав (720 микротонов). Если с одной стороны диска поставить источник света, а с другой фотоэлемент, подключенный к колонкам через усилитель, то мы услышим шум. Если же перед диском поставить пластину с маленьким отверстием (размером с дорожку на диске), то вместо шума мы услышим один из чистых тонов. Как раз эта идея и развивается в АНСе.

АНС представляет собой что-то типа современного сканера. Партитура - это стеклянная пластина, покрытая непрозрачной краской, которая в нужных местах снимается тонким резцом, образуя рисунок. Партитура плавно передвигается, проходя над отверстием, из которого идет модулированный свет (от генератора на базе пяти вышеописанных дисков), сканирующий рисунок. Часть света не проходит через краску, а часть идет через прозрачные области партитуры и фокусируется на наборе фотоэлементов.

Часто задаваемые вопросы (FAQ)

Звука нет, или звук щелкает и заикается

Virtual ANS сильно зависит от производительности процессора. Если ваш АНС-проект слишком большой, вы можете попробовать уменьшить высоту сонограммы (Настройки -> Проект -> Высота) или частоту дискретизации (Настройки -> Качество звука -> Частота дискретизации). Все остальные настройки (ширина сонограммы, количество октав, стерео-режим и т.д.) на скорость работы программы практически не влияют. Ниже приведены параметры для нормальной работы на различных устройствах:

  • старый Android телефон (800 Мгц): высота = 512 пикс.; частота дискретизации = 16000 Гц;
  • iPad1: высота = 512 пикс.; частота дискретизации = 22050 Гц;
  • iPad mini 2: высота = 1000 пикс.; частота дискретизации = 44100 Гц;
  • стационарный компьютер: высота = 2000 пикс.; частота дискретизации = 44100 Гц.

Для пользователей Windows: по умолчанию Virtual ANS настроен на звуковую систему DirectSound, но, к сожалению, она работает хорошо не на всех компьютерах. Поэтому рекомендуется переключиться на ASIO. Для этого зайдите в окно Настройки -> Системные настройки -> Звук.

Для пользователей Linux: если вам кажется, что ваш компьютер слабоват для Virtual ANS, попробуйте увеличить размер аудио-буфера (Настройки -> Системные настройки -> Звук). Но имейте в виду, что увеличение буфера приведет к увеличению задержки.

Какие оптимальные параметры проекта для экспорта в PhonoPaper?

  • ширина - не менее 1280;
  • высота - 720;
  • нижняя частота - примерно 65.4 Гц;
  • кол-во октав - 8;
  • ударов в минуту - 125;
  • пикселей в ударе - 64.

iOS: Как загружать/выгружать файлы?

Сам по себе Virtual ANS в iOS работает с файлами точно так же, как в любой другой системе. С одним отличием - для Virtual ANS выделено свое файловое хранилище (что-то типа локального диска), недоступное для других программ.
Ниже приведено описание разных способов доступа к этому хранилищу.

  • Для обычной версии:
    • через приложение Files;
    • в каком-нибудь другом iOS-приложении (почтовый клиент, например) выберите файл, и где-то в меню рядом с ним будет функция "Открыть в", которая позволит открыть выбранный файл при помощи другой программы (в вашем случае - Virtual ANS).
    • через iTunes File Sharing;
    • откройте Virtual ANS -> Проект -> Экспорт/импорт -> Wi-Fi экспорт/импорт.
  • Для AU: откройте Virtual ANS -> Проект -> Экспорт/импорт -> Wi-Fi экспорт/импорт. Далее следуйте инструкции на экране. Браузер и AU (с активным окном Wi-Fi) могут при этом работать на одном устройстве.

Видео: Как загрузить картинку из галереи в Virtual ANS (обычную версию и AU)

iOS: Как синхронизировать старт и остановку в AU?

Эта функция будет добавлена в ближайшем обновлении.
Пока можно воспользоваться следующими способами:

  • просто посылайте MIDI ноты синтезатору; сонограмма будет играть аналогично длинному сэмплу;
  • в списке параметров AU есть Play и Stop - этими параметрами можно управлять напрямую или привязать их к MIDI.

Android: не работает микрофон и/или доступ к файлам

Перейдите в настройки вашего устройства -> Приложения -> Virtual ANS 3 -> Разрешения -> включите необходимые разрешения.

macOS: Не могу запустить программу, вижу только какое-то окно выбора файлов Pixilang

Посмотрите это видео или прочтите инструкцию.