Dear colleagues,
I'd like to test my software on a good set of MIDI files of all types with all possible corner cases.
Does anybody know if there is any MIDI file test suite already available?
Thank you!
Interesting idea, but what exactly are you hoping to 'test'?
I have a number of midi files that I would consider worthy of being 'demonstration' files, but this would be regarding the music, and the way that midi has been used to create a great sound. The actual use of midi may be pretty mundane?
There may be too many versions of systems to work within, would you want to stick within the bounds of GM, or XG, or GS, or whatever, as the technology improves step by step. You could easily end up offering files that will play correctly (i.e. as the creator intended) ONLY on certain kit. I would suggest that at present we'd have to stick with GM as being the most widely viable standard?
Geoff
The piece of software I'm trying to test is mainly this: https://jazz-soft.net/download/midi-player/
but I'm sure many MIDI developers would find such a test suite useful.
Playing XG/GS files would be, of course, a bonus, but there are lots of questions even with GM files,
e.g. can I play type 0/1/2 files? how do I handle SMPTE que points? how I handle UTF8 karaoke text for right-to-left languages?
and many others...
If there is no existing test suite, I can start work to create it, but I don't want to invent another bicycle.
Hello,
As far as I know, no midi file that I've ever seen uses SMPTE timing, or que points whatever they are. Certainly, none do anything regarding right-to-left karaoke text. So, on the terms that you're indicating, I'd have to suggest that there is no 'test suite' available, so maybe you'd better do something yourself.
Regarding the text part, you could prob simply amend any existing midi file, so that's no big deal. To produce a file using SMPTE you'd need something that supports that from square one, to create such a file, and I cannot offer any hints regarding that.
Geoff
For testing my .NET library for working with MIDI files I used collection of files taken from this thread on Reddit.
Thank you Max!
This is worth to have a try.
However, I'd prefer a small annotated set that would include all possible features.
Hi everybody,
I hope this might be interesting for some of you...
I have parsed all files from "Midi Man's reddit" set using jzz-midi-smf node module.
Of 128769 MIDI files in the set there are NO RMI files, NO type 0 or type 2 MIDI files, NO files with SMPTE timing.
All are plain type 1 MIDI files with ppqn timing.
That makes the set not the best choice for a test suite.
It has been a while since I've started this branch...
There is not too many existing options, so I had to start my own project: https://github.com/jazz-soft/test-midi-files
Hope some of you will find it useful...