< Back to IRCAM Forum

Quantization problems with polys

Does anyone have any advice on quantizing and concatting polys? I am frequently running into problems with this, of a few varieties: If I’m trying to quantize a multiseq (I usually put omquantify in a subpatch and run it through mapcar) it’s still extremely unpredictable which ones will go just fine, and which ones will get messed up. Surprisingly, the quantization seems to work better on multiseqs with a lot of complex rhythms, but it often seems to have a problem with straight eights and sixteenths, even if you set the maximum subdivision extremely low. I recently finished a symphonic piece and sometimes I just ended up exporting the fragments with simple rhythms to logic.

Another issue, which might be a bug (?) is that when I concat polys, occasionally things get moved around, and I haven’t figured out a way to avoid this. I made sure to put fillers at the end of all the polys so they would have an equal number of measures, but that didn’t help. There are just some polys that seem to be resistant to being concatted no matter what.

In any event, I had a lot more trouble with this a few years ago and it seems that the quantization algorithms have been improved upon, but I wonder if anyone else has this problem?

hello michal,
because of the same kind of problems you’ve found i ended programming my own quantizer to fit to my specific needs. i do it at the chordseq level, before any notation. i go then into a voice or poly, only after quantizing chord- or multiseqs. i lately tend to avoid voice and poly, so i export to midi for and then open in finale or logic, which has its problems as well.
and to avoid some inconsistencies when concatting polys, i finally decided to put them in a maquette. i had better results that way.
cheers,
perti

Yeah, if I quantize something in logic, I can be confident that it will go into the notation program accurately, but it’s only for eighths/sixteenths or triplets, and there’s still the microtone problem. But have you tried Noteability pro? It’s a great program and it reads OM exports perfectly, so there’s always an option to correct things by hand there. The only problem is, the interface is ridiculously complicated, and the “export xml” button doesn’t seem to do anything at all, and the “export to OM” function needs a lot of work.

Hi Michal,

Actually, NoteAbility Pro imports and exports MusicXML just fine. I’m using the latest version of NAP (2.657) in macOS Mojave 10.14.5.

On the other hand, the OM NAP exchange format (.om) is no longer available.

All the best,
António

Hi Antonio, I don’t deny the possibility that you live in a different universe, or something, but in my universe:

I’m running OSX 10.11.06, and NAPro that was downloaded about a month ago, version 2.656. There are big problems with importing XML, the accuracy is extremely low, and when I try to export XML, literally nothing happens. I’ve tried to export XML about 10 different ways and it didn’t work.

However, the OM exchange format works just fine, you just need to open it up in a text file and copy-paste into NAPro. This is the only solution I’ve found for exporting 1/8 tones, with the partial exception that you can save them as separate channels and then implode them once in sibelius, but that’s really more trouble than it’s worth.

