Abstract The objective: The engineering goal of this project has two parts: one
is to create a program to parse a MIDI file, and the second goal is to have the
program run searches between MIDI files, in a "music search." Today, the
prevalent way to search for music is to enter the lyrics or title of a song into
a search engine, like Google. However, this can be disadvantageous for music
without lyrics (such as western classical music), or if you do not know the
lyrics. Also, musicians frequently steal music from one another, and this often
goes unnoticed. This project, however, can defeat musical copyright
infringement; it can search a single song against a large database of songs, and
find matches. Methods/Materials In the beginning, I use the MidiSwing software
to record input from a MIDI-compatible keyboard, then it is saved to a file
called mqry.mid, which is the file that is used as the search query. Then I use
Terminal to run the search program, which searches mqry.mid against a song bank
of MIDI files. The search results are displayed in the Terminal window. To
create this search program, I used Xcode, a programming environment for Mac OSX.
I wrote the code in the C++ programming language. Results The program was able
parse every MIDI file it was given, and was able to find matches between the
query file and the song bank. Conclusions/Discussion It is possible to create
software that can perform a "music search," instead of a lyrics-based music
search. This Mathematical project is a music search based not on the lyrics, but
on the song itself.
http://www.1000sciencefairprojects.com/Mathematics/Nonlyrical-Music-Search-Algorithm.php
|
|