Что такое SunVox

SunVox - это компактная, быстрая и мощная программа для создания музыки. Работает на платформах Windows, Win Mobile, Linux, Maemo, MacOS X, PalmOS, iPhone, iPad. В основе - модульный синтез и трекерный интерфейс. Последний подразумевает представление партитуры в виде нескольких вертикальных дорожек (треков), на которых распологаются ноты, значения громкости, эффекты и прочее. Тем, кто плохо знаком с трекерами, рекомендуется почитать соответстующую статью на Википедии: http://ru.wikipedia.org/wiki/Трекер_(программа)

Основные возможности:

  • минималистичный масштабируемый интерфейс;
  • круто оптимизированные алгоритмы синтеза; SunVox почти без изменений работает, как на мощных компах, так и на слабых наладонниках;
  • куча встроенных синтезаторов и эффектов;
  • поддержка 16, 24 и 32 битных WAV, AIFF и XI сэмплов.

Официальная страница SunVox: http://www.warmplace.ru/soft/sunvox

Минимальные системные требования

Windows: нет специальных требований.

Linux: архитектура x86/x86_64; библиотеки SDL, ALSA.

MacOSX: архитектура x86_64; версия ОС - не ниже 10.6.

Android: версия ОС - не ниже 2.3.

iOS: версия ОС - не ниже 3.0.

Maemo: на данный момент тестировалось только на Nokia N900; возможно, будет работать и на более ранних моделях.

Windows Mobile: ARM-совместимый процессор.

PalmOS: ARM-совместимый процессор; версия ОС - не ниже 5.0.

Базовые понятия

Музыкальное произведение в SunVox строится из следующих частей:

  • паттерны (patterns);
  • модули (modules);
  • таймлиния (timeline).

Паттерн

Паттерн - это кусок партитуры. Мы видим его, как набор вертикальных дорожек (в старых трекерах дорожки называли каналами). На каждой дорожке по порядку идут звуковые события: ноты, выключение нот (note OFF), значения контроллеров, стандартные эффекты в цифровой форме. Редактор паттернов находится в верхней части экрана. Проигрываение паттерна идет сверху вниз. Дорожки играют одновременно. К примеру, можно сделать две дорожки - на одной выставить ноты басового синтезатора, а на другой - барабаны.

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

Рассмотрим структуру паттерна более детально. По сути каждый паттерн - это таблица такого вида:

номер линии 0 (дорожка 0) 1 (дорожка 1) 2 (дорожка 2)
000 event event event
001 event event event
xxx

Здесь event - какое-либо звуковое событие. Примеры таких событий:

Так выглядит событие в редакторе паттерна Описание
C5 80 01 0000 0000 посылка ноты C5 модулю с номером 01
A5 80 02 0000 0000 посылка ноты A5 модулю с номером 02
== 00 00 0000 0000 посылка команды “выключение ноты” (note OFF)

Событие содержит несколько полей с числами и буквами. Числа представлены в шестнадцатиричной форме. Подробнее о шестнадцатиричных числах можно почитать здесь: http://ru.wikipedia.org/wiki/Шестнадцатеричная_система_счисления

Общий формат события такой: NN VV SS CCEE PPPP

Ниже приведено подробное описание полей:

  • NN - нота (C0,c0,D0,d0,E0,F0,f0,G0,g0,A0,a0,B0,C1,c1,D1, … B9); буква обозначает непосредственно ноту (маленькая буква - диез); цифра обозначает номер октавы;
  • VV - velocity (00..80); скорость нажатия; чаще всего этот параметр задает громкость ноты;
  • SS - номер модуля (00,01,02,03,04,05,06,07,08,09, … FF);
  • CC - номер контроллера в модуле (01,02,03,04, … FF);
  • EE - номер стандартного эффекта:
    • 01 - плавное повышение тональности (portamento up; скорость повышения = PPPP);
    • 02 - плавное понижение тональности (portamento down; скорость понижения = PPPP);
    • 03 - плавный переход на ноту (скорость перехода = PPPP);
    • 08 - арпеджио (PPPP = SSTT; SS - кол-во прибавляемых полутонов для второй ноты; TT - кол-во прибавляемых полутонов для третьей ноты);
    • 09 - установить смещение сэмпла (смещение в фреймах = PPPP * 256);
    • 07 - то же, что и 09, но смещение задается в процентах (0000 - это 0%; 4000 - это 50%; 8000 - это 100%);
    • 0A - плавное повышение/понижение velocity (PPPP = UUDD; UU - скорость повышения; DD - скорость понижения);
    • 0F - установка скорости проигрывания (PPPP: 0001..001F - количество тиков в линии (по умолчанию - 6); 0020..00FF - BPM);
    • 19 - re-trigger (повторное включение ноты) с периодом PPPP тиков (только в текущей линии);
    • 1C - выключить ноту через PPPP тиков после начала проигрывания текущей линии;
    • 1D - задержать начало ноты на PPPP тиков;
    • 20 - вероятность проигрывания ноты; PPPP - вероятность от 0 (0%) до 8000 (100%); этот эффект можно использовать для генерации непредсказуемых ритмов и мелодий;
    • 21 - то же, что и эффект 20, но дополнительно для ноты устанавливается случайное значение velocity;
  • PPPP - параметр указанного эффекта или контроллера (0000 - минимум; 8000 - максимум).

