Обработка и Анализ Аудио-сигнала в Скриптах

Ну наконец-то, Миша проверил, спасибо. Замечания учту, ошибки все поправлю.
Не сказал бы, что у тебя всё намного быстрее по сравнению с чем-либо существующим
Там же несколько операций, потому и не быстрее все в целом. Если сравнивать по одной - будет в разы быстрее.
акцент на крутость/быстроту прорисовки графики и упрёк в сторону spk77
Ты может, неправильно понял, что я сказал про spk77 скрипт - вообще, если честно, его скрипты - это единственные, которые я полностью понимаю.
Он очень обдуманно пишет. Просто именно в том скрипте - не очень продумано. Я подобное проверил, и сходу получил раза в 2 быстрее, дальше просто не стал возиться.
В общем, спасибо за отзывы. Ты, наверное, сам знаешь, что наиболее интересно услышать мнение человека, который в курсе, как и что делается, особенно твое мнение.
 
Ошибку (стр. 1389) при зуме с неоригинальными w/h основного окна исправил.
@Oliver_Cray, не совсем понятно. При ошибках окно вроде остается висеть(в мертвом виде).
Если ошибка вылетает с номером строки, то если не трудно, указывайте, так намного проще исправлять.
Если же просто сбросилось на начальное окно(как при запуске скрипта) и не зависло - это другая ситуация.
Значит, либо трек с аудио был удален, либо переключение на другой проект и т.п. - просто повторно нажать Get Selection(текущие настройки сохраняются).
 
@EUGEN27771, окно просто закрылось в момент когда я двигал ползунок фильтра, зум был горизонтальный. Это случилось один раз. Больше такого не было.

З.Ы. Хотелки:
1) Движение курсора при проигрывании. Сейчас при горизонтальном зуме приходится передвигать окошко средней кнопкой мыши.
2) "Прослушивание" фильтра. Чтоб выбрать оптимальные настройки.
3) При "тяжелых" операциях, типа изменения фильтра было бы неплохо надпись "Processing" как при "Get selection".
[DOUBLEPOST=1471890149][/DOUBLEPOST]Подпишусь, полезная фича.
- в перспективе нужны пресеты/загрузка последних параметров
 
окно просто закрылось в момент когда я двигал ползунок фильтра, зум был горизонтальный
Странно, сталкивался иногда с этим, на очень длинных участках, но потом окно возвращалось на место всегда.
По 1 пункту - пробовал авто-скролл(для теста только) - получается фигня, можно повозиться и сделать лучше, но оно того не стоит.
Поэтому, наверное, сделаю, подтягивание вида к курсору, но в "страничном" режиме, то есть когда курсор доходит до конца окна - окно перелистывается и т.д.
По 2 - это нереально, даже не догадываюсь как можно реализовать в скрипте...
По 3 - добавлю, если нужно, не проблема.
Пресеты тоже сделаю.
 
  • Like
Реакции: Oliver_Cray
Грубая попытка выровнять тейки. Используем встроенные средства, а хули - Не вокал - гитара и тп.
Я понимаю, какую серьезную работу сделал Михаил в своем скрипте. Я в эту сторону пока не смотрю.
Align takes 1.gif
 
Последнее редактирование:
  • Like
Реакции: vax
@EUGEN27771, разобрался с "падением", триггера. Если "мацать" окошко скрипта когда он работает, вин еще пишет (не отвечает), оно потом прячется за окно рипера. Если рипер свернуть в окно, то окно триггера можно достать.
 
@Oliver_Cray, так и предполагал.
===================
Такая штука задумывается -
https://raw.githubusercontent.com/EUGEN27771/ReaScripts_Test/master/Demo/Align Items(mini-demo)4.gif
То есть "много-айтемная ровнялка по транзиентам". Быстро, тупо, и просто - используется встроенный детектор и пара функций.
Попробовал вставить свой и фильтры - результат - практически тот же, но время выполнения - провал.
Пример - на картинке 5 айтемов по 48 секунд - на самом деле - видно только кусок. Все работает почти в реал-тайм.
По сути, ровняет неплохо, но при определенных настройках. В этом некоторая проблема - слишком капризные эти настройки.
И сильно связаны между собой.
В общем, суть скрипта - ищет транзиенты, сравнивает, находит пары, ровняет под референсные маркеры(если есть).
Если где-то не то нашлось и ему есть пара - будет "ровнять" криво, под эту "пару". Это легко исправить вручную, но попытаюсь минимизировать.
Я попробую, наверное, взять все возможные маркеры, а дальше отбросить лишнее учитывая, что можно посчитать и rms слева-справа маркера, и огибающую куском, и отфильтровать если нужно, уже есть некоторые варианты.
Короче, попробуйте, кто хочет, на барабанах или гитарах. Вообще, оно ровняет и вокал(на картинке именно вокал, притом пачка), но только по транзиентам.
Первичный вариант:
Align Items by transients
 
