The former way of doing its own imports while "legal" was preventing code analysis on some IDEs. Music21 now imports its own modules individually. Music21 gives better introspection in more developer environments.Improvements in instrument names and lookup (Thanks Mark Gotham).Some superfluous natural signs no longer appear after running makeNotation makeAccidentals improvements throughout.The tree module is slightly better documented, for anyone who wants to work with insane speed (and complexity).
Individual notes in Chords can be styled more easily and robustly.mypy is now being run on a subset of the music21 code to ensure that our docs match our work. Slight incompatibility: 3/8 is default configured to one beat with two sub beats (like 6/8).
The stripTies method's "matchByPitch" setting is improved.MIDI and MusicXML import/export will create and use Unpitched and PercussionChord objects.
A decision on whether 3.8 or 3.9 will be the minimum version for music21 v8 will come later, depending on its release date we may also update policy somewhat and raise the minimum version to 3.9 during the v8 cycle.
Sign up for the music21list mailing list through Google Groups.Read the Frequently Asked Questions list.Get our latest news and updates at the music21 blog.With music21 once you (or anyone else) has written a program to solve a problem, that program can easily become a module to be adapted or built upon to solve dozens of similar (but not identical) problems. At the same time music21 tries to keep its code clear and make reusing existing code simple. Music21 builds on preexisting frameworks andĪnd MIDI but music21 uses an object-orientedįramework that makes it easier to handle complex data. That music21 is well-suited to solving, such asĬataloging the rhythms of a piece from most to (and throughout the documentation) you’ll find examples of more complicated problems Music21 package and in the sample problems page Of course, you are never limited to just using five lines to do tasks with