Вверх ↑
Этот топик читают: Гость
Ответов: 1297
Рейтинг: 47
#1: 2012-02-08 00:45:52 ЛС | профиль | цитата
Хотелось бы создать на Хиасм простейший VST виртуальный синтезатор. Тут на форуме вроде есть интересующиеся данной темой (не помню ника). Если у кого-то уже есть какой-то каркас минимального VST плагина на Hiasm, хотелось бы с ним познакомиться. В дальнейшем планирую если получится создать VST пакет со всеми крутилками и фейдерами, для создания музыкальных программ и плагинов (dll). А то попробовал вроде навороченный SynthMaker, но оказалось что он силен в основном красивые интерфейсы создавать и в обработке сигнала, а простых функций работы с файлами, памятью почти нет, поддерживается только текстовый формат. И я понял что это несерьезно, что лучше помучиться с портированием исходников для Delphi, зато больше свободы и возможностей. Давайте, значит, вместе мучаться..))

Прилагаю что удалось накопать для Delphi:
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
1
файлы: 1axiworld.be.rar [2.4MB] [334]
Голосовали:login
Ответов: 1429
Рейтинг: 50
#2: 2012-02-08 05:17:23 ЛС | профиль | цитата
Aziz, мне интересно. Поскольку сейчас пишу секвенсер на HiAsm, я тоже планирую с этим разбираться. Но я смогу не раньше чем через год за это сесть.
------------ Дoбавленo в 05.17:
Мы с Ivann, уже пробовали что-то делать, пол года назад. Но это оказалось не просто, и пришлось пока бросить. Ivann, поднял OpenAsio на HiAsm, и оно работало. Но с VST, там дальше жутко сложно.
Aziz писал(а):
В дальнейшем планирую если получится создать VST пакет со всеми крутилками и фейдерами, для создания музыкальных программ и плагинов (dll).
В работе со звуком я вижу только FTCG. Не знаю как с этим будет справляться стандартный пакет(по скорости).
карма: 0

0
Ответов: 1297
Рейтинг: 47
#3: 2012-02-08 13:33:40 ЛС | профиль | цитата
login, вот и отлично.. Может, втроем осилим.. Я знаком с вашими разработками под Хиасм (спасибо большое кстати). Да, думаю придется большую часть пакета делать в IC и FTCG - они справятся со звуком и миди. А пока, прикрепляю программу для создания графики анимированых элементов управления - регуляторов и пр.:
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
1
файлы: 1knobman149setup.rar [2.2MB] [345]
Голосовали:login
Ответов: 1429
Рейтинг: 50
#4: 2012-02-08 14:50:19 ЛС | профиль | цитата
А вот AsioList который портировал Ivann.
Показывает список ASIO-устройств и их CLSID.
openasio from ivann.rar

только если в компе нет asio-устройств то ничего не покажет

Вот такой сборник по asio-delphi и vst(к нему) есть у меня:
http://www.sendspace.com/file/szfray (DAV_1.4beta2, 15мб)
карма: 0

1
Голосовали:Aziz
Ответов: 3349
Рейтинг: 233
#5: 2012-02-08 15:19:41 ЛС | профиль | цитата
login, Который можно было бы сделать стд компонентами
карма: 1

0
Ответов: 1429
Рейтинг: 50
#6: 2012-02-08 15:26:15 ЛС | профиль | цитата
Ivann, эти может и можно. Потому, что это будут законченные компоненты, которые обмениваются только указателями и свойствами. А Aziz, сказал о пакете, которые помогает создавать VST синты - самому!
То-есть VST синт = схема HiAsm. А это значит, что математика и данные потекут через соеденительные точки среды. Такие VST синты работать нормально не смогут в стандартном пакете.
карма: 0

0
Ответов: 1297
Рейтинг: 47
#7: 2012-02-09 00:30:00 ЛС | профиль | цитата
login, но ведь возможно создание VST в стандартном пакете, если использовать IC и FTCG - контейнеры? Пока на большее и не замахиваюсь.. Конкретно, нужно сделать проект Dll, вернее dll создаваемую им, совместимой с VST в плане импорта-экспорта на первых порах. Такая вот задача-минимум. Уже был опыт создания нестандартных Dll в Хиасме, которые нормально работали с внешними программами, написанными на Си, в частности с торговым (форекс) терминалом Metatrader4. Для этого оказалось достаточным просто бросить в схему Длл-проекта один IC в котором прописать весь экспорт и логику программы.

