Psychosynth 0.3.0 is out!

Hello mates, I am proud to announce the first release of GNU Psychosynth made from Berlin, this such an amazing city for anybody interested in electronic music! Go ahead and…

Download GNU Psychosynth 0.3.0

Among the changes, it includes:

  • Passive OSC support such that you can control it from your hardware, scripts and other music programs. The OSC API is documented here.
  • Now compiles with GCC 4.7 too.
  • Now compiles with latest Ogre and CEGUI releases, making it possible to get Debian and Ubuntu packages working back soon.
  • High latency problem in ALSA fixed.
  • No longer crashes when changing audio settings.
  • All sorts of minor fixes.

I hope you like it!

We are at the Campus Party Milenio and NorCal Noisefest

We are at the Campus Party Milenio and have been selected for the best projects final, and we will make a 5 minutes presentation on Saturday 15th October. If you are around Granada and want to meet me and get to know more about this project I will be wandering around here. And remember that the 15th of October there is a global demonstration for social change.

Also, modular synth sound/noise artist Robert Walthall, a.k.a. One Infinite Loop will be using GNU Psychosynth in his performance at the NorCal Noisefest, a great chance to see the program live!

OSC interface documented and improved

Last week I met Miguel, the creator of Tangiblex and played a bit with his super-cool prototype. We also discussed and elaborated an informal roadmap on how we could get it to use GNU Pasychosynth as sound engine, and, later, also graphica interface layer. One of the first steps is to improve and document our OSC interface, something that is now almost ready.

The two mayor enhacements to our OSC interface is that now Psychosynth can be controlled via OSC passively — before, it forced you to use a stateful interface that is too much for small controllers — and that most things are now identified by strings instead of ephemeral numerical indexes. These changes are already pushed in trunk and will be included in a new release soon.

But most importantly, the OSC interface is fully documented, so you can create your own applications using it. Feel free to contact us if you do so and we will publicize your app here!

Master’s thesis and new release!

As previous posts announce, latest developments were driven by my Master’s Thesis held in the University of Granada. Last week I defended it and now I am, officially, a software engineer :-) The document is written in English; it is the best description available of all the new core refactoring and an interesting read if you want to contribute to the project.

Download Master’s thesis

Also, a new release was made including lastest advancements in the core library and some small user level improvements and fixes. You can download it here.

Changelog for Psychosynth 0.2.1

  • Now real-time priority is properly acquired for the audio
    thread in POSIX systems whenever possible.
  • New modular synthesis engine included in the framework &emdash; not
    yet used by the UI, providing:

    • Hierarchical patches. One can have a full patch inside one
      node that may be later store and or loaded from the hard drive.
    • Any kind of signal can be processed now.
    • Multiple output and input ports can coexist.
    • Plug-in system is much easier to implement on top of the new
  • New code uses some new C++0x features implemented in new
    compilers only. With this release, GNU Psychosynth requires GCC
    4.6 to compile.

Psychosynth 0.2.0 released!

By the end of March all the new sound processing code was integrated in the library. Last April 5th (my birthday!) it was documented in the thesis document. So, it is definitely the time to make a new release, Pscyhosynth 0.2.0 is out! You can get it in the download section.

Users will not find much new in this release (changelog at the end of this post) but there is a lot of work from the development point of view. Programmers interested in the new library should take a look at the third chapter of the master thesis document. Remember that this is a draft so expect lies, inaccuracies and horrible grammar and spelling mistakes :)

Other things that has happened since last post: MiguelV contacted us to join efforts in the future in building tangible instruments. He has a very nice video tutorials on building fiducial based instruments here. It is one of the most polished home-made Reactables I have seen on the net! Also, remember that the collaborative roadmap is up and running. People are already voting and it seems that interfacing with audio input and MIDI are the most desired features, we will definitely pay special attention to that!

As for the near future the development will slow down for a couple of weeks (I am very busy with other stuff), but the next three months will be very active. Keep updated.

Changelog GNU Psychosynth 0.2.0

  • New audio processing and I/O subsystem based on template programming for generic yet efficient sound signals.
  • The extreme latency when using ALSA bug seems to be fixed in some cases.
  • No longer depend on libvorbis, libsndfile can now handle ogg and flac files too.
  • No longer depend on libsigc++, using boost::signals which, which is a bit slower but neglibe and this simplifies the dependencies.
  • The mouse wheel now scrolls in the object selector.
  • The object selector no longer lets mouse clicks pass through.
  • Backwards reproducing a sample works a bit better now too.
  • Some new niceties in the framework base layer, including some experiments on applying the C3 class linearisation algorithm in raw C++.
  • C++0x features are being used in the code. For GCC, this means version 4.5 shall be used. We doubt it will compile with any other compiler (maybe latest VS), but users are welcomed to try and report.
  • For this same reason, Boost.Threads is no longer a dependency, we use STL threads instead.