https://github.com/sappho192/giantmidi-piano-parser
GiantMIDI-Piano dataset parser written in C#
https://github.com/sappho192/giantmidi-piano-parser
Last synced: 2 months ago
JSON representation
GiantMIDI-Piano dataset parser written in C#
- Host: GitHub
- URL: https://github.com/sappho192/giantmidi-piano-parser
- Owner: sappho192
- License: mit
- Created: 2023-06-09T07:00:43.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-06-09T08:11:44.000Z (almost 2 years ago)
- Last Synced: 2025-02-02T22:37:17.883Z (4 months ago)
- Language: C#
- Homepage:
- Size: 8.79 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GiantMIDI-Piano-Parser
GiantMIDI-Piano dataset parser written in C#
## Dataset
Dataset can be acquired from [https://github.com/bytedance/GiantMIDI-Piano](https://github.com/bytedance/GiantMIDI-Piano)
## How to use
This program parses information from the MIDI file and translates into following types of data:
| label | type | range | source |
| ----------- | ------- | ------------------ | ------------------------------------------------------ |
| Time | Integer | 0 < n | raw time |
| TimeDiff | Integer | 0 ≤ n | Time - Previous Time |
| Length | Integer | 0 < n | Note Off - Note On |
| NoteNum | Integer | 0 ≤ n ≤ 127 | |
| NoteNumDiff | Integer | -127 ≤ n ≤ 127 | NoteNum - Previous NoteNum |
| LowOctave | Integer | 0 or 1 | 1 when NoteNum < 72 (C5)
0 when NoteNum > 71 (B4) |
| Velocity | Integer | 0 ≤ n ≤ 127 | |### Execution
In terminal, just pass the directory path of the midi dataset of GiantMIDI-Piano (`midis` or `surname_checked_midis`)
```bash
dotnet GiantMIDIParser D:\DATASET\surname_checked_midis
```Result will be saved in `result` folder.
Data will be automatically shuffled and split into train/validation/test folder. Split ratio is 8:1:1.