Для миди скорости стандартного пакета точно хватит. И даже для аудио, если всю обработку вести в IC. А там уже можно и новый пакет на основе FTCG создавать, если оправдает себя вся затея.

Хочу сделать нормальный миди-секвенсор (чтобы "рисовать" сразу мелодиями, а не только звуками (чем не ООП? ), а то нету нужных функций (переключение и транспонирование секвенций в реале) и гибкости у известных плагинов и хостов. В той же весьма удобной и навороченной FL Studio не додумались почему-то сделать живой выбор паттернов по миди. Только мышкой либо NumPad на PC-клавиатуре. Или его режим LiveMode, но транспонирование секвенции все равно невозможно с миди-клавиатуры. Есть уникальный VST плагин ERA (см. вложение), позволяющий переключать паттерны и транспонировать их почти как мне надо, но он не полифонический и все же ограничен в функциях. Можно, конечно, как автомат вручную проигрывать секвенцию (видел таких роботов-музыкантов ) и транспонировать ее, но тут мешает человеческий фактор (тайминг будет нестабильный) а также наличие компьютеров, которым можно поручить эту рутинную задачу.
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Ответов: 1429
Рейтинг: 50
#8: 2012-02-09 01:28:55 ЛС | профиль | цитата
Aziz писал(а):
Для миди скорости стандартного пакета точно хватит.
мне бы Ваш оптимизм. Я-то уже тесты поделал. Смотря какая логика. Я не знаю как устроена работа хостов, в плане синхронизации миди и аудио, но мне даже со скоростью FTCG, требуется Midi-буфер.
Aziz писал(а):
если оправдает себя вся затея
- не оправдает (если вы о деньгах, или прочих "ништяках") не разочаровывает и хорошо рабоатет, только то, что делается ради того, чтобы просто быть сделанным.

Aziz писал(а):
уникальный VST плагин ERA
era sequencer vst.rar - каменный век.. вообще ничего не умеет, не уникален, я видел еще, минимум, два таких же отморозка. То, что я придумал гораздо, круче. Мне секвесер нужен, только, как платформа. Мой алгоритм, всю музыку пишет автоматически. В мире аналогов пока нет. Жаль прототипом похвастаться не могу потому, что коммерческий секрет.



карма: 0

0
Ответов: 3889
Рейтинг: 362
#9: 2012-02-09 01:58:37 ЛС | профиль | цитата
login писал(а):
В мире аналогов пока нет.

А Вы точно знаете все алгоритмы мира Я могу на вскидку дать несколько математических формул, которые после прогонки через цикл и семплирования превращаются в разные мелодии, в зависимости от коэффициентов
карма: 1

0
Ответов: 1429
Рейтинг: 50
#10: 2012-02-09 02:07:45 ЛС | профиль | цитата
Aziz писал(а):
переключение и транспонирование секвенций в реале. В той же весьма удобной и навороченной FL Studio не додумались почему-то сделать живой выбор паттернов по миди. Или его режим LiveMode, но транспонирование секвенции все равно невозможно с миди-клавиатуры.
- почему же не додумались, половина хостов мечтает об этом. Просто кое какие авторские патенты фирмы Yamaha им не позволяют, потому, что они Юр-Лица. (патенты Ямахи даже старше компаний VST-хостов )
------------ Дoбавленo в 02.05:
1nd1g0, аналогов нет на рынке, а в головах есть
Недавно 3 компании начали работать над этим активно. Весь мир ждет. Скоро прорвет. Но я надеюсь успеть раньше них.
------------ Дoбавленo в 02.07:
Авто-генераторы музыки будут выходить один за другим.
карма: 0

0
Ответов: 3889
Рейтинг: 362
#11: 2012-02-09 02:13:46 ЛС | профиль | цитата
login писал(а):
Авто-генераторы музыки будут выходить один за другим.

Да они давно на рынке есть, целые студии. Посему заявлять мировую уникальность я бы поостерёгся
карма: 1

0
Ответов: 1429
Рейтинг: 50
#12: 2012-02-09 02:15:39 ЛС | профиль | цитата
1nd1g0, например?

http://ru.gen43.com/about/ - в зачаточном состоянии. Все они, до сих пор, имели такой вид.
карма: 0

0
Ответов: 1297
Рейтинг: 47
#13: 2012-02-09 02:22:14 ЛС | профиль | цитата
login писал(а):
кое какие авторские патенты
это какие же интересно? Просветите.. ИМХО, никто им запретить не может посылать паттерн-селектору в своем софте стандартные сообщения СС или номер миди ноты.. Впервые слышу. Тогда бы и остальную автоматизацию не сделали бы.

А насчет анахронизма ERA'ы - согласен, она не нова, но попробуйте найти секвенсер в VST формате, который бы позволял транспонировать патерны вживую с клавиатуры, назначать клавиши клавиатуры паттернам через MidiLearn, и даже переклчать банки паттернов таким же образом. Если честно, я не нашел.. В этом-то для меня ее уникальность.

Насчет скорости пакета - насколько помню скорость потока Миди сообщений достаточно мала по сегодняшним меркам - скорость передачи данных = 31250 +1% бит/с. (http://dvfu.ru/meteo/PC/midi.htm)
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Ответов: 3889
Рейтинг: 362
#14: 2012-02-09 02:31:34 ЛС | профиль | цитата
login писал(а):
например?

BandInABox
WikiPedia писал(а):
Band-in-a-Box («карманный оркестр») — MIDI-аранжировщик, программа, созданная компанией PG Music. По заданным аккордам она автоматически генерирует музыкальное сопровождение и сложные инструментальные соло, имитируя стиль игры известных музыкантов.

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

И т.д. и т.п. == Программа появилась в 1990-м году и до сих пор развивается, появилось несколько наследников ==
Положите пальму первенства на место, нехорошо брать чужое
------------ Дoбавленo в 02.31:
Как и обещал, даю функцию (формулу), график которой, если его пропустить через звуковую карту, прямо таки поражает Чтобы не приходилось самим кодить в HiAsm, даю ссылку на онлайн-генератор уже со введённой формулой, осталось сгенерировать график и запустить воспроизведение [burl=http://wurstcaptures.untergrund.net/music/?oneliner=w%3Dt%3E%3E9,%20k%3D32,%20m%3D2048,%20a%3D1-t/m%251,%20d%3D%2814*t*t^t%29%25m*a,%20y%3D[3,3,4.75,2,2][p%3Dw/k%263]*t/4,%20h%3D%22IQNNNN!!]]!Q!IW]WQNN%3F%3F!!W]WQNNN%3F%22.charCodeAt%28w/2%2615|p/3%3C%3C4%29/33*t-t,%20s%3Dy*.98%2580%2By%2580%2B%28w%3E%3E7%26%26a*%28%285*t%25m*a%26128%29*%280x53232323%3E%3Ew/4%261%29%2B%28d%26127%29*%280xa444c444%3E%3Ew/4%261%29*1.5%2B%28d*w%261%29%2B%28h%25k%2Bh*1.99%25k%2Bh*.49%25k%2Bh*.97%25k-64%29*%284-a-a%29%29%29,%20s*s%3E%3E14%3F127:s&oneliner2=&t0=0&tmod=0&duration=60&separation=100&rate=8000]СУРОВАЯ ФОРМУЛА[/burl]
карма: 1

0
Ответов: 1429
Рейтинг: 50
#15: 2012-02-09 02:32:17 ЛС | профиль | цитата
Aziz, а как вст хост играет миди ноты вы уже разбирались? В каком формате синхронизации нужно их отправлять в хост из плагина?

Просто я с железным инструментом, через реальный миди-порт. И если требуется выдать несколько аккордов - сразу, в несколько каналов, то эти события должны произойти одновременно, это вызывает пик занятости проца, и от этого затормаживаются таймеры, или просто музыка имеет неточный ритм. Нормально работает только буфер, в отдельном потоке, который делает только то, что по условию читает массив с нотами. А обработку миди нот производить "на лету" пока не получается.
карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)