Hope this isn’t too specialized/OT…
I’m looking basically for “lead sheets” [notes, key, harmony] preferably in MusicXML format. I did find an archived version of the old Wikifonia database (http://www.synthzone.com/files/Wikifonia/Wikifonia.zip) as well as a slightly smaller set with the chord/key features already extracted from the MusicXML, following the paper: https://arxiv.org/pdf/1712.01011.pdf at location http://marg.snu.ac.kr/chord_generation/.
Some context: my goal is to build real-time key/mode identification (mainly Greek modes) as well as a basic harmony tracker (just core triads: major, minor, diminished, augmented, suspensions…).
The Wikifonia source represents a modest amount of data (~5000 files), more than enough for Bayesian methods (e.g. https://www.microsoft.com/en-us/research/project/mysong-automatic-accompaniment-vocal-melodies/) but I fear not enough for really effective deep learning approaches, which is ultimately what interests me. So if anyone has connections in the MIR community and knows of other “lead sheet” type sources it would help!!! I’m happy to share the results of any code or externals I’ve developed thus far [as soon as I do a badly needed cleanup]
I’m NOT looking to create a full auto-accompaniment system, least of all a “virtual Bach” etc. because that in the end would be boring, particularly so in the sense that simulations always fall short.
My actual goal [and this is obviously a personal project] is to incorporate key and harmonic progression as contextual variables in a mix/match constraint programming environment that allows a sequence to be morphed in various ways to accompany another sequence. If one of the sequences is “played” (on a keyboard, grid etc.) this sets up an interactive environment where one reshapes the second sequence within certain harmonic/voice leading/contrapuntal “rules” – which can certainly be fictional [think a very general kind of arpeggiator].
This follows exactly along the lines of what I was discussing in the “definition of music” thread, to suspend the truth-claims of theoretical/definitional elements [in this case very traditional, Western ones] and treat them instead as material to be mutated/recombined within the physicality of the interface. Basically a fully embodied and exteriorized, musi-fictional roleplaying environment.
Of course there’s no reason that one operator needs to be a human and the other machine, any combination is possible and more interesting things happen with actor-networks arranged in very complex chains. It’s all about what kinds of crazy structures emerge.
Traditional, anthropocentric notions of “composition” and “performance” disappear [nothing exists as “score”, as representation or preconceived idea; there’s also nothing that a performer can think in advance to express] and are replaced by a process of individuation, from which actualizations (recordings/renditions) are only “snapshots” – the process is always unfolding and never quite completes itself.
[prior work: A few months ago I created a key/mode identifier based on a probabilistic interpretation of the Krumhansl/Kessler algorithm, and tried to extend it to all Greek modes, but it doesn’t work quite well enough (still too much latency) so I don’t use it that often. I fall back to the simpler interactive/reharmonizing transposers/arpeggiators. I think for what I do, embedding an intermediate layer of structure (harmonic progression) would somehow constrain possibilities in such a way that high-level structures (key/mode modulations etc.) would become more identifiable. But I’m still deciding on the best machine learning approach, which depends on the amount of data that is actually available.]