realMakS
01.12.2018, 15:59
DryWetMIDI (https://github.com/melanchall/drywetmidi) – .NET библиотека для работы с MIDI файлами, позволяющая:
Читать, писать и создавать файлы в формате Standard MIDI Files (SMF) (https://www.midi.org/specifications/category/smf-specifications), а также RMID (https://www.loc.gov/preservation/digital/formats/fdd/fdd000120.shtml) файлы, где SMF упакован в блок RIFF. Процесс чтения и записи можно точно настроить, что позволяет, например, прочитать испорченные файлы и восстановить их, или же написать валидатор MIDI файлов.
Реализовать пользовательские блоки данных (https://github.com/melanchall/drywetmidi/wiki/Custom-chunks) (chunks) и мета события (https://github.com/melanchall/drywetmidi/wiki/Custom-meta-events) (meta events), которые могут быть записаны в MIDI файлы или же прочитаны из них.
Управлять содержимым MIDI файлов посредством низкоуровневых сущностей (например, событий) или же высокоуровневых (например, нот).
Создавать музыкальные композиции (Pattern (https://github.com/melanchall/drywetmidi/wiki/Pattern)).
Выполнять сложные задачи, например, квантизацию, разделение нот или конвертацию MIDI файла в CSV (Tools (https://github.com/melanchall/drywetmidi/wiki/Tools)).
Для быстрого погружения в работу с библиотекой можно прочитать следующие статьи:
DryWetMIDI: High-level processing of MIDI files (https://www.codeproject.com/Articles/1200014/DryWetMIDI-High-level-processing-of-MIDI-files)
DryWetMIDI: Notes Quantization (https://www.codeproject.com/Articles/1204629/DryWetMIDI-Notes-Quantization)
GitHub проекта: https://github.com/melanchall/drywetmidi
Wiki: https://github.com/melanchall/drywetmidi/wiki
Читать, писать и создавать файлы в формате Standard MIDI Files (SMF) (https://www.midi.org/specifications/category/smf-specifications), а также RMID (https://www.loc.gov/preservation/digital/formats/fdd/fdd000120.shtml) файлы, где SMF упакован в блок RIFF. Процесс чтения и записи можно точно настроить, что позволяет, например, прочитать испорченные файлы и восстановить их, или же написать валидатор MIDI файлов.
Реализовать пользовательские блоки данных (https://github.com/melanchall/drywetmidi/wiki/Custom-chunks) (chunks) и мета события (https://github.com/melanchall/drywetmidi/wiki/Custom-meta-events) (meta events), которые могут быть записаны в MIDI файлы или же прочитаны из них.
Управлять содержимым MIDI файлов посредством низкоуровневых сущностей (например, событий) или же высокоуровневых (например, нот).
Создавать музыкальные композиции (Pattern (https://github.com/melanchall/drywetmidi/wiki/Pattern)).
Выполнять сложные задачи, например, квантизацию, разделение нот или конвертацию MIDI файла в CSV (Tools (https://github.com/melanchall/drywetmidi/wiki/Tools)).
Для быстрого погружения в работу с библиотекой можно прочитать следующие статьи:
DryWetMIDI: High-level processing of MIDI files (https://www.codeproject.com/Articles/1200014/DryWetMIDI-High-level-processing-of-MIDI-files)
DryWetMIDI: Notes Quantization (https://www.codeproject.com/Articles/1204629/DryWetMIDI-Notes-Quantization)
GitHub проекта: https://github.com/melanchall/drywetmidi
Wiki: https://github.com/melanchall/drywetmidi/wiki