Nocturne
Sep 3 2005, 11:36 PM
Hi,
I'm studying computer science and now I want to do a programming project for my portfolio. I'm thinking about doing something that has to do with music, maybe a trainer of some sort. The problem is I can't think of a great subject for my project, so I'd like to ask if anyone has a suggestion. Any ideas would be very much appreciated. Thanks in advance!
MattD
Sep 4 2005, 12:03 AM
Can whatever language you're using access the MIDI/Game port? If so, you could create some kind of sight reading program. It could display a randomly generated phrase etc of music on the screen, record the input from the keyboard, and then compare it with what was displayed on the screen. Then give a mark based on how close etc. Still, it would have to be more lenient in certain areas for more advanced areas to allow for interpretation etc. Not sure how do-able it'd be though...
Never mind me, I'm probably just talking rubbish
Amber
Sep 4 2005, 10:12 AM
QUOTE(MattD @ Sep 4 2005, 12:03 AM)
Never mind me, I'm probably just talking rubbish

No you're not. That sounds a brilliant idea. I failed the sightreading part of my exam, and a sightreading trainer like you're describing would have been so helpful.
Go for it Nocturne!
Amber
x
elmo
Sep 4 2005, 10:23 AM
Aural trainers are always good!
Nocturne
Sep 4 2005, 10:53 AM
Thanks, all are very useful replies. In this stage there are really no bad idea's, I can use everything. Just post any ideas, and later I will decide whether the projects are do-able or not.

Sometimes when an idea seems impossible you actually can use parts of it, or you can always use ideas to get new ideas!
For the ones interested; I'm going to use visual basic.net for my project so I'm able to use MIDI (I've never done that before, but seems like a good opportunity to try it)
I will look into the ideas posted and any other idea will be very much appreciated!
YetAnotherPianist
Sep 4 2005, 11:52 AM
QUOTE(elmo @ Sep 4 2005, 11:23 AM)
Aural trainers are always good!
I second that.
There's a good gap in the market here: there isn't a Kodaly program available. Couple it with a microphone input (use a fourier transform to find the frequency of the note being sung) and you have a magnificent aural trainer.
Or - something to realise figured bases using a genetic algorithm. It's been done
to harmonise a melodic line using 4 parts but not to realise figured bases.
Actually, that last one sounds fun; I might do that if you don't
elmo
Sep 4 2005, 01:47 PM
Can we be the testers of this programme whatever it is?!
Nocturne
Sep 4 2005, 02:00 PM
QUOTE(elmo @ Sep 4 2005, 03:47 PM)
Can we be the testers of this programme whatever it is?!
Of course you can, that would be great. There will be some requirements though; I'm going to build the program for a windows computer for instance. The program will appear on
my website when it is done (the website will be available in English soon) and I will leave a note here when I’m finished
elmo
Sep 4 2005, 04:20 PM
Is that dutch?! Coool! I understood the gist of it, which was quite weird
Choddy
Sep 4 2005, 04:26 PM
QUOTE(elmo @ Sep 4 2005, 04:20 PM)
Is that dutch?! Coool! I understood the gist of it, which was quite weird

Same here! How odd
elmo
Sep 4 2005, 04:28 PM
Do you do german? I thought some of it looked like some german words? Or maybe it's sort of similar to english?!
Trebor
Sep 4 2005, 05:48 PM
QUOTE(elmo @ Sep 4 2005, 05:28 PM)
Do you do german? I thought some of it looked like some german words? Or maybe it's sort of similar to english?!
I've been told by a friend who lived in The Netherlands that Dutch is very similar to German but was changed so it is spelt phonetically (Ich --> Ik) etc.
The programs suggested so far sound very good (a couple seem a tad ambitious though

). Good luck with it.
Nocturne
Sep 4 2005, 06:47 PM
Yes, it is Dutch. It looks similar to German but the grammar and spelling rules are way different. I can understand German quite good when it is spoken but I can read it just a little and can hardly speak or write it. When I was in secondary school i found English and even French much easier than learning German.
Anyway I think I will look into the sight reading and the aural program idea. As an additional question: what features would you like to see in an Aural program?
mrbouffant
Sep 4 2005, 07:31 PM
Good luck! As a CS graduate with a musical bent, it's always good to hear like minded individuals working on projects like this..
One word of advice tho: use C sharp, VB.net is the devil's work...
elmo
Sep 4 2005, 07:33 PM
dictation! There are never any programmes with that on!
kenm
Sep 4 2005, 08:18 PM
When I was studying the piano part of the Brahms Violin Sonata No 1 in G, I wanted to keep under control the big accelerando over the last two pages of the first movement. Some of the most technically difficult music happens towards the end, so getting too fast is disastrous. What I needed was a metronome into which you could specify an accelerando, bar by bar. I owned a Psion organiser (since deceased) at the time, and thought it would be cool to write a program to do this, but gave up when I realised that the rather nice interpreted language they gave you for it lacked a sufficiently fine time base: you really need something with, at largest, milli-second resolution. I have a very cheap, fixed function, personal digital assistant at present, and don't know what facilities are available on the more sophisticated ones, though I believe some of them do run a sort of cut-down Windows. The basic facilities of a metronome must include at least two different sorts of click, to differentiate first beats from subsidiary ones. One of the ones I used to own had three sorts, so that you could ask for beats to be divided; this further enlarged an already large range (from 32 to 255 beats per minute, IIRC) of speeds. To complete the design, you would have to consider the user interface for mapping out a movement, and decide how complicated the accelerando and ritardando functions should be. Clearly you specify number of beats and starting and finishing speeds, but might also consider whether the variation should be only linear (and if so whether this refers to speed or to interval between beats) or whether to allow polynomial functions.
Ordinary Dutch is half way between German and English for vocabulary, but nearer English for grammar (thank goodness!). I can hear some Dutch influence on Geordie pronunciation, which is not surprising when you consider how, before about 1860, it must have been much easier to get from Newcastle-upon-Tyne to Rotterdam than to, say, Birmingham. When we lived in the Netherlands, I was told that Fries was very like Scottish dialect. However, one influence on Nocturne's web site could be that Dutch words for computing concepts are usually straight imports from English (unlike French, in which this is much deprecated by the linguistic authorities). My Dutch assistant (who was also fluent in Italian and French, and claimed he could read most of a Danish newspaper) used to reckon that he would sometimes discuss computing with a Dutch colleague entirely in English, because doing it in Dutch would only result in a mixture with lots of English in it.