Клон репозитрия с GitHub, причина: блокирует всё подряд...
Martin Rys 34132de609 v2m.py: Linter fixes and typing | 1 月之前 | |
---|---|---|
.github | 1 月之前 | |
docs | 1 年之前 | |
midis | 3 年之前 | |
tests | 1 月之前 | |
video2midi | 1 月之前 | |
.gitignore | 3 年之前 | |
.v2m.ini | 5 年之前 | |
LICENSE | 5 年之前 | |
README.md | 1 月之前 | |
pyproject.toml | 1 月之前 | |
requirements.txt | 6 月之前 | |
requirements_optional.txt | 6 月之前 | |
v2m.py | 1 月之前 |
youtube synthesia video to midi, just for fun )
Воссоздание midi с видео роликов synthesia и ей подобным..
Video example on YouTube, creating midi from hybrid synthesia video & real piano video2midi 0.4.5.2
Video example on YouTube, creating 2 channels midi, version video2midi 0.3.9.1
Video example on YouTube, creating 6 channels midi, version video2midi 0.3.9.1
Video example on YouTube, creating 2 channels midi, version video2midi 0.3.0
Manual "How to" Or "How to use video2midi after installing"
GH already added new discuss functionality so we can talk without opening an issue... if you have any questions or comments, you can open discuss or you can write to whatsapp / telegram , i'll try to answer / help ;)
sudo apt install python-opencv python-pygame python-midiutil python-opengl
sudo pacman -S hdf5 python-opencv python-pygame python-opengl
# Venv
pip install midiutil
Or thanks to C0rn3j you can install video2midi just from AUR now using your favorite AUR helper:
yay -S video2midi-git
Download the video with your favorite melody (I recommend 720p), launch the program, adjust the keys in it, press Q and after the processing completes a MIDI file will be created.
./v2m.py ./synthesia_video.mkv
In the Start menu, search for and open Anaconda command prompt:
cd path to v2m.py
python v2m.py synthesia_video.mkv
Controls:
We scan the virtual keyboard, frame by frame, and write the keys to a MIDI file...
All settings are loaded from an INI file, a global one can be defined in the home directory (~/.v2m.ini
) or you can define a separate local one in the current directory (./v2m.ini
).
You can also customize the separation into channels depending on the color of the key. To do this, you need to modify the color matching to the midi channel of the track in the v2m.ini
file.
By default, each key color will be recorded in its own channel, so if you want to combine the channels, simply specify the same numbers for different colors.
color_channel_accordance = 0,0, 1,1, 2,2, 3,3, 4,4, 5,5
You can customize the channel mapping to a MIDI instrument. To do this, in the v2m.ini file, you need to modify the correspondence of the midi channel to the instrument. The default all channels is 0 midi instrument.
channel_prog_accordance = 0,0, 0,0, 0,0, 0,0, 0,0, 0,0
sudo apt install python-opencv python-pygame python-midiutil python-opengl
sudo pacman -S hdf5 python-opencv python-pygame python-opengl
# Venv
pip install midiutil
Скачиваем видео с понравившейся мелодией ( рекомендую 720p ) , запускаем программу, в ней регулируем клавиши жмём Q и после завершения работы будет создан midi файл.
./v2m.py ./synthesia_video.mkv
in start menu search and open Anaconda command prompt:
cd path to v2m.py
python v2m.py synthesia_video.mkv
Кадр за кадром сканируется видео поток отслеживая изменения виртуальной клавиатуры после всё что зафиксировано дампим на винт.
Все настройки вынесены в файл ini файл который может использоваться как общий для всех каталогов если находится в домашнем каталоге ~/.v2m.ini либо отдельный локальный для каталога ./v2m.ini.
Вы можете настроить разбиение на каналы в зависимости от цвета клавиши. Для этого в файле v2m.ini нужно поправить соответствие цвета каналу midi трека. По умолчанию каждый цвет активирующий клавишу будет записан в собственный канал, таким образом если хотите объединить каналы просто укажите для разных цветов одинаковые номера.
color_channel_accordance = 0,0, 1,1, 2,2, 3,3, 4,4, 5,5
Вы можете настроить соотнесение канала к MIDI инструменту. Для этого в файле v2m.ini нужно поправить соответствие канала midi инструменту. По умолчанию канал равен 0 midi инструменту
channel_prog_accordance = 0,0, 0,0, 0,0, 0,0, 0,0, 0,0