NIPL/Implementation
From ThorxWiki
Implementing a NIPL.
First up, we need to consider what we need to store.
- The music
- MetaData about the music
- Scores for song-pairs.
Method
- Music
- Music is stored on a per-track basis as any format supported by the player. (.ogg and/or .mp3 most likely)
- MetaData
- Music metadata should be stored in an associated file - simple text file initially? (this ensures the data is stored in a consistent manner regardless of music format type)
- The Album, track number, Artist(s), date recorded, instruments played, genre... there could be alot of stuff. Refer to:
- Scores
- For SongA->SongB where SongB follows songA, we cannot score the A->B pair untill after B begins. Nevertheless, we want to store the score with SongA, since that's where we'll need to know about it for next time we want to refer to it.
- For each song, a simple textfile holding the scores and the song that score relates to. (maybe hold the number of votes also, for added precision when re-scoring)
Issues to think about:
- Implied scores (album/artist/genre) are difficult without further lookup tables keeping track of what songs belong to which album(s), artist(s) and genre(s)...
- Implied scores are gonna be kinda nescessary IMHO, given it's the only reasonable way to populate the scoring database with any reasonable speed.