www.diyfactory.ru



: (18) «  ... 13 14 [15] 16 17 ...  »  ( ) Ответ в темуСоздание новой темыСоздание опроса

> Diy синтезаторы, вместо приветствия
General Dead
26.10.2009 - 19:17
Цитировать сообщение




Unregistered












:


Цитата (Diz @ 26.10.2009 - 08:22)
Ага. Небольшой (128x64), мононхромный, но графический :-)

Библиотеку и GUI синта, в принципе, доделал.

Сейчас решаю, как лучше сделать назначение MIDI-контроллеров для
автоматизации. Делать ли глобальную настройку, или для каждого пресета свою ? Делать ли просто менюшку с выбором контроллер->параметр, или
прикрутить MIDI Learn ? Пока в сомнениях.

Лучше делать как в обычных VA синтах типа virus, все контроллеры намертво закрепить за Filter\ADSR и т.д, и сделать матрицу модуляции и вот там можно дополнительно 6 илиболее контроллеров назначаемыхсделать которые будут в пресет сохраняться....Кстати что с sysex? Будет ли возможность рулить по сисекс и патчи заливать?
Дисплей 240х64 удобнее и информативнее былбы, хотя и дороже. Удобно дисплей 240х64 и под ним четыре энкодера для руления, у меня так на сэмплере и грувбоксе сделано,очень удобно. Особенно ADSR рулить, там над каждым энкодером надпись Attack,Decay... и параметр в числовой форме и сразу всеми энкодерами удобно рулить).
ЗЫ А фотки GUI можно глянуть? можно даже с отладчика типа Proteus
Top
Diz
27.10.2009 - 01:29
Цитировать сообщение




Unregistered












:


Матрица модуляции и прочее давно есть. Интерфейс примерно так и
выглядит, экран, четыре параметра и под ними четыре энкодера.
Те параметры, которые сейчас на экране, энкодерами и рулятся.
На экране с adsr так и есть, энкодеры соответствуют attack/delay/sustain/release. Плюс есть четыре (?) потенциометра, которые можно назначить
на любой (почти) параметр в рамках пресета - они работают независимо
от экрана.

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

Sysex не будет, не вижу нужды. Копировать/загружать патчи можно по USB -
при подключении синт виден как флешка, пресеты лежат в соответствующих
директориях. И выглядят как текстовые .ini файлы, так что можно и из блокнота подкорректировать :-)

Ни под каким Proteus-ом проект не взлетит, хехе. Интерфейс сознательно минималистичный, никакой графики - текст, линии, ничего лишнего.
Но фотографии попробую сделать.
Top
Diz
27.10.2009 - 13:40
Цитировать сообщение




Unregistered












:


GUI:

User posted image
Top
Diz
5.11.2009 - 07:13
Цитировать сообщение




Unregistered












:


Об имитации плаванья (drift-а) аналоговых осцилляторов.

Основная проблема в характере модуляции частоты. Требуется плавная модуляция, не имеющая явно выраженных ступенек и явно выраженной частоты. Можно, конечно, использовать random (step) lfo, сглаженное фильтром, но частота lfo будет явно прослеживаться в сигнале.

Пришла в голову следующая идея.
Берем генератор псевдослучайных чисел, но используем число на выходе не непосредственно для модуляции, а для задания направления смещения частоты.

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

А можно представить это в виде интегратора, на которые подаются ступеньки +1/-1.

Получается почти классический random walk-алгоритм !
Обычно объясняется на примере с пьяницей, который делает случайный
шаг в случайную сторону и выписывает замысловатую непредсказуемую траекторию. Разница лишь в том, что пьяница рано или поздно доберется до канавы, нам же нужно в среднем оставаться на месте (интегратор не должен уйти в насыщение).

На помощь приходит генератор псевдослучайных чисел в виде сдвигового регистра (m-последовательность максимальной длины). Тактируя регистр длиной n бит, на каждом шаге получаем случайное число от 1 до 2^(n-1). Более того, регистр выдает все числа от 1 до 2^(n-1) в случайном порядке ни разу не повторяясь. А после 2^(n-1) шагов вся последовательность начинается заново.

Получается, что за период повторения последовательности мы получим равное число четных и нечетных чисел (точнее, нечетных на одно больше, что легко учесть). Таким образом, частота осциллятора будет всегда в среднем оставаться на месте, никуда не уползая. А сам закон плаванья частоты будет определяться видом m-последовательности.

Для примера, 16-битный регистр с обратной связью на 16, 15, 12 и 1 отводах даст такую картинку:
User posted image

А это 16, 15, 12, 10:
User posted image

Если тактировать такой генератор с частотой 10 Гц, то последовательность повторится через 6554с (1.8 часа).

Можно и немного отфильтровать сигнал, если окажется слишком грубым. Прошлая последовательность с ФНЧ:
User posted image


В железе еще не пробовал. Что скажете (кроме того, что надо пробовать :-) ?

Diz - 5.11.2009 - 07:24
Top
BSVi
5.11.2009 - 10:50
Цитировать сообщение




Unregistered












:


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