Из паттерна можно управлять внешними MIDI-устройствами. Чтобы изменить значение внешнего MIDI-контроллера (MIDI Controller Number), нужно в поле CC поставить значение 80+X, где X - номер MIDI-контроллера. При этом PPPP - это посылаемое значение (от 0000 до 8000).

Модуль

Модуль - синтезатор, эффект или фильтр. Мы видим модули в виде прямоугольников, соединенных между собой линиями-проводами. Направление движения сигнала по проводу показывается бегущими точками и цветом (яркая часть провода идет от источника; бледная - к приемнику). Окно, в котором расположены модули, называется “звуковой сетью” (sound network).

У модуля есть параметры (на “железных” синтезаторах - это ручки, кнопки и прочие элементы управления). Чаще всего их называют контроллерами.

Таймлиния

Компоновка паттернов происходит на таймлинии (timeline), которая расположена в нижней части экрана.

Иногда таймлинию называют плейлистом.

Скорость воспроизведения

Скорость воспроизведения композиции задается двумя параметрами: BPM и TPL.

BPM - количество ударов в минуту. Один удар - это четыре линии паттерна при условии, что TPL = 6. Если TPL отличен от 6, то сказать точное количество линий в ударе не всегда возможно. Хотя, если, например, TPL = 3, то удар будет состоять из 8 линий.

TPL - количество тиков в линии. Тик - это квант времени в SunVox. Нельзя делать задержки между нотами меньше одного тика.

Интерфейс

Экран SunVox поделен на прямоугольные области (фреймы или, проще говоря, окна). В каждой области свой редактор. Редактор паттерна, редактор звуковой сети, редактор таймлинии. У каждого редактора есть свое собственное меню - кнопочка с гаечным ключем. Кликнув на одном из окон мы делаем его активным, помещаем в фокус. Далее все нажатия клавиш в виде команд в первую очередь будут посылаться этому активному окну. Если окно не знает, что делать с этими командами, то оно пошлет их редактору паттерна, т.к. редактор паттерна - самое приоритетное окно.

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

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

Действие некоторых клавиш зависит от того, какое окно находится в фокусе в данный момент. Окно попадет в фокус после того, как вы кликнете на нем.

Сочетание клавиш Описание
ПРОБЕЛ включить/выключить режим редактирования паттерна
Q,W,E,R,T и т.д. ноты
CAPSLOCK или '~' note OFF - событие выключения ноты
F1…F8 переключение октавы
TAB переход на следующую дорожку в паттерне
SHIFT + TAB переход на предыдущую дорожку в паттерне
CTRL + Z отменить действие (UNDO)
CTRL + Y или SHIFT + CTRL + Z повторить действие (REDO)
CTRL + X вырезать
CTRL + C скопировать
CTRL + V вставить
CTRL + A выделить все
CTRL + T выделить текущую дорожку в паттерне
CTRL + D размножить выделенный участок
CTRL + I интерполировать параметр эффекта или значение контроллера
CTRL + U интерполировать значение velocity
CTRL + N добавить новый модуль/паттерн
CTRL + R установить контроллеры выделенного модуля случайным образом
SHIFT + DELETE вырезать (только для редактора паттернов)
SHIFT + INSERT вставить (только для редактора паттернов)
SHIFT + '+' повысить тональность выделенного участка паттерна
SHIFT + '-' понизить тональность выделенного участка паттерна
SHIFT + одна из стрелок выделение участка паттерна
SHIFT + кликаем мышкой и тащим установка/удаление связи между модулями
CTRL + O загрузить новый проект
CTRL + S сохранить проект
CTRL + B сделать бэкап; проект сохраняется в файл BACKUP.sunvox, который лежит в папке с SunVox
CTRL + '+' увеличить шаг редактирования в паттерне
CTRL + '-' уменьшить шаг редактирования в паттерне
F9 начать воспроизведение
F11 воспроизведение текущего выделенного паттерна
F12 стоп

