[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Denemo-devel] Midi import
From: |
Jeremiah Benham |
Subject: |
Re: [Denemo-devel] Midi import |
Date: |
Mon, 4 May 2009 13:35:32 -0500 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
On Mon, May 04, 2009 at 06:09:26PM +0200, Nils Gey wrote:
> I wonder on which point our midi-import breaks. Is is the reading of
> midifiles or is the conversion to Denemos xml format?
I don't know. I would need a midi file that causes a crash to test out why. It
could be many things. importMidi needs alot of work. I suspect a couple of
reasons. One is lack of quantization. Denemo does not yet know how to deal with
human recorded midi. It can easily input sequencer created midi because it is
already quantized. In addition denemo does not seperate voices when importing.
It seperates tracks but not simultaneous voices. As far as I know midi files
don't keep track of voices. It only keeps track of when a note was turned on
and when it was turned off. There would need to be something in denemo to be
able to detect overlapping notes and create a seperate voice for that. Then
this has to filter this stream of note on/off and decide which notes overlap
and how to organize the overlapping into voices or different staves. The fact
that there is no real documented api for denemo makes it harder. At one time I
was working on creating doxygen comments on many of the many of the commonly
used functions but I guess I became focused on other things.
>
> I remember many people wished for proper import.
I have been toying around with using libsmf to help out the midi import. I am
using libsmf as an attempt to make things cleaner, prettier, easier to read and
maintain. At the moment it is not really adding any functionalitly. There was
anouther library I found a while back that may be usefull but it is written in
c++. I believe it was tse3. I believe it is abandandoned though and I don't
know c++ as well as I know c. So this is why I am toying with the idea of
following the libsmf and see if we can use it.
Jeremiah
> Nils
>
>
>
> _______________________________________________
> Denemo-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/denemo-devel