Recently I have been working on the presets code in Jokosher, and much of it is complete and working. It is pretty cool to be able to save and load effects presets from within Jokosher, and I am really looking forward to hearing how Jokosher users will come up with their own presets, of which any we can ship. I am also interested in adding support for Preset Packs – collections of genre related presets. So, if you are are in a metal band you could install a bunch of presets, and if you are in a blues band you could install other presets. Its little things like this that should set Jokosher apart from the pack.
With the presets code in there, my work on effects support is nearly complete. A recent checkout of Jokosher SVN allows you to do the following:
- Select from a list of LADSPA effects on your system and add them to an instrument.
- Select multiple effects and string together ‘chains’ of effects.
- Adjust effect settings while the audio is playing and hear the changes in the effect in real time.
- Save and load presets for specific effects. As an example, you could have a bunch of presets for a specific Delay.
- Save and load preset chains for an instrument. A preset chain is a bunch of effects strung together, and they are accessed per-instrument. This means you can intelligently select the right preset for the right instrument (e.g. guitar presets shown only for the guitar instrument).
- Effects are saved and loaded with projects.
- Effects are represented in XML and could be theoretically shared between applications. I have tried to make the preset format as non-Jokosher-specific as possible to help with this.
There are still some bugs in the LADSPA bridge that the GStreamer hackers are working to fix, and when they are done, this is going to make Jokosher rock pretty hard.
Speaking of effects, there are a few other things going on. I have been thinking about the problems of auto-generating effects GUIs (required for LADSPA effects) for a little while (I have another post about this queued up), and I have also been looking at what the current state of Open Source digital effect development is like.
The future seems to be a project called LV2 which is LADSPA v2. This effort is being spearheaded by some key Linux audio developers, and they recently announced their draft spec update. LV2 seems to solve a bunch of problems in LADSPA, and a lot of people are getting exciting about it. What it does not solve, from what I can tell, is the issue of auto-generating GUIs, but like I say, I will blog about that later.
Other Jokosher shazaa
So, what else is going on with the Jokosher project? Here is a summary:
- Code has gone into Jokosher to support translations, and there is some incredible work going on in this area. The translations are being done on Launchpad, and you can see the current progress.
- Aq and Laszlo have been working on the Jokosher plug-in API. This will provide support for loading special extensions to Jokosher, and this is key in making sure Jokosher becomes a central hub for audio production. Imagine browsing Creative Commons audio sites from within Jokosher, imagine automatically uploading audio to sites or burning CDs, imagine automatically generating podcast feeds. The plug-in API will allow you to do this, and opens up Jokosher for professional studios who need to add some bespoke code to hook into their processes.
- Jeff has started work on a new docs wiki that will become a central site for Jokosher documentation. This will not only enable docs to be better accessible but also provide a place in which users can create HOWTOs, guides, tip sheets and much more.
- Edward Hervey has nearly finished some additions to GNonLin that allow us to hook up our volume fades GUI code to the audio engine.
- The Art Team have been busy working at creating more instrument and application icons. They are also creating multiple size pngs so we can ditch our libsvg dependency and ramp up the speed.
- Zooming was made more intelligent by Jens with quite a nifty patch to adjust the ruler measurements as you zoom in and out. Jens also sent us a cool patch for re-ordering instruments with some cool drag and drop.
The Jokosher project needs you! We are really keen to get more and more people involved in the project. If you are interested in helping, head to the main developer website where you can find out more. We have also added a collection of bitesize tasks that are a great way of getting started. These are small things that need fixing or adding, and are a great way of getting to know the project.
Finally, we are planning a Cleanup Day in which we are going to go through the code, tidy it up and fill it with comments. This should make it easier to get started. We will also use this day to fill the development site with more documentation.