Описание встроенных модулей

Некоторые модули имеют параметр “Mode” (режим работы). Ниже приведено описание самых распространенных режимов.

  • HQ - Высокое качество. Стерео. Линейная интерполяция.
  • HQmono - Высокое качество. Моно. Линейная интерполяция.
  • LQ - Низкое качество. Стерео. Без интерполяции.
  • LQmono - Низкое качество. Моно. Без интерполяции.
  • Cubic - Высокое качество. Стерео. Кубическая интерполяция (круче, чем линейная).

Если у вас слабый компьютер или КПК, то переключение на низкое качество и монофонический звук может избавить от неприятных тормозов и щелчков.

DrumSynth

Барабанный синтезатор. Имеет встроенный набор звуков, сгруппированных по нотам:

  • C, C#, D, D# - bass drum;
  • E, F, F# - hihat;
  • G, G#, A, A#, B - snare drum.

Video1 Video2

FM

Синтезатор, основанный на алгоритме частотной модуляции (FM).

Количество операторов: 2. Первый оператор (carrier) - базовая синусоида. Второй оператор (modulation) - синусоида, изменяющая частоту первого оператора. В именах контроллеров имеются префиксы “C.” и “M.”, показывающие, что контроллер относится к первому или второму оператору соответственно.

Video1 Video2

Generator

Генератор различных форм волны.

Контроллеры:

  • Volume - громкость;
  • Type - тип волны:
    • 0 - triangle (треугольная);
    • 1 - saw (пила);
    • 2 - rectangle (прямоугольная);
    • 3 - white noise (белый шум);
    • 4 - “грязная”;
    • 5 - sinus (синус).
  • Panning - панорама;
  • Attack - время атаки;
  • Release - время затухания;
  • Polyphony - полифония;
  • Mode - режим работы;
  • Sustain - ожидание отжатия клавиши после атаки (0 - откл; 1 - вкл);
  • Phase modulation: 0 - откл … 256 - использовать входящий сигнал для модуляции;
  • Duty cycle - скважность (только для прямоугольной формы волны).

Video1 Video2 Video3

Input

Транслирует сигнал с микрофона или line-in.

Kicker

MultiSynth

MultiSynth принятые звуковые сообщения (ноты, изменения контроллеров и пр.) транслирует всем подключенным к нему модулям.

Video1 Video2

Sampler

SpectraVoice

SpectraVoice выдает звук с заданным спектром. Спектр можно представить так: двухмерный график; ось X - частота от басов к высоким; ось Y - амплитуда (громкость). На этом графике можно расположить 16 гармоник, указав у каждой гармоники ее положение на оси X, амплитуду, форму, ширину. Номер гармоники выбирается параметром Harmonic.

Например, выбираем гармонику с номером 0. Далее выставляем ее параметры.

  • h.freq - частота.
  • h.volume - амплитуда.
  • h.bandwidth - ширина, насколько гармоника будет размазана по оси X.
  • h.bandtype - тип гармоники:
    • 0 - горб (одна вторая периода синусоиды);
    • 1 - прямоугольник;
    • 2…5 - несколько пиков в ряд, получается нечто похожее на орган;
    • 6 - более сглаженный горб (полный период синусоиды)

После того, как все параметры выставлены, жмем кнопку Render и SpectraVoice генерирует новый звук по заданным параметрам. Далее нажимаем клавиши пианино и слушаем, что получилось.

Video

Amplifier

Усилитель сигнала.

Compressor

DC Blocker

Delay

Distortion

Echo

EQ

Filter

Flanger

LFO

Loop

Modulator

Reverb

Vocal filter

Vorbis Player

Vibrato

Конфигурация

