These are the MIDI files of some of my favorite songs I'm using to experiment with a Tone.js project. I borrowed these from the YouTube channels that provided free MIDI files. I do not own any of them. With that said, here is the list of sources where these files were collected from.
- AsdKeys
8
- Free Piano Tutorials
8
- Cosmic PIANO
6
- Gluton
2
- Allerlei von Nicolai - No Copyright Music
2
- FMM Music
2
- Kendrik Kanata
1
- Misha Kokh
1
- sakura swann
1
- tastyFrMusic
1
- PIANO MIDI
1
- Piano Tutorial
1
- BGP Harmony
1
- ShinkoNet
1
- Neonix
1
As I mentioned earlier, I am collecting midi files to work with a Tone.js extension. The more diversity we get, the better. This is why I need your help.
If you encounter freeware or shareware midi, you can contribute to this project. Place the .mid
file to midi
directory.
You also need to put an entry to sources.json
file to save the original sources. The JSON file is structured like the one below.
{
"sources": {
[key]: [value],
...
},
"songs": [
...
]
}
Use the following object shape in the songs
key:
{
"songs": [
{
"title": "${song_title}",
"artists": {
"${artist_name_1}": "${artist_link_1}",
["${artist_name_2}": "${artist_link_2}"],
...
},
"source": {
"Official Lyric Video": "${link}",
["Official Music Video": "${link}"],
["Official Audio": "${link}"],
["Official NCS Release": "${link}"],
["${provider_or_channel_name}": "${link}"],
...
},
"midi": {
"${provider_or_channel_name}": ["${link}", "by"],
...
},
"sheets": {
"${provider_or_channel_name}": ["${link}", "by"],
...
}
}
]
}
-
${property_or_value}
are variables and would be replaced manually with their appropriate meaning. -
The properties of
artists
can havenull
value if there is no direct link. -
sheets
can be aboolean
or anobject
. -
["property": "value"]
entries are optional, yet all keys are required to have at least one object, as shown.
If the source doesn't exist in the sources
key, you might put an entry after its name:
{
"sources": {
"${provider_or_channel_name}": "${link}",
...
}
}
We rename the *.mid
files using the following outline...
${source_acronym}_${artists}_${title}.mid
...and it is done so we can skim through the list, knowing where to look for.
- The source code is licensed under MIT.
- MIDI files (
media/*.mid
) belong to their original authors as listed in the Songs table. I am using these for a Tone.js project for educational purposes that falls under the terms of fair use. - Always read the video description of each YouTube video listed to know how the content should be treated. Some YouTube channels (like Allerlei von Nicolai - No Copyright Music) published their piano composition under Creative Commons Attribution License, although the original song can be subject to copyright.