Besides working on the next big thing [Video preview of Jamoma 0.6], we are also improving the current Jamoma version in many ways, including usability.
Last year we have already seen the addition of Clippings for all the distro and UserLib modules.
With Jamoma 0.5.6.b7, we started to take advantage of the new usability features in Max6:
1. Autocompletion
Sometimes it is really hard to remember all the Jamoma externals and its attributes, or even to spell them correctly.
For allowing faster development of Jamoma modules, we started to implement autocompletion. At the moment, it works for the most frequently used externals. We will add this features for all externals in the next updates.
2. Gain and Mix widget
Hav you ever been confused which of the dials in a jamoma module is a gain dial and which dial is for dry/wet mixing? When you now click on either one of them, the menu will display the name of the dial and it's current value:
3. Tooltips
Have you ever wondered about the functionality of a specific numberbox in a Module?
Yes, you can take a look into the reference page, but that is not always convenient.
We now take advantage of Max6's toolbar. When you hover with the mouse over a GUI element, its description will be displayed at the bottom of the patcher:
The cool thing is that this also works for your existing private modules. Moreover, adding tooltips to existing modules doesn't requiere any extra work.
How is that possible? We now added some code to jcom.parameter and jcom.message. When a module is initialized, the @description message of jcom.parameter or jcom.message will automatically used to tag a connected GUI element. See the inside of jmod.degrade~
While we're on the screencast bandwagon, here's a video illustrating a new feature that has been implemented this week: The ability to use aliases for the names of Jamoma modules. The main purpose of this is to be able to change the names of modules dynamically so that the names reflect the content that it is currently being used for. Hopefully this will help making cue scripts more content-related and easier to read, edit and work on.
The feature will be available in the next installed, and I hope to get the time to make one the coming weekend.
If you have questions or comments, please get in touch with us at one of the mailing lists.
Today saw some further work on the TextMate bundle discussed yesterday, and an updated zip file will be posted shortly to the blog post from yesterday. I've also made a screen cast demoing it, and uploaded to Vimeo.
While at it, I created a Jamoma channel at Vimeo. I hope this will be useful for instruction videos as well as videos showcasing Jamoma in use. Please subscribe to the channel, and if you have videos relating to Jamoma, feel free to add them to the channel.
Everyone that has been doing a bit of coding, know that syntax highlighting is extremely useful. In order to simplify manual editing of Jamoma cue scripts, I've just added a OSC TextMate bundle to the Documentation repository.
If you want to start using it straight away, you can download it here:
Jamoma 0.5.4.rc1 (release candidate 1) has been uploaded. All issues related to OSX Lion are believed to be solved. There are no major changes as compared to the previous beta 2 release. Still, please give it a try. If we do not hear any complaints, this will be released as 0.5.4 the coming weekend.
The installation “Quit is distinguished” by Ricardo del Pozo will be shown at Union Scene in Drammen in Multisal 2 the 2nd and 3rd of October. Here's more from his blog:
This is a completely new sound piece for 16 speakers, and I’m am really exited to be able to present it in such a nice space. I will post more on this subject soon.
About my work in general:
Through digital real-time processes and spatialization techniques Ricardo’s work aims at addressing the formal aspects of sound and video and their inherent properties as artistic value.
Ricardo’s work explores the borderline between installations and electro acoustic music, existing somewhere in between categories. The work deals with formal questions concerning the sound and the moving image and how the relationship between them creates virtual, physical and mental space. The installation you’ll see at the open studio is a work in progress where Ricardo has been exploring algorithmic composition for both video and audio, and in what way these generative systems, to an extent, dissolve the perception of time.
A new installer is now available, with the changes and fixes reported and done in the last few weeks. Most importantly the four Plugtastic externals have been renamed. If you installed the previous beta, please remove the previous versions of these files manually:
plug.in≈.mxo
plug.in≈.maxhelp
plug.out≈.mxo
plug.out≈.maxhelp
plug.parameter#.mxo
plug.parameter#.maxhelp
plug.loader (found in /Max 5/Cycling '74/max-startup)
Also please check the Patches/extras and Patches/clippings folders for stray Plugtastic files.
Plugtastic is not currently fully operationally, and attempts to build Audio Unit plugins will cause Max to crash. We are currently working on this.
Change log since 0.5.4b1:
Various bug fixes i dataspaces (used by jcom.parameter and jcom.dataspace):
No longer crash if requesting a non-existing dataspace
@dataspace time: Fixed convertions to and from sample rate
jcom.filter~ fixed
jcom.parameter: @ramp/function now defaults to linear
jcom.parameter: @ramp/function can now be set at instantiation
jmod.gl.edgeblend%: Fixed an issue in help patch
jcom.parameter.array: Fixed error messages in help patch
jcom.dbap: src_weights now work in 1D and 3D, not just 2D
We have just uploaded a new Jamoma installer for Mac. The most important changes in this version are:
Addresses a number of OSX Lion issues
Requires OSX 10.6 or newer
Sneak-peek of the new Plugtastic objects, but with minimal testing recently
Dataspace: The pitch dataspace has been merged into the time dataspace
Please consider this version to be a beta. There might still be issues with OSX Lion, and there might be problems that we are not yet aware of if running the installer on OSX 10.6. If you’re in the process of testing out and migrating to OSX Lion please try it out. If you have an important project coming up in the next few days, I would recommend holding of.
As for the dataspace change: If you use custom modules with jcom.parameter or jcom.dataspace externals and @dataspace pitch, please change this to @dataspace time. The benefit is that there are more units to convert between than before.
Enjoy, and please report any bugs or issues to our issue tracker. If it is working well, we’ll be pleased to know on our mailing lists. The previous release (0.5.4b4) is still available for download.
While we hope you all enjoy a nice summer, we thought you will also enjoy to hear some news from Jamoma.
New in Jamoma
Since the last post from our “Last months” series dating back to may, a number of things happened. The full list of changes being not the funniest thing to read, you can see these changes in action using the installer of Jamoma 0.5.3 available both for Mac AND PC. Also worth noting that a new UserLib installer was released on the 18th of July. Please visit Jamoma download page to give it a go.
As previously announced, with the release of Mac OS 10.7, Jamoma has to drop support of OS 10.5. As a consequence, Jamoma 0.5.4 and above will require Snow Leopard. Of course, Jamoma 0.5.3 will remain available for users who have to work under 10.5.
Concerning Mac OS 10.7 support, Trond Lossius spent some time testing how good Jamoma works on Lion. However, a few problems remain at the time of this writing. If you already did the update to Lion, please get in touch with us to share your experience or help.
Public appearance
Nils Peters did a presentation of Jamoma during the CNMAT Max/MSP summer school 2011. In case you could not make it to this summer course edition, you can have fun going thru the Prezi presentation Nils did.
Thanks to Renaud Rubiano invitation, Théo De La Hogue and Julien Rabin participated to a workshop hosted by didascalie.net, in Paris. While the workshop was not strictly dedicated to Jamoma, a nice amount of tests and practice was done on Jamoma 0.6 in particular regarding its features for interoperability. Without a doubt, you will soon read more information about this on Jamoma blog. Stay tuned.
Regarding the artistic side, Jamoma has been used in Trond Lossius’ latest multi-channel installation at Hâkon’s hall in Bergen. If you planed to visit Bergen from now onto mid-september, be sure to go and hear this installation in such a beautiful place.
New contact address
As a conclusion note, while it is usually advised to share your feedbacks or feature requests with the whole Jamoma community thru the forum page, you can now also reach the core Jamoma team at this address. This may be useful if you want to get in touch to offer hosting of a workshop, offer support or get involved in whatever way you would like to discuss off-list.
We hope you all have a nice summer. Thanks for your support.
For the past 10 years the Granular Toolkit (GTK) by Nathan Wolek has been a welcome and much used extension to MaxMSP for granular synthesis and processing.
Nathan Wolek has just announced that in order to ensure future usability as well as enable the code to be used in other hosting environments, he has decided to end development of GTK in its current form, and instead reimplement as new granular components in Jamoma.
The source code for the externals in GTK will be open-surced under a BSD license, so that it remains possible to maintain the current code for projects that depends on it.
This is exciting news for Jamoma, and will certainly boost the feature sets and useability of the DSP and AudioGraph libraries. With the recent open-sourcing and inclusion of Plugtastic (wrapping AudioGraph externals into Audio Unit plugins), it also opens up exciting possibilities for creating granulation plugins in the future.
For a while we have been airing the idea of doing development sprints: Focused efforts over a limited period of time targeting specific goals for Jamoma.
Jamoma dataspace
For the last week Trond Lossius has done a lot of work on merging the pitch and time dataspaces, as well as writing up unit tests for dataspaces. He has set this development effort as a (minor) milestone.
Hopefully these development sprints will help a lot to get some specific areas more stable or featured and will ease the release of Jamoma updates. If you want to come and help Trond finishing this effort, just get in touch thru the forum.
This blog post is intended at developers and users that do not use the Jamoma installers, but rather check out the code from GitHub, and compile externals and frameworks themselves.
At the BOD meeting yesterday it was decided to move the ObjectiveMax repository. This has previously been hosted at Tim's Github account, but has now been moved to become part of the jamoma context. The new location is here.
ObjectiveMax is a high-level API for writing objects in C, C++, and Objective-C targetted for Max and Max-like environments. In Jamoma ObjectiveMax is a submodule of the supports submodule, located in the objectivemax folder. It is used in the various Jamoma frameworks for interfacing with the MaxMSP SDK.
The Jamoma repositories have been updated today, but there will probably be some work required for each of us to get our local repositories in line. Here is what I did to get this up and running locally:
1) Update supports
In Terminal, located at the folder of the main Jamoma repository, run the following 4 commands one by one (you can past them all into Terminal in one go):
This command might bring up error messages, as the .git/config file inside the objectivemax folder might still be referencing github.com/tap. If so, see from the error messages in Terminal which submodule failed to be pulled. If you e.g. see that the objectivemax submodule inside AudioGraph failed, you can edit the file with this command (provided that you are on Mac with TextMate installed):
This will update the repository reference and make it writeable, so that you can commit changes in the future.
Now go back to step 3, and loop through 3 and 4 until it's all OK.
If you get into problems, please use the jamoma-devel mailing list to get support.
[edit]
As reported on Jamoma dev list, you can also use the attached Ruby script that will take care of this. Just put the script in your "Tools" folder then run it from Terminal. When done, you can run the usual script "update.rb" with the following arguments : "master all". This will checkout all Git modules and submodules from the master branch and do the submodule initialisation and update. Hope this helps.
A new version of Jamoma was just uploaded. Alongside with the usual optimizations, bug fixes and all, Jamoma 0.5.3 brings some great news: for the first time in a year, Jamoma installer is available both on Mac and Windows!
If you did follow the recent activities on the forum or on Github, something has certainly not escaped of your attention: a lot of work has been put on the Windows version of Jamoma. Indeed, Adrian Gierakowski that we mentioned here before spent a lot of time working on the Windows versions of the frameworks and externals and fixing the installer amongst other things. Without a doubt, Adrian deserve a huge “thank you” for all the work he is doing!
No matter how nice this news is, just like with any beta version, this one comes with a grain of salt. At the time of this writing, the following externals are known to crash under Windows:
jcom.fft≈
jcom.dac≈
jcom.adc≈
jcom.split≈
jcom.graphics
Also worth noting that jcom.net.receive and jcom.net.send are currently broken.
It may take some time before these problems are fixed but we hope it will not last for long. If you want to give a hand at working on this, you are more than welcome to join the Jamoma community of developers.
In any case, be sure to head over the download page and grab the installer:
Apple has released Xcode 4. The fact is that you cannot build Jamoma with Xcode 4 unless we drop OS 10.5 support. For now, we are continuing to build with Xcode 3, but… Apple has announced that OS 10.7 will ship in the next couple of months. Xcode 4 will be needed to compile on 10.7.
Given these conditions, the least painful path forward for collective Jamoma development is to drop support for OS 10.5 at the time when OS 10.7 is released. That is this summer, and coincides with our plans for Jamoma 0.6. If that sounds like a major problem for you, please let us hear about it. Or to quote the oblique strategies : “Voice your suspicions”.
It has been a while since no update was posted on this blog. However, while things are quiet on the surface does not mean nothing is going on. As a matter of facts, since everyone came back from the nice and productive workshop we had at BEK in Bergen, a number of things have been worked on.
First thing first, we would like to cheerfully thanks again everyone at BEK for hosting Jamoma workshop and every organization that made this possible : didascalie.net, fourMs lab from the University of Oslo, Galamus, GMEA and Ircam. These friendly and productive times mean a lot for the work getting done on Jamoma and for the work to come.
Recent developments
Jamoma saw some initial support for working with matrices. This will allow amongst other things to write objects for Jitter. Thanks to Timothy Place!
Since the efforts initiated during the workshop, the trajectoryLib got more work done beside some new additions to the dataspaceLib. Thanks to Nils Peters’ efforts, it now offers “orientation” dataspace (euler <> quaternion <> axis/angle) and “speed” dataspace (mph <-> km/h, etc.). On a related subject, Trond Lossius started working on new library that has been discussed for quite some time : spatLib.
The previously code-named deviceManager received a amount of work by Théo De La Hogue. The now called Network Device Manager allows remote control of Jamoma applications or Max/MSP patches within the Jamoma network. Stay tuned for soon to come demo!
Jamoma also received a nice contribution from Nathan Wolek. The WindowFunctionLib has been expanded and will surely be a basis for more great stuff in the future. Thanks Nathan and welcome !
Finally, beside all these improvements or features additions, it is worth noting that a lot of attention and work has been done on Unit Testing. This should really help release fully tested and stable Jamoma versions. Of course, you are still more than welcome to report any bug that may have escaped from our attention on Jamoma forum.
Publication
The paper written by Théo De La Hogue, Laurent Garnier and Julien Rabin entitled “Jamoma Modular: a C++ library for the development of modular applications for creation” got accepted for the french conference Journées d’Informatique Musicale that will be held at the University Jean Monnet in Saint Etienne, France.
We are happy to announce that Jamoma Modular 0.5.2 for Mac is now released. Please visit Jamoma download page to grab a copy of the installer. A lot of work has been done since the last release (dating back to June 2010): newfeatures, bugfixes from a list too long to be detailed here. We hope you enjoy this new step.
We are unfortunately not able to propose a Windows release at this time because of the lack of developers involved in this platform. If you want to help testing, developing and building installers for Windows, please get in touch with Jamoma members.
Some time ago, Adrian Gierakowski shared a nice patch showing use of a new jcom.hub feature to mix between presets.
Today, Adrian just posted a message on the Jamoma User forum to annouce some of his modules are now public. This "ag.granular.suite" collection contains a number of FTM/Gabor-based modules for granulation processes and control. Be sure to watch Adrian's video inserted below to have an overview of the nice features his modules have.
It is really nice to know about people's use of Jamoma. If you would like to have some of your modules available in the User Library or featured on this blog, please get in touch with us thru the forum.
Would there be a better way to inaugurate the first 2011 blog post than wishing you all a happy new year, full of exciting and successful creative projects ?
We at Jamoma feel 2010 was a pretty nice year of work. As you certainly noticed by following our -quasi- monthly blog post series, a lot of stuff has been going on: some significant developments has been happening on the Jamoma Audio Graph and Jamoma Graph allowing some great applications, various maintenance releases of Jamoma Modular fixing bugs and bringing improvements, version 0.6 getting closer, more publications and nice art projects. We are also very happy to see more people such as Ricardo del Pozo or Navid Navab sharing their work on Jamoma modules in the UserLib. Feel welcome to join them!
A new beta version of Jamoma Modular for Mac has just been released. Be sure to head to Jamoma download page to give a look at the recent changes.
Next month in Jamoma
Now enough looked back at 2010. What is next? Thanks to BEK ’s invitation, the whole Jamoma team will meet in Bergen from January 31th to February 6th for a special developer workshop. This week promises to be a very productive one and we hope to see some nice stuff coming out of it. Workshops like this one are very important for Jamoma development and we are really thankful to have this support from BEK and other organizations involved such as didascalie.net, fourMs lab from the University of Oslo, Galamus, GMEA and Ircam.
The first version of the schedule has been published on the forum. The workshop aims at fixing some issues, bringing some new features and enhance a number of areas. It will also be the occasion for the team to review our roadmap and discuss the future of Jamoma with attention.
While the list of participants for this workshop is already booked, interested users are more than welcome to get in touch with developers through the mailing lists/forum to submit feature requests and issues you would like us to consider for future developments. More than anything, Jamoma is community driven and we certainly value users’ feedback.
Diemo Schwarz made a nice little tool that generates default templates for the touchOSC app for iPad automatically from the parameter declaration of a Jamoma module. How cool is that?
As always, the last couple of months saw a nice amount of work getting done. In case you did not have the chance to follow this closely, here are some highlights.
Releases
On the visible tip of the iceberg, a new beta of Jamoma Modular 0.5.2 for Mac was released on the 10th of November. Beside some bug fixes, Jamoma Modular was added some nice stuff.
An exciting feature has been added to jcom.hub. Thanks to Diemo Schwarz, that you probably know as the author of the great CataRT software, jcom.hub now offers the possibility to interpolate between various presets.
Speaking of jcom.hub’s built-in features, one can now export modules’ documentation as LaTeX formatted files. The documentation creation is fully backward compatible and options are defined as arguments to /documentation/generate message as detailed below:
- documentation/generate —> opens save dialog to generate html file
- documentation/generate html —> opens save dialog to generate html file
- documentation/generate foo —> opens save dialog to generate html file
- documentation/generate tex —> opens save dialog to generate tex file
- documentation/generate html filename —> will generate html file with the name ‘filename’
- documentation/generate tex filename —> will generate tex file with the name ‘filename’
Thanks to Julien Rabin and Nils Peters’s combined efforts, the UserLib has a handy package of modules wrapped around Soundhack externals. If you have been enjoying Tom Erbe’s now famous FX plugins, chances are that you will also like his Max externals. Please direct your browser to Soundhack.com and download this nice set of externals to start enjoying the modules.
Finally, Nils Peters also started working on a Jamoma bridge to MusicSpace developed by François Pachet’s team at Sony CSL lab in Paris. Be sure to visit its dedicated page to learn more about this interesting project and its implementation for Max/MSP.
And a one more thing: best of all, the UserLib now has an independent installer that you can get at the usual Jamoma download page.
Jamoma Audio graph
74objects recently offered a sneak peek of his upcoming product Plugtastic. As previously mentioned, Plugtastic which is currently in development uses features of Jamoma Audio Graph implementation for MaxMSP. Be sure to watch the sneak peek below from 74objects’ Youtube channel.
We are really happy to see developments using some of the Jamoma framework possibilities and we hope to hear from yours.
Based on processed B-format recordings, the sound is generated in realtime using Jamoma Modular + Jamoma Audio Graph, output thru an array of 16 loudspeakers and has been playing without interruption since the 29th of October. As we move toward more developments, it is really nice to see that Jamoma Audio Graph is not only useful for creation, but also mature and stable. Keep an eye on Trond’s website to read more details about it soon.