Contributed by weerd on from the audio0 at hexagone0 dept.
Everybody's favourite audio hacker Alexandre Ratchov (ratchov@) is inviting you to a concert in Grenoble (France). Read on to find out how this relates to OpenBSD:
Announcing a jazz concert here might sound off-topic, but for this one all synthesizers will run on a OpenBSD box. Unfortunately there are no sample recordings available on the web, only this site (in French).
For non-French speakers, the concert takes place at "the Hexagone" in the Grenoble area, Feb 27, 2015. You're welcome.
The music is experimental jazz using micro-tonal instruments, played by great jazz musicians: virtuoso flutist Magic Malik, Maxime Zampieri on the drums and Jean-Luc Lehr on the bass. We use acoustic instruments (fretless bass, drums) and synthesizers (flute-like synths, pads, and percussions). All synths and corresponding effect processors run on a OpenBSD/amd64 box.
There're few input midi(4) devices: a keyboard, a flute-like wind controller, a kit of drum pads, and control surface (bunch of knobs). They send short messages (aka midi events) whenever a key is pressed on the keyboard, the breath pressure changes on the wind controller, or a pad is hit with the stick. The synthesizer is a program (not published yet) that listens on a sndio(7) midithru port, calculates the wave corresponding to input midi events in real-time then sends the result for audio playback to a envy(4) based card. Then, the resulting analog signal is mixed with other analog sources (bass and microphones) and amplified. Everything is configured to have few milliseconds of latency between the moment a midi message arrives and the corresponding signal hits the amplifier.
The music is based on a theory developed by Frederic Faure which is too long to explain here, but it brings a unique sound by carefully choosing note pitches. So we use an additional program to calculate the pitch of each note submitted to the synth and to visualize various aspects of the theory to assist musicians, it also runs on the same box.
There will be a masterclass on this music presented by Malik, Frederic and me on Feb. 25, 2015. We'll discuss practical and theoretical aspects of this music, and if there's interest internals of the synths and the setup.
Maybe see you at the masterclass and/or for a beer after the concert.
So, if you happen to be in the neighbourhood, make sure to stop by. Thanks to Alexandre for his story!
(Comments are closed)
By brynet (Brynet) on http://brynet.biz.tm/
http://www.openbsd.org/lyrics.html#audio_extra51b
The concert sounds really cool, nice of him to extend an invite.
Comments
By Alexandre Ratchov (ratchov) on
will be very different: there will be very talented musicians and
the concert hall is great. I'll mostly be there to tweak the synth
and/or trigger extra sounds.
By Ralf (161.69.135.20) on
I've done something similar on Linux with jack and an envy based audio interface. It was pretty tricky to get below 10ms latency. The standard kernel wouldn't do, a real-time enhanced kernel was needed and it takes some time to get all moving parts to work together.
Comments
By Alexandre Ratchov (ratchov) on
audio card. Intel i5 at 3.3GHz, with 8GB of ram. The wind
controller is a Akai EWI-USB, and the control surface is a
Behringer BCF-2000.
I use "-z 120" sndiod option to decrease to default minimum
audio latency. The synth runs with increased scheduling priority.
Few tips for performance:
OpenBSD is not a real-time OS, so leave enough CPU for the
synths, i.e. avoid programs spending too much CPU time in
kernel mode like web browers. I typically have xfce running
with few xterms and my audio stuff. Don't try to compile your
kernel during performance :)
MP kernels have issues with interrupts (interrupt handler
may spin waiting for the kernel_lock held by a process). Use
a SP kernel for now.
Use the modesetting Xorg driver as it spends less CPU time
in kernel mode than the default intel driver.
Disable system management mode (from the BIOS) and the acpibat
and acpibtn drivers (typically on laptops).
With this setup I get ~6ms latency and no single xrun during
hours.
By djm (203.217.30.84) on
Comments
By Anonymous Coward (212.136.9.4) on
From the article "The synthesizer is a program (not published yet) that listens on a sndio(7) midithru port".
By Alexandre Ratchov (ratchov) on
Indeed using a continuous key pressure/position instead of a bare
on/off switch to control the synth gives a lot of expressiveness.
The wind midi controller I use is not bad for this (there are two
continuous controls: breath and reed bite pressures) unfortunately
it's monophonic and not very practical for pianists. Roger Linn's
controller seems very cool for keyboardists.