summaryrefslogtreecommitdiff
path: root/muse2/muse/importmidi.cpp
diff options
context:
space:
mode:
authorFlorian Jung <flo@windfisch.org>2011-10-09 16:02:35 +0000
committerFlorian Jung <flo@windfisch.org>2011-10-09 16:02:35 +0000
commit9a4a4ee6fd5c2a73216240da912f7273aacaa11e (patch)
tree9f7b2aa792d292d45d0bc670a47e4d4329b92f6d /muse2/muse/importmidi.cpp
parent159a2b58fd28c7a00b9b723dcea77e6c2ec2e874 (diff)
recording and importing midi now works for new style drum tracks plus
fixes for old-style drum tracks
Diffstat (limited to 'muse2/muse/importmidi.cpp')
-rw-r--r--muse2/muse/importmidi.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/muse2/muse/importmidi.cpp b/muse2/muse/importmidi.cpp
index 593ddb79..90e8cecb 100644
--- a/muse2/muse/importmidi.cpp
+++ b/muse2/muse/importmidi.cpp
@@ -181,7 +181,8 @@ bool MusE::importMidi(const QString name, bool merge)
MusECore::MidiTrack* track = new MusECore::MidiTrack();
if ((*t)->isDrumTrack)
- track->setType(MusECore::Track::DRUM); //FINDMICHJETZT
+ track->setType(MusECore::Track::NEW_DRUM); //FINDMICHJETZT config option
+ //track->setType(MusECore::Track::DRUM);
track->setOutChannel(channel);
track->setOutPort(port);
@@ -200,15 +201,17 @@ bool MusE::importMidi(const QString name, bool merge)
// Hmm. buildMidiEventList already takes care of this.
// But it seems to work. How? Must test.
if (channel == 9 && MusEGlobal::song->mtype() != MT_UNKNOWN) {
- track->setType(MusECore::Track::DRUM); //FINDMICHJETZT
+ track->setType(MusECore::Track::NEW_DRUM); //FINDMICHJETZT config option
+ /*
+ track->setType(MusECore::Track::DRUM);
//
- // remap drum pitch with drumInmap
+ // remap drum pitch with drumOutmap
//
MusECore::EventList* tevents = track->events();
for (MusECore::iEvent i = tevents->begin(); i != tevents->end(); ++i) {
MusECore::Event ev = i->second;
if (ev.isNote()) {
- int pitch = MusEGlobal::drumInmap[ev.pitch()];
+ int pitch = MusEGlobal::drumOutmap[ev.pitch()];
ev.setPitch(pitch);
}
else
@@ -217,9 +220,10 @@ bool MusE::importMidi(const QString name, bool merge)
int ctl = ev.dataA();
MusECore::MidiController *mc = mport->drumController(ctl);
if(mc)
- ev.setA((ctl & ~0xff) | MusEGlobal::drumInmap[ctl & 0x7f]);
+ ev.setA((ctl & ~0xff) | MusEGlobal::drumOutmap[ctl & 0x7f]);
}
}
+ */
}
processTrack(track);