Как стать автором
Обновить

Комментарии 20

Классно! Года четыре назад задумывался о чём-то таком, но руки не дошли (да и не возникло прям огромной необходимости). Грустно только, что приходится вот так вот извращаться для того, чтобы получить мидишку, которая в принципе для мелодии есть, но не у тебя.
Согласен немного грустно, однако выход нашёлся =)

Как дела с точностью тайминга? Есть подозрение, что 25-30 кадров в секунду из видео будет недостаточно для правильной мелодии

Зависит от мелодии, в большинстве случаев хватает за глаза, в некоторых случаях после реконструкции нужно немного «доработать напильником», что намного лучше нежели перерисовывать с нуля…
Нет ;)
Вдохновляющая работа! Простите за глупый вопрос, а правая/левая руки учитываются?
Если в видео потоке есть разбиение на обе руки, то в текущей версии будут учитываться. Так как там реализовано разнесение по каналам. В файле v2m.py можно задать цвета для активации клавиш в переменной keyp_colors после в keyp_colors_channel указать соотнесение цвета клавиши каналу, Можно таким образом можно добиться нужного разнесения (правая рука, левая рука) либо поменять местами (левая рука, правая рука).
Можно еще выгрузку нот реализовать из MIDI — было бы вообще прикольно. Так то конвертеры внешние есть, наверняка и библиотеки должны быть. По поводу длительностей — чтобы не зависеть от частоты кадров может стоит длину полосочек считать, а не длительность нажатия?
Можно еще выгрузку нот реализовать из MIDI — было бы вообще прикольно.

Не совсем понял о чём идёт речь, если о том что бы передавать любому приложению на midi вход, то смысла особого нет по двум причинам:
1. Многие midi плееры умеют это делать.
2. Скорее всего производительности может не хватить что бы в реалтайм отправлять ноты.

По поводу длительностей — чтобы не зависеть от частоты кадров может стоит длину полосочек считать, а не длительность нажатия?


Это реализовать сложнее, тут как вариант возможны 2 пути решения:
1. Нужно будет составлять карту нот (которая для некоторых мелодий может быть очень и очень длинная, а это будет сильный удар по ресурсам) и уже от неё плясать.
2. Делать систему отслеживания движения нот, это сложнее
Оба варианта реализовать возможно, но особого смысла на данный момент не вижу. Возможно в будущем займусь этой темой. Ещё проблема будет с перекрывающимися нотами, в этом случае отследить их будет куда сложнее…
Крутая штука, мне в свое время такой не хватало очень сильно. Думаю многим может пригодиться, вот только не все они на хабре сидят)
Сейчас может из любопытства попробую, но именно в плане учебы хочется более фундаментально подходить. Замечал, что в синтезии мелодия запоминается больше спинным мозгом (будто в гитар хиро играешь), нежели чем когда вникаешь в ноты, длительности и учишься ноты читать, нежели зубрить. Но не критикую ни в коем разе)
Крутая штука, мне в свое время такой не хватало очень сильно. Думаю многим может пригодиться, вот только не все они на хабре сидят)

Я даже не знаю куда писать… Может есть тематические форумы или ещё что, в любом случае, если есть желание можете где Вам удобно выложить ссылку на гитхаб, не буду против =)

А так думаю может видео на Ютубе выложить как этой программой пользоваться =)
Попробуйте реддит, тот же сабреддит питона, можно даже слукавить и в раздел learnpython выложить, а там разнесут. Иначе тоже не знаю, где можно было б популяризовать, никогда на профильных музыкальных форумах не сидел.
На ютуб наверное тоже можно, только не знаю как там привлекать широкую публику.
Обновил релиз, улучшил гуи, в общем используйте на здоровье =)
А может кто-нибудь скомпилировать в exe?
Или подскажите как запустить в windows. Поставил Питон — ругается на отсутствующий vc2. Поставил Анаконду — не понял как ей пользоваться.
1.Устанавливаешь анаконду с питоном 2.7
2.В пуске находишь anaconda prompt
3.В неё pip install opencv-python midiutil pygame pyopengl
4.Пишешь python путь-до-v2m.py путь до видео
Ещё обнаружил баг, который приводил к белому экрану видео ряда на винде (приходилось нажимать клавиши перемотки видео), исправил, так что если встретили этот баг, обновите скрипт.
Обновил релиз (0.3.5), исправил баги, добавил клавиши для сохранения и загрузки настроек и положений всех клавиш, в общем используйте на здоровье =)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории