Is a new graphics based synthesis app really needed?

After all, there’s already at least the following  :







-Photosounder (thanks ScottAC for reminding me about that 😉 )

Well. I’ve tried them all and find them all disappointing/unsuitable for various reasons. So much as with HourGlass, the already existing offerings just don’t suit my personal wishes how such an app should work.

The goal of the “Graphical synthesizer” app project would be to modernize all the good parts of the UPIC system designed by the composer Iannis Xenakis. (Guess who I got my nickname from…) The original incarnations of the system obviously had all kinds of flaws and limitations which don’t need to be reimplemented. (Like limits in the number of objects that the scores can contain or the option to only use terribly aliased(*) sounding oscillators.)

So this isn’t going to be a project to exactly emulate what the UPIC did, but to consider carefully what it did and continue in that same spirit. I don’t need nonsense like controlling video or other media or reinvent the concept of the musical timeline, which is what the Iannix people have done. Built-in sound generation is obviously a must, though sending OSC messages out of the graphical score will also very likely be implemented. (In fact the current plan at the moment is to implement OSC messages playback out of the graphical score and use something like Vesa Norilo’s Kronos or CSound to generate the test sounds.)

This thing will be a side-project of a sorts for now, so don’t expect anything concrete to play with for a few months at least. I will also continue working on HourGlass, a new build might appear within the next 2 weeks or so.

(*) Aliasing can make a good sound but only when it’s optional.

This entry was posted in Uncategorized. Bookmark the permalink.

