JSON/XML

8 posts / 0 new
Last post
xhevahir's picture
xhevahir
Offline
Last seen 6 months 3 weeks ago

JSON/XML

In https://users.cognitone.com/topic/open-synfire-plugin-development it was mentioned that a feature was in planning to allow export and import of phrase data as XML or JSON. Is that still planned? It would be very useful.

andre's picture
andre
Offline
Last seen 6 days 8 hours ago

Yes, this is still on our road map. 

I however doubt there will be a lot of third party tools available soon that can import and export these files. If you can code yourself, you can do unlimited cool things, of course.

xhevahir's picture
xhevahir
Offline
Last seen 6 months 3 weeks ago

Cool, that's good to hear. I was thinking of using the music21 library in Python to do things like augmentation/diminution, deletion/embellishment, etc. of motifs.

HiEnergy's picture
HiEnergy
Offline
Last seen 4 weeks 3 hours ago

I'd love to see an interfacing layer between Synfire and music21.

Any plans for doing that?

andre's picture
andre
Offline
Last seen 6 days 8 hours ago

Can you describe that interface and how you want to use it?

HiEnergy's picture
HiEnergy
Offline
Last seen 4 weeks 3 hours ago

music21 is a library for analyzing and generating music. It's written in Python 3, can import and export music in many formats (MIDI, ABC, Lilypond and countless others). It comes with a large corpus of musical works from many epochs and genres  for analyzing, recombination and creation of new music using machine-learning assisted approaches.

Among the things I've tried myself using music21 are generation of rhythm, melody (weighted random walk) and harmony (Neo-Riemannian analysis).

Those that I've done with quick&dirty hacking resulting in some short code snippets; thoughtful development should yield far more advanced results.

Common properties are e.g. that both music21 as well as Synfire handle musical attributes like harmony, scales and rhythm which can be processed separately.

They still have a different approach in that music21 doesn't know a concept similar to Synfire's Figures as well as Symbols although in music21 pitches can be viewed as steps relative to a given scale, the same goes for chords.

An interface layer could handle music21 Stream objects by importing a part, a track, a container or an arrangement from a music21 Stream object (a Stream can contain lots of information which have to be inferred when importing MIDI) or outputting music into a Stream for further processing by music21, keeping attributes that MIDI export will lose (like e.g. harmony information).

This might allow for new ways of analyzing and generating music.

Sorry for my quite lengthy and unordered brainstorming fit.

andre's picture
andre
Offline
Last seen 6 days 8 hours ago

Sorry for my quite lengthy and unordered brainstorming fit

Many cool things started with a lengthy and unordered brainstorming ;-)

Thanks.

Alpho's picture
Alpho
Offline
Last seen 1 month 1 week ago

I like to mention another free analysis program "jSymbolic", Author C.McKay. Purpose: Extracting features from symbolic music representations.

http://jmir.sourceforge.net/manuals/jSymbolic_manual/home.html   It has MANY features for analysis and comparison of chracteristics of music, styles, composers etc.   And it has a graphical interface:   jsymbolic_screen_shot.jpg   On the site you find a lot of (scientific) documentation.
Log in or register to post comments

Scholarly Lite is a free theme, contributed to the Drupal Community by More than Themes.