So, I’m not sure where you’ve got these facts from, but they directly contradict my empirical experience. :slight_smile: I am very much hoping they don’t do away with the OM exchange format, as it’s the only reliable way I’ve found to get things into NAPro (it’s true they discontinued OMNAP as a library, because it wasn’t necessary anymore, “save to NAPro” is a native feature (at least on OM 6.14, which I’m using).

The eighth tones have always been a huge headache, as Sibelius and the other big notation programs don’t see them on xml files exported from OM.

How vulgar and inappropriate of you, Michal. Why not try the latest version (2.657), and acknowledge that if you can’t import or export files in a given format, it isn’t available? Glad I could a help.

What are you talking about? Are you being facetious, or is the OM forum turning into a youtube comments section? I was merely pointing out that your facts seem to be completely incompatible with my observations. As a matter of fact, I just downloaded 2.657 (it doesn’t seem any different), and the OM import works just fine. I was about to check whether I can export xmls when I found your (delightful?) message.

Yes, still no xml export, as far as I can tell, neither from the “export XML” menu nor the “save to” menu.

Yes, I can see that there is a menu option - two of them, in fact - but as many times as I press it, the file fails to materialize. NAPro seems to be a bit wonky with exporting, the “save to PDF” option only makes one page, you have to go to “print” -> “save as PDF”, and the .om export shows up in OM completely distorted. But never mind, the import for .om files is completely flawless.

Have you checked your Documents folder, Michal? As a preset NoteAbility Pro exports to the Documents folder. You can change that preset at the bottom of the Preferences’ Text/Fonts menu (I’ve attached a screenshot of the menu). The export works fine on my system (I’ve attached the output file from NAP). You can try exporting your OM Score-object (Voice or Poly) as a MusicXML file and then opening it with NAP, actually that’s the reason I updated and restarted using NAP again. I’m on OM 6.15.


Empty Score.xml (7.8 KB)

I did check in my documents folder, I made sure to choose “save to desktop” just to be sure. I suspect it may have something to do with the fact that I’m using a relatively old version of OSX (6.11), and maybe NAP doesn’t like it.

As for the XML export, I just finished a big symphonic piece with a lot of complicated micropolyphony in 16 voices. If I wrote it unmetered, it might not be so complicated, but omquantify made it look pretty intricate (although in that case, it was accurate - the only thing it really seems to have problems with are 8ths and 16ths).

Anyway, when I imported that as an XML to NAP, the page was a huge cluttered mess with a million overlapping noes, a completely unreadable disaster. But, when I reformatted the page, it started to look better, until NAP got confused and started moving things around arbitrarily, and stems started twisting around onto themselves, there was not way to work with it at all.

But, I imported it as an .om file, and it worked perfectly, everything was where it was supposed to be, the formatting was nice and readable, and the microtones were all there. It was the first time in several years of using OM that I could finally get the cool things I created in OM out into the real world.

It would be really nice to be able to export xml’s (or .om’s) back to OM, since it become increasingly hard to edit anything on a small scale in OM the more notes it has. But for this I will probably have to update to a newer version of OSX.

Given the differences in OS, it’s no wonder we get such disparate results. The only alternative that works for me is, if you have Max 7 or 8, the bach Library, it is great in reproducing the pitch and rhythmic content from OM MusicXML exports (the MusicXML export works better for me than the OM bach exchange format, especially for the reproduction of the rhythmic content), and you can go back and forth between bach and OM quite easily.

Yes, do you recommend max for score export? I have to admit I’ve tried it out a couple of times and mostly ended up too frustrated with it to continue. Clearly, they put a lot of effort into making the gui more user-friendly and reliable, but this also ends up being quite taxing on my puny processor in a way that OM isn’t. I tried out Max 8 a few weeks ago and gave up after three or four crashes.

But I have thought about using it just for exporting OM scores, maybe I will look into it again. I imagine there is still a problem with exporting 1/8 tones to a notation program other than NAPro (maybe that’s been solved with finale? I noticed OM has an export to ETF function now, but I can’t afford finale), and NAPro has even more options for interfacing with max files than OM files (Qlist? Detonate? This is going to mean more long afternoons with the user manual).

Hi Michal,

I’d definitely recommend anyone to add Max MSP plus bach to their composition toolkit, especially if he is an experienced user of OpenMusic. Agostini and Ghisi (the creators of the bach library) seem to have a lot of experience with OpenMusic (they even have a whole tutorial on “translating” OpenMusic patches to bach patches, with examples). Besides, if you have a specific problem with a given score exported from OM to bach you can always post on the bach Forum, in which they’ve remained active.

On Music engraving software… Have you tried MuseScore 3? It’s free, I’ve never had any trouble with pitch or rhythmic content from OM MusicXML exports with it. The only problem I have with it is a problem (caused by OM) with redundant clefs, keys and time sigs, which is annoying but still manageable.

Another solution might be Haddad’s omlily OpenMusic library and LilyPond, which outputs scores as PDF files. It works great, but LilyPond is very different from every other Music engraving software.

These are the few free tools I can come up and have experience with which, in my experience, work the best with OpenMusic exports.

All the best,
António

Hi Antonio, thanks for the recommendation. I downloaded Max 7 with the hope that it was a bit less processor-intensive than 8, but it still only just barely runs on my computer. It looks like there is a lot of interesting stuff in there, but I was surprised to find that in terms of compositional processes, the Cage and Bach libraries seemed to offer a lot less than OM does. I’ll admit I don’t really understand Max, and I’m really only starting to grasp the possibilities in OM after nearly 3 years of regular use. From what I do understand, it’s more focused on things you can do in the audio domain, which, while interesting, isn’t really my field.

So, to make a short story long, I am really quite happy with the Noteability/OM combo for notation and I don’t really need a replacement, as long as Noteability doesn’t drop the OM format as you’ve hinted, but I don’t see any evidence of that. Musescore is a great program - definitely the one I would use if I just wanted to sketch something out in 12 tone ET. My wife is a conductor and she managed to write out all of the parts for a Vivaldi concerto in one afternoon. it’s incomparably easier to use than a monster like sibelius - but have you been able to export 1/8 tones to it? It’s true, the new musescore has a lot of support for microtones, but you would still have to enter them manually, as it only seems to read quarter tones from an xml file.

The same goes for OMLily: if there is a way to make it put eighth tones in the score, I haven’t delved that deeply into it. There is really only so much time in a day and I don’t want to spend my life learning one programming language after another. I’ll make an exception for OM, because it’s just such a great program, and anyway lisp is interesting in its own right as an intellectual/aesthetic monument.

At any rate, coming back to my original question: quantizing and concatting polys. It doesn’t really matter how good the notation program is, if the violas and cellos get separated from the violins and slide back two measures, or if 16th notes randomly turn into quintuplets. Certainly, I can think of a lot of ways to work around this problem, but I am stumped as to why it even happens (Other than “Quantization is really complicated. Programming is really complicated.”)

Hi Michal,

I didn’t mean to imply that you can replace OpenMusic with Max/MSP+bach, far from it. I think of it as an extension, not a substitute. It extends my composition toolkit by giving me access to Max/MSP in a Max/MSP environment in a very OM-friendly way. Max is much richer than you seem to believe.

You’re right about limitations in Temperament, as far as I can see it is a universal in music engraving software that you’re limited “out of the box” to 24 EDO. Beyond that, it’s up to you to customise it, I know of no other way. Only NAP has it “out of the box” (as does bach for 12, 24, 48 EDO.)

To clear things up, I maintain that you can’t import or export files in the OM NAP exchange format, you can however, like you described, copy-paste the text from a .om file and get the content partially into NAP (it isn’t flawless though, I can’t get time signatures or tempi doing that, for example.) Too bad MusicXML import or export doesn’t work for NAP on your system, it makes everything so much easier.

As to your other question, I can’t say anything about it, other than that it is indeed perplexing, and possibly a bug of some sort. As I’ve never experienced it, I have no remedies to propose.

All the best,
António

Hi Antonio,

I believe you that Max has a lot of interesting functionalities that I can’t even imagine. Maybe one day, when I am less focused on what I am trying to do at the moment (write several instrumental pieces on fairly short notice for ensembles that have requested them, and also my day job), I will take a closer look at max, but for the time being, it’s processor-heaviness moots my getting familiar with it. I did take a look at the walkthrough of Bach and cage, and the possibilities looked pretty paltry compared to OM in terms of planning and executing various processes in the x/y time domain (aka pitch/frequency and time/rhythm). Maybe I didn’t have a close enough look. I suspect that I could keep myself pretty busy for a couple of years with just the standard libs plus OMTristan and OMCombine. (Bach once said something about how, if you’re ever short of ideas, you just need to read leibniz).

I’m curious what functionalities you like in Max, because aside from lots of interesting audio-based stuff, I didn’t see all that much I liked. Cage promised a comprehensive library of 20th century compositional techniques (what? no 21st century?), but as I said, it seemed kind of thin to me in that regard.

I was in contact with the person who makes NAPro and he’s not discontinuing the NAPro format. It seems like a distinction without a difference that copying and pasting is the physical thing you have to do to import om files. I haven’t had any problem with time signatures, and I didn’t try it with tempi. As far as the notes being in the right place, and the right duration and the right pitch, that’s pretty huge for me. :slight_smile:

I’ve been doing some quantizing today, and I came to a few conclusions: a few years ago, Jean Bresson or maybe Karim suggested that breaking things up into smaller pieces for quantization is the way to go, and while this may work sometimes, I’m finding that keeping everything in multiseq and then doing one big dump into a poly at the end is working better.

Another thing I’ve found is that it’s important to have the notes legato. I’m not sure what you would do if you really needed short durations with rests between them. I was having a lot of trouble with one particular piece today (a whole movement, as per my recommendation above), until I put it in an xmulti and ran “adjust durations/system”, which is basically the same as setting legato to 100. To get rid of very long durations, I selected all notes over 250 ms and clipped them. I also put in a lot of time signature changes, and it came out perfectly.

I am still trying to get my piece in 16ths to come out without quintuplets, but the Xmulti might help there too. (The Xmulti is really a great addition to OM, even if it’s a bit buggy and, for whatever reason, not mentioned anywhere on the forum page. In addition to its other features, it makes it really easy to do things like cross synthesis.)

Well, I look forward to hearing your personal best-of for max, maybe I will gain some enthusiasm for it. (Strangely, for all its similarity to OM, it’s just different enough that it seems like everything would have to be learned from scratch. I couldn’t even figure out how to use the bach roll, or what a bang is for (it’s like an evaluation, I guess, but different?).

Cheers,
Michal

Hi Michal,

Like OpenMusic, Max is a visual programming language, and equally powerful. And like you I love OMTristan, that’s why I debugged and revamped it back in the day (that’s how OMTristan 3.2 came to be.) Among other favorites are the native Dn, Stroppa’s OMChroma, and (the now deceased) Nauert’s OMPitchfield. Just to say that I pretty much understand what you mean, and I agree.

You may discount semantics, but the point is that now you know what I mean (and I’m just appealing to common usage, nothing fancy.)

I can’t muster a Max best-of, it would take more time than I have available for this. It’s a pretty work-intensive period for me, right now. Anyway, here is the crux… Do you need it? Probably not. Is it great to have in my composition toolkit? Yes.

All the best,
António

I’m not discounting semantics, but at the end of the day, there is a dedicated format for bringing scores from OM into Napro. I mean, yes, it’s weird and idiosyncratic. Your intimation that it’ being discontinued filled me with despair, because one of my biggest frustrations over the past couple of years has been the continuous problem of actually getting things out of OM and into the real world. I finally found a solution that seems to work without too many compromises and annoyances, so I’m very much hoping that it will stay that way a while. (This is one of the reasons I don’t really do electronic music anymore - the technology changes too fast, so I decided to restrict my focus on live instruments.)

Anyway, big respect for being one of the people responsible for OMTristan. That’s pretty much been my hobby for the past three years or so.

And actually you gave me a very good idea, I looked at pitchfield a long time ago before I knew what things like lambda patches and test functions were, now I see it may well be a solution to a few backburner issues I’ve had simmering for the past few months…