helio-fm / helio-sequencer

One music sequencer for all major platforms, desktop and mobile
https://helio.fm
GNU General Public License v3.0
3.04k stars 115 forks source link

Request for the addition of the midi humanization function (RU-EN) #267

Open L0w1y opened 1 year ago

L0w1y commented 1 year ago

(RU) Добавьте пожалуйста функцию гуманизации миди, в которую будет входить возможности: Задавать уровень громкости ноты случайным образом (С учётом ранее заданных параметров), Задавать длительность ноты случайным образом (С учётом ранее заданных параметров), Задавать позицию ноты случайным образом (С учётом ранее заданных параметров). С учётом ранее заданных параметров - сохранение уже заданных параметров, с минимальной разницей по внешнему виду (изначальные параметры ноты не должны сбрасываться) (Параметры ноты, редактируемые в реальном времени в DAW должны быть заметны для функции). Если нужен живой пример того как это работает, то рекомендую посмотреть это в FL Studio (Не в мобильной версии). Инструменты FL Studio Articulate - для изменения длительности нот. Randomize - для изменения уровня громкости.

(EN) Please add the midi humanization function, which will include the following features: Set the volume level of the note randomly (Taking into account previously set parameters), Set the duration of the note randomly (Taking into account previously set parameters), Set the position of the note randomly (Taking into account previously set parameters). Taking into account previously set parameters - saving already set parameters, with a minimum difference in appearance (the original parameters of the note should not be reset) (Note parameters edited in real time in DAW should be visible to the function). If you need a live example of how it works, I recommend watching it in FL Studio (Not in the mobile version). FL Studio Tools Articulate - to change the duration of the notes. Randomize - to change the volume level.

peterrudenko commented 1 year ago

Спасибо за предложения! Не могу сходу сказать, когда и в каком виде буду это делать, но мне самому нужны такие штуки. Наверное, самый простой вариант - сделать их примерно как во фруктах, но если у вас есть идеи, как это было бы удобнее со стороны UI/UX, пишите. Пока есть только недокументированный хоткей Alt +, который немного рандомизирует громкость выбранных нот.

L0w1y commented 1 year ago

Спасибо за предложения! Не могу сходу сказать, когда и в каком виде буду это делать, но мне самому нужны такие штуки. Наверное, самый простой вариант - сделать их примерно как во фруктах, но если у вас есть идеи, как это было бы удобнее со стороны UI/UX, пишите. Пока есть только недокументированный хоткей Alt +, который немного рандомизирует громкость выбранных нот.

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

peterrudenko commented 1 year ago

Хоткеи можно менять под себя, но не через UI: надо скопировать этот файл в папку документов приложения, например, под виндой это будет %HOMEPATH%\Helio, и редактировать его. Там относительно человекочитаемый формат: текстовые описания хоткеев, по названиям команд можно примерно догадаться, что они делают. После перезапуска приложение подхватит этот файл и будет использовать его вместо встроенного конфига. Похожим образом можно добавлять свои кастомные лады, размеры, цветовые схемы и прочее.