Abstract

Technology nowadays takes an increasing part of “creativity” in live music software such as the OMax-ImproteK-Djazz improvisation environment. Specifically, Djazz implements techniques for indexing and creating improvisations using a given chord progression. It relies on a database that we call a dictionary, storing musical sequences (audio or MIDI) associated with known chord changes. We define an improvisation on a given chord progression x as a sequence obtained by concatenating musical phrases identified with factors of x that can be found in the dictionary. Given a query sequence x and a dictionary D, we present an algorithm that finds an improvisation on x with respect to D. We use the suffix tree data structure to index D and then produce a graph formulation of the problem in order to find a suitable improvisation in linear time, with respect to the length of x.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.