JS Плагины - обсуждение (1 онлайн

EUGEN27771

Well-Known Member
23 Апр 2010
2.289
1.969
113
он ловит миди сигнал, поступающий в него, на основе нот подсчитывает частоту и подстраивает длину окна точно под период волны (можно добавить регулятор кратности типа x2, x4, x8). В случае полифонического сигнала наверное брать нижнюю ноту.
В итоге анализатор всегда будет стабильно показывать волноформу синтезатора. Как идея?
Идея реализована. И еще 3 других идеи. Смехоскоп теперь выглядит действительно смешно на фоне ;)
Синхронизация по миди, по лупу, по темпу, и свободный вариант. Моно, стерео, 1+2/3+4. Короче, полный п..
Вот примеры по миди, но сейчас уже стерео у меня, пилю по-немногу.
Автоматом подбирает размер окна в зависимости от ноты, причем постарался, чтобы на вид приходилось смотрибельное состояние. Получился просто отпад.
Midi Pitch Sync Mode3.gif
Это тупо, чтобы было понятно, что он ловит их безупречно.
Натуральные волны(хорошие звуки) выглядят просто великолепно, это надо видеть!
Времени мало пока, а вчера как засел - такие чудеса натворил - сам удивился - натуральный психодел. Некоторые волны выглядят так невероятно красиво в отображении, что я пару часов крутил пресеты и рассматривал.
Вот, полистал пресеты наугад просто, форум не дает большие файлы грузить, но думаю, понятно.
Midi Pitch Sync Mode4.gif
====
C TimeLoop - понятно, но вот посемплово - тоже круто
TimeLoop Mode1.gif
===========
Вся фигня без проблем растягивается на 2048 вообще не теряя(наоборот, так точнее) качества!
В режиме 1+2 / 3+4 можно достаточно четко рассмотреть действие сайдчейна, например. Или компрессора, или гейта - у нас экран 2048. В этих смехоскопах всех макс. 800 - там ни хрена не видно(не говоря уже о херовой отрисовке)
================
Готовый вариант скоро выложу, хочу добавить пару деталей.
 
Последнее редактирование:

EUGEN27771

Well-Known Member
23 Апр 2010
2.289
1.969
113
В виде альфа-версии, все работает, возился с нормальными кнопками и цветами - бросил, возможно потом, а может и сегодня сделаю.
Даже в таком виде, как сейчас - это уже очень хороший инструмент для анализа, это точно говорю, потому что сам искал что-то именно такое.
Точность посемпловая. Интересно, кстати, что с помощью этого я увидел - растянутые аудио(rate не равно 1) всегда играются по-разному!
В общем - ничего особенного, вид - дело такое, но два режима просто очень интересны, я бы сказал - великолепны:
1) TimeLoop - отображается зацикленный участок, хоть посемплово, причем БЕЗ ошибок.
Например, кокосовский скоп косячит даже просто по времени без циклов.
2)MidiPitch - отображается участок, соответствующий частоте миди-ноты(грубо говоря), либо кратный частоте, для удобства визуализации.
Это самый крутой режим, точно говорю. На синтезаторных звуках - это п..ц, там такие узоры получаются иногда, что крышу сносит по трезвому.

Если кому что-то не понравится - попробуйте либо первый, либо второй вариант.
Да, это альфа пока, рабочая, о косяках просьба сообщать.

https://raw.githubusercontent.com/EUGEN27771/JSFX/master/WaveScope
 
Последнее редактирование:

sd

Member
12 Дек 2004
65
26
18
Охренительный скоп!!! Не расстраивайся, ты молодец, а народ расчухает со временем.Мне понравился - очень.
 
  • Like
Реакции: Nagor

diggidon

Super Moderator
Команда форума
26 Май 2008
6.583
6.727
113
46
Днепр UA
@EUGEN27771, Женя, у меня вот днюха была, и я ессно на студии не был... Сегодня приеду, обязательно заюзаю, честное слово! )))
З.Ы. Между прочим, 18 лайков... Это несколько противоречит тому, что на него никто не смотрит, согласись)))
 
  • Like
Реакции: EUGEN27771

alexvg

Well-Known Member
4 Авг 2004
2.011
849
113
лохо, фактически я сделал, наверное(возможно), лучший скоп из всех существующих, даже альфа.
А на него даже не смотрит никто. Мне немного жаль - но ладно, х... с ним.
@EUGEN27771, отличный скоп ! Спасибо большое за работу !
PS: только он у меня просит что-то или что ? ... см. скрин.
 

Вложения

  • 96,9 KB Просмотры: 57
Последнее редактирование:

vitalker

Well-Known Member
8 Окт 2013
3.725
1.411
113
Гродно
@alexvg да, не хватает какого-то компонента.
[DOUBLEPOST=1484813044][/DOUBLEPOST]@EUGEN27771 потому что можно быть гением, но без ХОРОШЕЙ рекламы никто не узнает. Попробуем что-нибудь с этим сделать - это стоит того! ;)
 

fractala

Well-Known Member
1 Авг 2012
1.471
350
83
Женя, спасибо тебе большое за труды! Отличная работа.
 

EUGEN27771