Последнее редактирование:
В последние версии Рипера добавили fft_real/ifft_real . И где они раньше были. Крайне полезная штука. Это выигрыш в скорости в фильтре, плюс отбрасывается куча итераций, плюс все проще
 
Последнее редактирование:
  • Like
Реакции: stepperian
Евгений,спасибо большое за ваши скрипты!
Вопрос по Vox-Deesser , когда ожидается новая версия? Когда будет снято ограничение на 60 секунд?
 
Последнее редактирование:
  • Like
Реакции: Nagor
@HDVulcan, все не доберусь до него. Дело в том, что там я думаю все переписать с нуля, причем желательно на eel. Я провел некоторые тесты - это будет раз в 10-15 быстрее, но:
1)сейчас пару других вещей делаю, для меня более важных и интересных.
2)на eel все не так просто переделать, но обещаю сделать, но время точно не назову.
На lua все делается играючи, абсолютная свобода практически.
На eel приходится напрягаться, причем иногда до головной боли. Оно мне надо?
===============
Научился компилировать, правда тупо по шаблонам пока, С++ код, пытаюсь мелочи какие-то делать, все работает, не все так сложно, я бы даже сказал, все достаточно просто в плане кода, как и предполагалось.
Непонятно для меня - как все эти ресурсы связываются, и почему именно так.
Со своими ресурсами понятно, но там как-то в sdk закручено. Прав тот чел, у которого шаблоны С++ - "все становится просто, когда все яйца корзине" - не знаю, может не правильно перевел, но мне всю суть передает. Не могу найти сейчас тему на оффоруме.
В моей корзине не хватает половины яиц:).За следующий год, думаю, найду.
У него есть шансы, но очень мелкие, но я его сделаю.
Времени мне - до 26.11.2017. Год с лишним.
А когда я его сделаю, я точно смогу ответить себе на свой же вопрос. Вот такая штука. Интересно просто: смогу - не смогу.
 
Последнее редактирование:
Приветствую!
Евгений, вы уникальный человек и я снимаю шляпу перед вашим неподдельным талантом.Это ваша стихия по настоящему!Мне нравится что вы очень целеустремленный и увлеченный человек.
Конечно лучше сделать на eel, скорость в работе необходима.Это здорово что вы не гонитесь за количеством билдов, а предпочитаете качество.В этом вопросе лучше не торопится и сделать все как нужно постепенно.
Я вас прошу только об одном,Евгений, не бросать начатое дело и завершить успешное преобразование данного скрипта до 26.11.2017.;)

С наилучшими пожеланиями!
 
Друзья (особенно прошу обратить внимание @EUGEN27771, конечно). Я немного выпал из темы, потому прошу извинить за невнимательность.

А есть какое-то решение на основе скрипта для автоматического гейтирования (ударных, например) на основе огибающей громкости? А то у меня тут самое нелюбимое занятие в большом объёме образовалось - ручками томы гейтировать)

2016-11-23_125908.png
 
@fakeitback, готового нет. Сделать, конечно, несложно. По сути, как я понимаю, это как обычный гейт - только с помощью огибающей + релиз оттянут влево.
Но пока куча недоделок накопилась
 
  • Like
Реакции: fakeitback
@EUGEN27771, да, всё так. В принципе, набортный механизм рассекания по транзиентам не так уж и плох, но там много ложных срабатываний и нет огибающий, всё рубит на куски.

С огибающей все оперативнее и нагляднее, плюс всегда в течении пары секунд можно вернуть на место случайно по+еренный удар (бывает, что ударник еле заденет пластик палочкой, ты этот момент пропускаешь, а потом идут вопросы, мол "я же в конце бриджа по 12-му тын-тын делаю, куда подевал, окаянный? ;) ")
 

Сейчас просматривают