SunVox берет свои настройки из файла sunvox_config.ini или sunvox_config.txt. Директория, в которой должен лежать этот файл, зависит от операционной системы.

  • Для Linux: директория с SunVox или домашняя директория пользователя (/home/username/).
  • Для Windows: директория с SunVox или /Documents and Settings/username/Application Data/.
  • Для MacOS X: директория с SunVox или /Users/username/Library/Caches/.
  • Для Windows Mobile: корень локальной файловой системы (/) или /Documents and Settings/username/Application Data/.
  • PalmOS: внутренняя память (файл надо сконвертировать в PDB) или корень SD-карты памяти.

Пользователи PalmOS могут сконвертировать файл конфигурации в PDB-формат при помощи этих утилит:

Внутри sunvox_config представляет собой обычный текстовый документ, который можно создавать и редактировать в простейших текстовых редакторах (например, блокнот в Windows). Кодировка документа - UTF8 (желательно), KOI8 или Win1251. Формат документа представлен ниже.

// Комментарии.

// Размер рабочей области окна программы (ширина и высота в пикселях):
width 800
height 600

// Максимальный FPS (кол-во кадров в секунду):
// ( меньшее число - меньшая загрузка процессора )
//maxfps 30

// Выключение анимации модулей:
//no_scopes
//no_levels

// Поворот интерфейса (в градусах, против часовой стрелки):
// ( работает не на всех платформах )
//rotate 90

// Включение полноэкранного режима:
// ( работает не на всех платформах )
//fullscreen

// Раскомментируйте этот параметр, если у вас сенсорный экран,
// или если просто хотите большие кнопки:
//touchcontrol

// Размер аудио-буфера (в фреймах):
// ( меньший рамер - меньшая задержка звука )
// ( если частота дискретизации = 44100, то размер аудио-буфера из 44100 фреймов эквивалентен одной секунде )
buffer 4096

// Имя айдио-устройства:
//  * примеры имен для ALSA (Linux): "hw:0,0", "hw:1,0";
//  * примеры имен для всех остальных систем: "0" - первое устройство; "1" - второе устройство;
audiodevice hw:0,0

// Имя аудио-драйвера (alsa, oss, sdl, dsound, mmsound, asio):
//  * alsa - ALSA (Linux);
//  * oss - OSS (Linux);
//  * sdl - SDL (Linux);
//  * dsound - DirectSound (Windows);
//  * mmsound - самая старая звуковая система, медленная, но совместимая со всеми Windows и Windows Mobile устройствами;
//  * asio - ASIO (Windows);
//audiodriver alsa

// Частота дискретизации (кол-во фреймов в секунду; минимум - 44100):
frequency 44100

// Имя видео-драйвера для Windows Mobile:
//  * gapi - по умолчанию; требуется библиотека gx.dll, установленная в системе; 
//  * raw - прямой доступ к видеопамяти; не поддерживается некоторыми устройствами; 
//  * gdi - режим совместимости; медленный, но работает везде;
videodriver gapi

// Увеличение размера пикселя:
// ( для SDL и WinCE raw framebuffer )
//zoom 2

// Раскомментируйте опцию theme
// для включения пользовательских цветовых тем:
// ( далее четыре основных цвета задаются опциями c_0, c_1, c_2, c_3 )
//theme
c_0 #000000
c_1 #101010
c_2 #808080
c_3 #FFFF00

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

Как загрузить сэмпл?

Создаем модуль Sampler. Выделяем его. Слева видим контроллеры (параметры) этого модуля. Под контроллерами две кнопки: LOAD и EDIT. Жмем LOAD, выбираем нужный инструмент. Поддерживаются форматы WAV,AIFF,XI,RAW. Кроме того, сэмпл можно загрузить из JPEG-картинки. Картинка попиксельно преобразуется в звуковую волну.

Соединил модули, но ничего не слышу.

Скорее всего провод от синта подключен в неправильном направлении. Направление движения сигнала по проводу показывается бегущими точками и цветом (яркая часть провода идет от источника; бледная - к приемнику).

Как соединять/разъединять модули?

Есть несколько вариантов.

  1. Кликаем на модуле-источнике. Жмем кнопку LINK. Кликаем на модуле-приемнике.
  2. Кликаем (не отжимая) на модуле-источнике с нажатым SHIFT и тащим соединительную линию к модулю-приемнику. Отжимаем SHIFT и кнопку мыши.
  3. Для мультитач устройств (iPhone, iPad): одним пальцем нажимаем на модуле-источнике, вторым - на модуле приемнике.

Повторное соединение действует, как разъединение.

 
sunvox/manual_ru.txt · Last modified: 2012/01/13 12:55 by nightradio
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki