Robin is freelancing in audio/video post-production and hardware/software co-development, living the FLOSS spirit as firstname.lastname@example.org, focusing on Research & Development for installation-art, life and open-web standards: Amongst others Robin a.k.a. x42 contributes to oauth.net, ardour.org, PAM, greenpeace.nl, Xjadeo, 64 Studio, JACK audio, LV2 plugin, sourcefabric,…
If you appreciate any of the many projects, the most valuable contribution you can give is time: help testing, provide feedback, report bugs, write documentation, translate,… While not always ideal, you can also donate money. Any contribution is greatly appreciated.
I'm a miserable blogger. Even small attempts to write something short regularly once per week failed in the past.
Trying to get to the bottom of this, I realized that the issue here is blogging: I'm generally not interested to shout out my opinion one-way to the public at regular intervals. But what about other areas of communications? For example programming language code?
Another aspect that I noticed to distract me are lack of constraints: Focus on a topic is beneficial to weave a chain. …and the key ingredient for me is a good challenge to motivate me.
Recognizing one's shortcomings is the first step, playing to one's strength.. et voila.
I set out a year ago today (after the skiing holidays), and the rest is [in the] git history :)
I killed two birds with one stone: combine my interest as user and developer in the Linux Audio ecosystem in general and responsibilities I shouldered there, with the endeavor to set a good example on the following statement:
If every Linux Audio developer would make regular contributions to the GNU/Linux Audio ecosystem, the overall state would increase rapidly.
The idea came up in the wake of one of the most active thread on the linux-audio-dev and -users mailing lists 2/Feb/2013 "So what do you think sucks about Linux Audio?". Well, instead of bitching about, I opted to provide a different response, “A patch a day keeps bit-rot away” :)
The contributions made over the last year are spread out about half/half to projects of my own and to projects with a different lead-developer or maintainer.
As for the former, I've been most active in meters.lv2, the goal being to make GNU/Linux even more suitable as a platform for Pro-Audio work. Regarding the latter I became a major contributor to the flag-ship of Linux Audio: The Ardour3 Digital Audio Workstation. On the sidelines there were (and are) many more projects, not all of them on github.
I'm not personally interested in data-mining and analyzing the commit-log for patterns. The general Mantra of it all is “Find something that you're interested in, can do, and do it”. The only problem here is that eventually there's much more to do that there is time for doing it. Luckily there is some overlap with many projects as well as with my personal and professional use-cases which makes it easier to set priorities, even though not necessarily favorable ones from the 'fun' point of view.
Another related issue is that collaboration requires communication with other authors, which can prevent a regular code-contribution pattern. While this is a good thing in general (plan, think and discuss first), it did not aid the challenge at hand… In fact, this “Don't break the chain” coding endeavor required a bit of time-planning in itself to be useful.
The hard part to keep this up was after around 3 month (late spring) and then again later in August/September (summer holidays). Here, I motivated myself with a small side project there: I can now say “I wrote git …on github” :)
Eventually a git commit became daily routine, just like reading mail. A git commit can be anything from a simple one line typo fix to a major rework of a piece of code so the measure of actual contributions is somewhat meaningless, but as the Scottish say: “Many a mickle makes a muckle.”
GitHub rightfully counts bug-reports as contribution to a project, though in my case the goal was a daily contribution to the master branch of some project (not counting fun projects such as the git-message).
Anyway, it's been a rewarding experience and I'm planning to keep this going, maybe not as rigorously as during the last year, since other (non code) projects are about to become more central in the not too distant future. Either way I gave up for good on trying to repeat a feat that I managed from age 15 to 25: Play at least 1 hour guitar every day.
Coming late to my own party..
In the wake of overhauling Ardour's bar-graph meters, I've taken the time to implement corresponding needle-style meters and more.
meters.lv2 features 10 needle-style meters: Mono and stereo variants of DIN, Nordic, EBU, BBC and VU types (which are based on jmeters by Fons Adriaensen).
Additionally it includes a Stereo Phase Correlation Meter, an EBU-R128 Meter with Histogram and History display, a Digital True-Peak Meter, a Stereo Phase Scope (Goniometer), a 31 Band Spectrum-Analyzer and six K-meters (mono,stereo versions of the K12, K14 and K20 K meter-standard by Bob Katz).
Source-code, information and screenshots can be found at https://github.com/x42/meters.lv2
Alexandre Prokoudine has written a nice blog-post over at LGW and gave away a hard-copy of the “Audio Metering. Measurements, Standards, Practice” book by Eddy Brixen to celebrate the release.
meters.lv2 would not be what it is without the various contributions from Fons Adriaensen, David Robillard, Chris Goddard and Axel Müller. Thanks to Jaromír Mikeš they are already packaged in debian, part of the x42-plugins package.
Ardour 3.2 has been released featuring the videotimeline and a lot of other things that I've been working on on the past years, months and weeks!
I count myself lucky that after all that work, I don't need to write the announcement by myself. Let the buzz begin.
Many thanks to everyone who contributed, provided feedback and support. In particular Chris Goddard, Thomas Vecchione and Paul Davis. Not to mention the projects on who made this possible in the first place – most notably ffmpeg.
I've started to tackle a major todo item on the setBfree issue-tracker: the Organ needs a GUI :)
Well, strictly speaking it does not. All controls are available as MIDI-CCs, so when playing it using a midi-keyboard, a GUI is uncalled for. The GUI is completely optional. But setting up those MIDI-CC maps and midi-program-presets in the first place can be quite an advanced talk for musicians who are not comfortable with editing text config files. Also using when using the organ synthesizer as plugin in a sequencer MIDI-CCs are unwieldy for visualizing drawbar settings. Last but not least the GUI is bi-directional: the GUI is updated if the synth receives MIDI messages and can be used to quicky check the state (e.g. when loading midi-programs/presets) and changing values in the GUI sends corresponding midi feeback to the connected device.
A major factor in the GUI design decision was that GUI should run cross-platform and can be used in LV2 plugin hosts without causing ABI conflicts. The toolkit should also be reasonably lightweight. This basically ruled out gtk+, QT, FLTK and NTK :( Luckily there's OpenGL!
So if GL, why not 3D too?! In the context of an audio-plugin it's one of the most superfluous uses of 3D, ever, but WTH!
setBfree running as LV2-plugin in ardour – of course you can pan, zoom and tilt the 3D view :)
For inspiration, here are some pictures that google found searching for Hammond B3.
Work on the GUI is still ongoing. It is already functional but work on many of the planned features - like interactive midi-maps, presets, etc - has only just begun.
Have you ever wanted to include raw data - such as images - in an executable application file?
An application that can be compiled for any platform including Windows, Linux and OSX?
– Well, while I was working on harvid, I did.
It turned out to be quite easy - once you know how :) gnu/ld rocks, but as usual there are some issues – in particular on OSX.
Check out the complete embedding resources in executables story.
First heads up in 2013: I got nerd-sniped shortly after x-mas and reverse-engineered the Digi 003 Firewire protocol with Damien Zammit. The details are a long story, but linux-support for it is underway:
The submission deadline for the 3rd Computer Art Congress - PostDigital Art - has been extended until June, 18.
CAC.3 invites artists, intellectuals, engineers and scientists to share and discuss their imaginations, creations, inventions and visions of the post digital art. The Call for Papers and Artworks can be found here.
Taking a leaf out of Merkel's book, another German is trying to influence the French elections..
Last week I received a phone call by my collaborating artist and previous supervisor Maurice_Benayoun that there is interest to show a customized version of our project Emotion-Forecast during the final stages of the presidential election campaign for François_Hollande.
My first reply was: “I'm not interested in political statements. Yet the project is free-software, everyone can use and customize it for their needs.”
As citizen of the European-Internet, I am not allowed to vote in France - so here's my change to take some influence nonetheless. While I can't say that I'd vote for Mr. Hollande, I am certain that I don't want to continue living in a country ruled by Sarkozy. Decision-making by exclusion, fine.
So I spent a few hours hacking - which is fun anyway - and a few hours carefully translating English into French.. et voila. La prévisualisation est disponible en ligne.
I'm still undecided what I'd actually vote on next Sunday. Pretty much both options seem like dead-ends to me. Still, I'm happy that people's emotional-concerns are included in an election campaign, which otherwise is pretty much focused on the economic situation: jobs, taxes, dept-crisis,.. sprinkled of immigration and security concerns.
Even though this “emotional weather forecast” will likely be presented out of context of our initial intention, I very much welcome the opportunity that it may inspire some people at least.
Update: it is going to be presented on Sunday, May/6 at Place de la Bastille.
Update: article in huffingtonpost about the project[ion].