[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Denemo-devel] Denemo-feedback
From: |
Richard Shann |
Subject: |
Re: [Denemo-devel] Denemo-feedback |
Date: |
Wed, 04 Dec 2013 09:26:07 +0000 |
On Wed, 2013-12-04 at 08:23 +0100, Johan Vromans wrote:
> Richard Shann <address@hidden> writes:
>
> > Right now I have a new entry option nearly complete - playing on a MIDI
> > keyboard and then entering the rhythm.
>
> By hitting a MIDI keyboard key in the desired rhythm?
Well, that is what is interesting: if you played in on a MIDI keyboard
in perfect rhythm then you would be able to hit the "accept" key to
accept the rhythm Denemo has computed. Indeed, if it was going to be
perfect, you wouldn't need any second step, you could just go straight
on to adding non-music features - repeat bar lines, rehearsal marks or
WHY.
What happens in practice is that the rhythm computed from your playing
is full of "errors" and an artificial intelligence (AI) step is needed
to get close to something that would be acceptable. (It has to be near
perfect to make it worth giving to the user to check over, as fixing
mistakes is far more costly than playing in the music).
At the moment this AI step is the simplest possible, it goes through the
durations that you played assigning them to the nearest note lengths
using only whole-note ....1/256th note and dotted versions of them (no
triplet values have been entered in the table of durations).
There are then two ways to go:
Write some Scheme procedures to work out what the user likely
wants, asking for the user to intervene where necessary
Let the user start typing in the actual durations (on the
numeric keypad) and "learn" from the first few what the likely
durations of the succeeding notes are. So, once you have covered
the rhythmic variety that you have in the passage, you would be
able to go over to just hitting Return to accept Denemo's idea
of the rhythm. This could include stuff like staccato markings,
so that once you had shown it what you mean by a certain
duration it could guess between say, a quarter note, a staccato
quarter note and an eighth note followed by eighth note rest.
At the moment, you can type in the duration on the numeric keypad or hit
Return to accept the suggested duration. The note is played as you do
this, so you can actually hear the piece as you go through it if you
keep time. You have to enter rests, staccato markings etc. yourself.
I will need to gain more experience of this system before deciding where
to go next. The stuff is in Denemo's git now though, if folk like to
experiment. The table of durations and the decision calculation using it
is not currently available to Scheme, but if someone with Scheme wants
to start experimenting it could be made available without problem, just
ask.
The system also works with imported MIDI files, which can have perfect
rhythm if machine generated.
Richard
Re: [Denemo-devel] Denemo-feedback, David Kastrup, 2013/12/18