I've read carefully your replies, and I've meditated them. Please notice that for me it's more easy to keep the note pitches instead flat them. The problem is where I should place them.
Regardings kurodo post and this:
dmitriyK wrote:Well, it looks like you took the attitude of "not every file can be imported ideally, so lets drop the idea at all"? Let's agree on occasional message "Importing failed"

Declare the limitations of importing procedure and everyone will be fine with it.
It's true I could do inverse engineering from an arpeggio and extract the phrase behind it as you suggest, if I know the chord that was playing it. It's a simple but not easy 3-variable equation. However, others with complex MIDI sequences the user could unknow the driving chord, or can use more notes than 8 in one octave. In such case the generated phrase would be wrong, or could not fit the phrase's octave. In such cases I should show the "import fail" message, which personally, I prefer to avoid.
kurodo wrote:Nora allows up to 8 notes in the Phrase option, so in theory it has potential to vertically separate poly riffs without loss. I don't think real pitch is important just vertical spacing.
If real pitch is not important then actually I know how to place the notes with the same 8-note and 5-octaves restrictions: everything outside them would be deleted. The problem (for both cases) is when someone imports a complex MIDI file. It even doesn't need to be complex. Let's see this example:
If you import it to Nora without the driving chord information it would have this form:
While it could seems satisfactory at first glance, you don't want that (I think) but only the first bar which is the phrase in itself. If you play the full phrase instead with the Cmaj, then the Amin, it wouldn't sound as original. It would only sound if you deleted the second bar.
This is a simple example, with 1bar/1chord. But usually the melodies are much difficult, and the driving chords can be something like this:
Imagine how would be the final melody! And how tedious would be writting in a popup window the chords that the melody is using.
dmitriyK wrote:
It is obvious that all the complexity and variability of music material cannot be fitted into 5oct/5note grid, but I still prefer good import of pre-prepared files than nothing (and importing rhythm only is not good since you have to re-do the harmony, which is so time-consuming that makes importing unneccesary, I can make the stuff from scratch). "A very limited amount" of these files is near 10000 in my case.
So, as I explained to kurodo, would you like having something like my first example I did with pictures?
dmitriyK wrote:Eh, what? I dont need absolute pitches, I'd love to import a melody in one drag, have it imported with +1/-3 accidentials, and hear it sounding in different keys by pressing the chords. Maybe I misundertand your question, so please rephrase.
You understood right. That would be what you would obtain with the method I explaned yesterday. A melody impoted with relative pitches with the following restrictions:
- The original melody could not have chord variations (you should manually delete/flat them from the original melody, OR from the final phrase).
- Every note that exceed the 8th inside an octave would be deleted. The maximum range would be 5 octaves, everything else would be deleted too.
The phrase octaves would be imported like this:
Notice that the relative note distance wouldnt be keeped without the chord information. I'm doing experiments into including chords in Nora, but it needs an huge amount of work yet. Once they're included I could offer a list of chords to select just one to import a phrase.
dmitriyK wrote:I am doing it anyway when preparing midi-files, and lots of midi-packs are key-labeled already.
What I was pointing is the fact that you must introduce them manually in Nora before doing the import.
dmitriyK wrote:
The way you describe is workable, but a little time&action-consuming. One-click operation (select notes > "place to anoter pattern" = new pattern with data) is much faster. If your software is about speed, any speedup of workflow should be good.
While this is correct and I can do it in a couple of hours I have a design problem. Where do you place the resultating sequence? If you are in pattern mode, I would place it in any free Pattern Editor's slot (only if there is one). But if I'm in the Playlist mode, where do you place it? At the end of the track?
dmitriyK wrote:Because in most cases the phrase consists of 4 bars, and splitting it to patterns is workable. The resulting patterns can be placed to any track, selectable on import. I mean, whithin import dialog there could be a selector of tracks, and the resulting patterns are placed there. I can move them manually anyway...
I'll think about it, but I'll avoid using an import dialog for this. It's better something based in the cut tool (Shift + Right mouse button). You will spent the same time setting up how to divide the sequence in the import dialog that simple doing shift + right click in the point you wish. It would need a consolidate action, tho.