12 Responses to Is a new graphics based synthesis app really needed?

  1. ScottAC says:

    Hmm, I have not seen most of these accept MetaSynthis which is fairly pricey?
    I’m looking into the others. Photo sounder is nice and Image Line has a version of Harmless coming with image synthesis ability. Hmm. From HourGlass? Yes! Why not? I say the more the merrier but I’m not the programmer. I did get through the first two chapters of The Waite Group’s C++ Primer Plus third Edition and I think I got the basic idea. I taught my self the “Hello World” program. I’d love to finish reading it. Any other reading you’d suggest for the beginner ?
    Thanks, Scott 😀

    • xenakios says:

      Metasynth is only available for Macintosh OS-X and the image synth part of it hasn’t been seriously overhauled since the app was released over 10 years ago. It also belongs in the category of “pixel interpretation based image synths”, like most of the apps I listed, with the exception of Iannix and High-C. The pixel/bitmap method has some problems such as that operations like transforming the drawn shapes will deteriorate the original data. It does admittedly also allow things that are not possible (easily) with vector based objects, such as using photos as source material or transforming the images with techniques familiar from image editing programs. (Such as blurring them etc) Anyway, if people think this is what they want to do, they can use any of the already existing apps…

      I can’t really say I would have read any particular book that would have made programming “click” for me. It’s mostly been trial and error kind of stuff for me for the past 7 years or so…I have read countless articles and forum posts at the internet as well as discussed these things in IRC. The problem with the beginner books is that they deal with the kind of programming (command line programs) that bears little similarity to interesting programs in real life, that is GUI applications/plugins. Of course C and C++ have tons of concepts that one should be familiar with before trying elaborate GUI applications…

  2. Just yesterday I spent an hour looking for image to midi translators.

    If you are open to thoughts, I could really use a vector type tool where the output would could be converted to midi notes and cc’s and pitch bend for the various dimensions of the image.

    The way I envision this, the rhythm could be interactively derived from midi input and files, something like a groove map, so that shapes could be subdivided or placed expressively either by midi input or via a file and interactively effect the graphic representation.

    I have used coagula, meta synth, and photosounder. With all of them my output tends to be ambient blurs or the most simplistic, inexpressive graphic rhythmic gating. The sound quality with these tools is the least of my concerns.

    As for OSC, I really want to use it, and developers love touting its advantages, but its been a decade and there is almost no decent implementation of it anywhere (especially in our little Reaper).

    When OSC is implemented it is usually converted to automation instead of midi. This is great for resolution, but is terrible in terms of compositional fluidity of cutting, editing, working with takes, storing in the project bay, processing with vst’s and js scripts and transferring between different applications. For the needs of a composer, I can’t understand how resolution trumps all of these necessities in the minds of OSC proponents.

    • xenakios says:

      Thanks for your ideas and thoughts!

      Unfortunately I do think this new programming project will have MIDI related things at the end of the list of considerations. 😦 MIDI just isn’t conducive to the kinds of ideas about continuums of parameters and so on I would like to explore.

      I agree that OSC appears to be something a vocal minority of audio software users demand but that in the end might not amount to much. I suspect for example that in Reaper it will simply be a new way to remote control parameters of the mixer and plugins. And they’ll probably throw in some limitation too, like ignoring the ability to control track send levels… 😉 I don’t have high hopes there will for example be any way to sequence and edit OSC information and send that out to other apps or plugins hosted inside Reaper. Of course not having high hopes increases the likelyhood of being surprised happily by Cockos eventually.

      At the moment it looks like to me OSC is something a few people with iPads and similar want so they can use those devices to do some simple remote controlling. That use case of course is as valid as anything else, but I’d hardly call it very (r)evolutionary in terms of music composition techniques.

      In spite of those criticisms for OSC or rather the uses people have thought for it, I still think it’s probably the sanest choice for external communication for this new planned app of mine. A completely proprietary protocol wouldn’t make sense as I’d only be compatible with my own softwares. (And I certainly don’t have delusions people would want to write plugins or other software especially to support some tiny niche app written by me.) MIDI isn’t suitable because it’d mean too many compromises in what is possible cleanly or at all.

      • Thanks for the reply. I totally understand using OSC as the primary communication for what your aims seem to be.

        My interest in midi is more on the input side; crafting the placement of sound events with some degree of physicality even if those events are continuous on subprimary structural levels. Even OSC input is workable through PD if its worthwhile.

        Do you think the rhythmic / performative aspects will find their way in?

        I’m by no means interested in making techno, but if I had to venture a guess as to why none of the listed apps ever gained real popularity it would be because of their total lack of rhythmic functionality.

        You mention not wanting to recreate the limitations of the original UPIC systems and to me interactivity was a far more conspicuous limitation than aliasing.

  3. ScottAC says:

    Thanks for the great info, very helpfull indeed and hourglass is more then great!. I just bought you some coffee or a beer(depending on price of course ), if you drink that is, only 4 euro about $6 us, sorry it could not be more at the moment. Thanks again 😀 , ScottAC

  4. Tom says:

    I just discovered HourGlass. It really is quite unique and inspiring. Coool!
    I was especially surprised how the use of “smooth stairs” for the source position can create something close to rhythmic singing/rhyming from a spoken sentence. Brilliant!
    I will definitely dive deeper into this app!

    VST support looks great, I’m looking forward to that.

    Do you think it’s a lot of work to have a CPU-Meter in the Interface? With high fragment lengths I got weird sounds but I’m not sure if it’s CPU overload or a comb-like effect…

    One nice thing to add would be a way to have smooth points. While you have some really great segment ideas going, I miss a simple smooth curve where the points themself are smoothed, be it bezier or just a NURBS like interpolation.

    Could you give some more hints on the scripting language? I only found that one example on your old website and if I copy that, the interface is telling me: “Error in Code!”.
    Is there a list of available commands and the basic structures?
    Sorry if I’m missing something.

    One other thing that could be great: With most segment types you can change either density or strength with a left click and drag on the in-between point, but wouldn’t it be nice to have for instance the interval (for a sine) on the left click and drag and be able with a modifier key (like CTRL) to change the amplitude of the sine, so it would become a bit like smooth stairs. Same for things like the elastics etc.
    Again, sorry if I missed something.

    More sequence types I could imagine useful: Perlin Noise, Sample and Hold, Fractal Noise, again with amplitude and interval, offset/random seed and maybe Bias and Gain to further tweak the curves…

    And if there is more documentation anywhere, I’d be delighted to be directed that way 😉

    I hope you will continue to work on HourGlass!!!


    • xenakios says:

      Thanks for the comments Tom! Let me get back to you on the spesifics later. I can tell you though there’s unfortunately not much up to date documentation. The googlesite info is completely outdated and I guess I should remove that stuff from there…It’s a pity I haven’t yet written so many examples for the scripting system yet anywhere, but maybe I’ll get to doing that someday soon. Do some little video tutorial on Youtube and include some script program presets with HourGlass itself.

      I haven’t been working on HourGlass for a couple of weeks now but I guess I am ready to dig into it again.

  5. PPP says:

    If I would have any programming+signal processing skills, I would combine allready existing ideas into one ideal application:

    from Klingbeil’s SPEAR:
    – general idea of adding partials and controlling pitch (partial window)

    from Inkscape or Hourglass:
    – better curve/bezier tools for “partial-window” and “mseg-editor”
    – “pitch and volume path” – operations (smoothing, interpolation between different curve types/points, randomization etc.)

    from eg U-He’s Zebra 2 / Camel Audio Alchemy:
    – one multi segment envelope (MSEG) per every added partial to control it’s volume
    (click on a partial-path -> the right mseg wll be selected in a mseg-editor)
    – micro tonal tuning support

    frome Izotope’s Iris:
    – several layers with user defined partial window length and delay
    (eg. short layer as transient ~15ms + long layer as sustain ~2s + delayed ~15ms)
    would be much easier to create complex sounds without messing up the partial window then
    and the ability to change/clear indiviual parts/aspects of a sound on the fly
    (dividing a sound into time fractions and intro different frequency domains)
    – ability to play with a MIDI-keyboard + loop points (MSEGs automatically adapt )
    – either as a plugin or with a plugin capable mixer (like hourglass) to add a safety limiter, analyzer etc.

    One “partial window patch” per key and a basic draft of me is fine 😉

    Any news on this project?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s