Well-Known Member
23 Апр 2010
2.289
1.969
113
@convex, это не скрипт, JS-плагин.
Нужно скопировать текст по ссылке, сохранить(расширение в целом не важно, но лучше убрать его вообще) и перенести в папку с JS-плагинами.
======
Я вижу некоторое недоверие к JS-плагинам, поэтому кое-что скажу.
1) JS-плагины написаны на eel.
Eel по скорости работы не намного медленнее С++(на котором написаны VST).
Я провел простые тесты - это легко повторить.
Скачайте MSVS - это бесплатно. Создайте длинный луп с какими-то сложными расчетами.
Сделайте то же в JS. Посмотрите результаты - Вы будете удивлены, как минимум.

2) Я не знаю, что там Джастин замутил с графикой, но тесты показывают, что в eel графика просто очень быстрая.
По моему предположению(не уверен на 100%) - eel не перерисовывает окна, пока не произошло изменений.
Вероятно, считается контр. сумма окна, и если она изменилась - только тогда рисуется.
 
Последнее редактирование:

Ortseam

Well-Known Member
28 Фев 2006
1.889
1.221
113
49
Ruthenia Nigra
@EUGEN27771, Отличная работа! Спасибо!
Если надумаешь прикрутить к этому спектрограф, есть идея дать пользователю возможность смотреть не только амплитудный спектр, но и фазовый. Можно в разных половинках окна. Можно не одновременно, а переключаясь. А можно, как вариант, амплитуду кодировать яркостью точки, а фазу цветом или наоборот. Это будет достаточно экзотическая функция, согласен. Но я такой нигде не встречал. А иногда бывает нужно (просто как пример: незаметные на слух фазовые искажения используются при маркировке аудио контента "водяными знаками." На таком анализаторе их наличие можно было бы отследить :) ) Будет такая небольшая уникальная фишечка :)
 
  • Like
Реакции: EUGEN27771

EUGEN27771

Well-Known Member
23 Апр 2010
2.289
1.969
113
@Ortseam, попробую, не уверен, что сделаю, но "Попитка - не питка. Правда, товарищ Берия?"
===
Наверно, теперь неактуально, спектр. отображение добавили в Рипере.
 
Последнее редактирование:
  • Like
Реакции: Ortseam и nazarol-jk35

diggidon

Super Moderator
Команда форума
26 Май 2008
6.583
6.727
113
46
Днепр UA
  • Like
Реакции: Ortseam и Wefilev

@Michael

Well-Known Member
14 Дек 2010
899
1.359
93
Орёл / Москва
...тесты показывают, что в eel графика просто очень быстрая.
По моему предположению(не уверен на 100%) - eel не перерисовывает окна, пока не произошло изменений.
Вероятно, считается контр. сумма окна, и если она изменилась - только тогда рисуется.
Насколько мне известно, окно перерисовывается с gfx.update(), не более. А скорость EEL (память, графика, матан) обусловлена более искусным исполнением интерпретатора, поэтому его и рекомендуют в качестве всего, что касается DSP и всего такого.
 

EUGEN27771

Well-Known Member
23 Апр 2010
2.289
1.969
113
@@Michael, в JS обновление графики идет немного иначе, грубо говоря - update вызывается всегда.
Но и в скриптах тоже eel тотально быстрее рисует, примерно раз в 20, ты же легко можешь это проверить.
Я приблизительно понимаю почему это происходит.
1) eel специально не сравнивает все биты (value1 == value2 -- compares two values, returns 1 if difference is less than 0.00001, 0 if not).
Можно вызвать так value1 === value2 -- compares two values, returns 1 if exactly equal, 0 if not , если нужно сравнить точно.
Это сходу дает прирост производительности в циклах раз в 10, потому что одно дело сравнивать 64-битные числа полностью, а другое - только до опр. знака.
2)Математика полностью обращается к Си, причем напрямую в память. Поэтому и неудобства с этими слотами памяти. Но в Си примерно так же все и делается.
3)С графикой замутили простую вещь - я столкнулся с этим в пресетах. Перерисовать окно полностью - довольно затратная задача, каждый пиксел - rgba. В eel просто сохраняют последнюю контрольную сумму, при новом цикле сначала проверяют контрольную сумму, и если не совпадает - рисуют-обновляют, если же совпадает - ничего не делают. Это простое и гениальное решение.
 
Последнее редактирование:

Wefilev

Member
22 Мар 2015
188
23
18
@EUGEN27771, к вам большая просьба.. При записи на дорожку идет очень слабый сигнал. Примерно -40db, возможности поднять нет.. Хотел поставить лимитер: он дает большую задержку. Вы не могли бы сделать плагин который тупо поднимает уровень с шагом, например в 3db в диапазоне от -60 до 0db. Если получится еще и лимитер с индикатором уровня туда вшить.. будет просто сказка!
upd: это нужно для вокалистов, выставить уровня при Лайве
 

Wefilev

Member
22 Мар 2015
188
23
18
Нашел то, что нужно - MGA JS Limiter только threshold маловат (-30) опустить бы до -50
 

SERGEYKA

Active Member
12 Окт 2010
385
117
43
Иркутск
baikal-records.ru
Даже в таком виде, как сейчас - это уже очень хороший инструмент для анализа, это точно говорю, потому что сам искал что-то именно такое.
Точность посемпловая.
https://raw.githubusercontent.com/EUGEN27771/JSFX/master/WaveScope
Никак в толк не возьму - как его установить? Это скрипт? lua? eel? plugin? Его почему-то нет в Репаке... Сильно не бейте))
 

Сейчас онлайн (Пользователей: 0, Гостей: 1)