Аналоговое "плавание", насколько я понимаю, имеет совершенно не шумообразный характер. К примеру, термомодуляция зависит от амплитуды сигнала и предыдущей истории сигнала. Получается эдакий терморевер.

(в синтезаторах я шарю очень слабо, это - соображения общего характера )

BSVi - 5.11.2009 - 10:51
Top
Diz
5.11.2009 - 12:08
Цитировать сообщение




Unregistered












:


Попробовал - весьма занятно !

Качаем сэмпл:
http://diyfactory.ru/forum/index.php?act=D...download&id=103

Последовательность проигрывалась с частотой 1кГц и влияла на частоту первого осциллятора (максимальный уход не более 10 центов в обе стороны). Второй осциллятор имел фиксированную частоту и звучал в унисон с первым.

Период повторения последовательности, таким образом, около минуты.

Diz - 5.11.2009 - 12:14
Top
General Dead
5.11.2009 - 18:23
Цитировать сообщение




Unregistered












:


Цитата (Diz @ 27.10.2009 - 13:40)
GUI:

User posted image

Неплохо я так примерно и думал, можно за пример взять GUI с Waldorf Blofeld,удобно сделано и информативно, но у него 2энкодера под дисплеем.
Хотя скорее всего ты в курсе, т.к твой GUI похож smile.gif.
ADSR
user posted image
MOD Matrix
user posted image
Ну и тут остальные картинки
http://www.waldorfmusic.de/en/products/blo..._user_interface
Если интересно могу GUI с сэммплера сфотать, там 5 энкодеров и дисплей 320х80

General Dead - 5.11.2009 - 18:25
Top
Diz
5.11.2009 - 22:07
Цитировать сообщение




Unregistered












:


Черт, насколько похоже ! Включая полоску под названием экрана, честно взятую у iPod mini :-) Этот Waldorf (да и ничего похожего) не видел и до такого интерфейса дошел независимо.

Из интерфейса осталось реализовать секвенсор (3 трека/16 шагов).
Было бы интересно взглянуть, как это сделано в Waldorf.
С другой стороны, лучше подождать несколько дней, пока доделаю
секвенсор, и уж затем сравнить. Самостоятельный вариант может
получиться не менее интересным :-)

Попутно пара вопросов.

Где бы разжиться интересными волновыми формами для wavetable-осциллятора ? Традиционные формы (saw, square, sine и т.д.) прикрутил,
но осталось еще много свободных слотов (не считая 30 юзерских форм).
Надо что-то, от чего можно отталкиваться. Подходят любые 16-битные pcm,
из них будут проигрываться в цикле первые 256 сэмплов.

Где бы достать хороший пиксельный шрифт. Сейчас у меня
использован замечательный шрифт standard_07 (miniml.com), но он коммерческий - хотелось бы что-то фришное. Все остальные использованные компоненты бесплатные/открытые, не хочется портить free/open source идиллию несчастным шрифтом :-)
Top
General Dead
6.11.2009 - 17:30
Цитировать сообщение




Unregistered












:


Есть полно волновых форм для синтезатора Rapture от CakeWalk, там один период волны засэмплирован в Wav, есть куча wavetable для Waldorf Microwave в формате VSTI Komplexer, я думаю можно переконвертить в wav, там raw наверное.
Ну исамому нарисовать в sound forge\wave lab можно).
ЗЫ В Waldorf Blofeld нету секвенсера, есть только ARP программируемый на 16 шагов.
Top
Diz
6.11.2009 - 17:58
Цитировать сообщение




Unregistered












:


Спасибо, посмотрю. Давно я уже не общался с VSTi-шками :-)
Top
General Dead
6.11.2009 - 18:19
Цитировать сообщение




Unregistered












:


Да я тоже давно), просто оставил волны, думал в сэмплер пихать но толку в нем от них мало. Вообще как бы от статичных волн толку немного, у меня есть аддитивный синт Kawai k5000s, он любую волну может синтезировать, но вся фишка красивого звука не в вычурной волне, а именно в динамике этих волн. Грубо говоря пила с детюном\хорусом звучит уже интереснее обычной голой пилы.
Кстати унисон\хорус в синте предусмотрен?
ЗЫ волны могу выложить архивом куданить

General Dead - 6.11.2009 - 19:05
Top
Diz
7.11.2009 - 06:43
Цитировать сообщение




Unregistered












:


Для унисона разве что настроить осцилляторы на одну частоту (с небольшим detune или drift, как в сэмпле выше).

Хоруса (как и каких-нибудь эффектов) тоже нет. Сигнал рождается в
цифре, выходит в аналог и аналога не покидает (идет на микшер, vca, vcf).

Есть мысли поиграть с чем-то негармоническим (интересные волны были absynth). Либо с кучей гармоник, как у органа. Если еще и FM такими штуками делать, может быть любопытно.

А еще можно те же волны использовать для LFO - тут уже совсем другие эффекты.

За архив скажу спасибо :-)

Diz - 7.11.2009 - 06:43
Top
General Dead
7.11.2009 - 14:03
Цитировать сообщение




Unregistered












:


А если попробовать создавать копии генерируемого сигнала и сдвигать ихпо фазе\частоте, что бы при этом изначальная полифония не страдала.
Хорус можно аналоговый сделать на ПЗС wink.gif.
Кстати коротко спецификацию на синт можно? Ну там что из себя представляет...Моно\поли,количество ADSR\LFO\VCO, есть ли FM\Ringmod, будут ли waveshaper? Степ модулятор будет?
Вот неплохой синт с вейвтейблами и аналоговым фильтром http://www.avrx.se/spec.html
В нем вейвшейперами изрядно волны колбасятся, тут и PWM для любой волны и др.
ЗЫ в аттаче архив с волнами с Rapture,там есть и ЛФО волны и в папке prosound волны с МиниМуг

( - : 8 )
  Rapture.zip
Top
Diz
7.11.2009 - 20:04
Цитировать сообщение




Unregistered












:


Спасибо ! Кажется, с подключение этих волн не будет проблем.

Все эффекты, если понадобится, будут внешние - а это я так никогда не закончу :-)

Спецификация на данный момент такая:

Моносинт с тремя осцилляторами.

Два аналоговых осциллятора (но с цифровым тактированием), формы волны pulse, saw, pulse+saw. Pulse - дергается ножка проца, Saw - ножкой проца сбрасывается аналоговый интегратор. Есть Sync и PWM.

Один wavetable осциллятор (вывод через ЦАП). Есть еще один (неслышимый)
wavetable осциллятор-модулятор специально для FM и Ring модуляций первого.

Огибающих пока что 4 штуки, ADHSR (с pre-delay). Две их них назначены
на vca/vcfa, остальные для модуляции. Можно и больше, количество ограничено производительностью проца (в которую еще не уперся).

LFO 4 штуки, несколько встроенных волн (включая Random step) + все
те волны, которые могут использоваться wavetable-осциллятором.
Есть MIDI-sync. Количество тоже можно увеличить.

Матрица модуляции с 10 слотами (тоже можно больше). Практически все
параметры можно модулировать, в том числе и сами уровни модуляции.

Секвенсор (3 трека / 16 шагов) для модуляции. Фактически step-модулятор
и есть. Нотный секвенсор не особо интересен.

Осцилляторы смешиваются в аналоге, затем Moog-образный фильтр и аналоговый VCA.

MIDI, GUI, USB :-)

Diz - 7.11.2009 - 20:06
Top
General Dead
7.11.2009 - 20:18
Цитировать сообщение




Unregistered












:


Да, неплохо. Я бы еще добавил 5и ступенчатые AD2DSR, с функцией loop, очень неплохо для переливающихся тембров, в том же Waldorf microQ\Blofeld есть выбор между one shot\ADSR\AD2DSR генераторами, т.еодин енвелопер может либо так либо этак работать/
А какие органы управления кроме 4х энкодеров? Хороший вариант энкодеры+обычные потенциометры. Каку меня в yamaha RM1x, под ЖК стоят 4е энкодера для рулежки и есть еще 8 крутилок аналоговых для быстрого доступа к фильтру\адср...С переключателем групп.
Top
Diz
7.11.2009 - 20:39
Цитировать сообщение




Unregistered












:


ADSR с loop это как ? Во время сустейна повторяется в цикле AD (или AHD) ?

С управлением так и задумываю, 4 энкодера + 4 потенциометра (назначаемых). Они будут на отдельной плате с отдельным процом, который будет передавать их положения основному процу. Пока что вместо этой платы макет с джунглями из МГТФ :-)

Diz - 7.11.2009 - 20:41
Top
General Dead
7.11.2009 - 20:52
Цитировать сообщение




Unregistered












:


Цитата (Diz @ 7.11.2009 - 20:39)
ADSR с loop это как ? Во время сустейна повторяется в цикле AD (или AHD) ?

С управлением так и задумываю, 4 энкодера + 4 потенциометра (назначаемых). Они будут на отдельной плате с отдельным процом, который будет передавать их положения основному процу. Пока что вместо этой платы макет с джунглями из МГТФ :-)

Да используется два Decay с своимиу ровнями и между ними loop.
Top
Diz
7.11.2009 - 21:09
Цитировать сообщение




Unregistered












:


Понятно. Думаю, что это у меня тоже можно имитировать - плавно ввести LFO (назначив еще одну огибающую на уровень LFO).
Top
Diz
10.11.2009 - 16:29
Цитировать сообщение




Unregistered












:


Перевел wav'ы в свой формат (16 бит, 256 сэмплов на период), попробовал.
Органные и FM волны отличные, спасибо.
Top
General Dead
10.11.2009 - 20:32
Цитировать сообщение




Unregistered












:


Дык есть еще wavetable от Waldorf,но они там в своем формате WT, но в принципе я думаю расковырять можно с помощью awave или sound forge.
Ну и ВСТ синт Surge тоже типа Rapture с волнами, если нужно могу поискать.

General Dead - 10.11.2009 - 20:37
Top
1 (1 0 )
0 :

Опции темы : (18) «  ... 13 14 [15] 16 17 ...  » Ответ в темуСоздание новой темыСоздание опроса

 

<% COPYRIGHT %>