Tagged: synth
- 20210516 Coco 3 patches and thoughts
- 20210502 Brickworks Ether
- 20210206 Do not eat BAM (draft)
- 20191020 Quadraphonic
- 20140104 SoundCloud
- 20131205 A first patch
- 20130428 Building Keykit on Raspberry Pi
Coco 3 patches and thoughts
The Cocoquantus is always fun. Is it derivative-- is PB the artist here, and me just a user?
Where is the musician/instrument divide? Seems like instrument making is the greater art. But raising goats would take too much time.
Cocobam
2 bleeps, both recorded, and slowed through bam. I quite liked this one. Mournful, and some great ululations. I need some alternatives to fadeout to end.
FM
Going out of right fm the left. BAM on Room. Works like a delay
Quantussy
Each osc clocks 2 s/h (apparently two clocks/cycle-- 0 crossing? direction change?
- Oa castle out is Ob osc in, s/h for 0b freq
- Oa tri out is Ob castle in, s/h by 0b for 0b castle out
The triangle is derived from a square used for the s/h
The greens can be routed so the outputs of an osc are ignored, but not so that it has no inputs.
Playing with mic. and cocos
The quality of the coco is fine; and there's a lot of time. Before 9am, there's digital aliasing, but speech still understood, as long as inputs at right levels. I think before I wasn't close enough to the mic.
Tags: synth
Date created: 2021-05-16
Brickworks Ether
Went for a walk to the brickworks to see if it was explorable. All fenced off (though there is a hole down the dead end street on the west side).
Standard Brickworks fence south side, using the Soma Ether.
Box Hill central car park near train.
Tags: synth
Date created: 2021-05-02
Do not eat BAM (draft)
image
Tags: synth
Date created: 2021-02-06
Quadraphonic
I was inspired by seeing Suzanne Ciani and hearing her talk about quad as electronic music's natural environment.
Setup
iConnectAudio 4+ config needs to change to treat the outputs independently, instead of as stereo pairs, then each output goes direct to a monitor.
In Aum, I setup 4 input channels each with 4 sends, 1 for each output channel. For simplicity, i setup each channel to receive on the corresponding midi channel (1-4), and on cc 1-4, correspoding to LF RF RB LB.
I discovered that Aum has a cc curve, so for example for cross fade it's possible to receive the same cc on 2 sends, 1 going from 0-100 and the other from 100-0. This worked fine for L/R, but there was no way to extend it to F/B as well, because they'd need to overlap.
Mozaic is used to take 2 cc's in for L/R and F/B for each channel, and turn them into the 4ccs necessary for control. This was the missing that I couldn't work out before-- the macro control level.
Initially I tried
lf=round((lr+fb)/2)
rf=round((127-lr+fb)/2)
etc
This had 2 issues; the only way a monitor would go to 0 was if it was diagonally opposite, so targetting LF still had LB at 25%. The other was I should be dividing by 4, not 2 -- so there was lots of clipping, but if I did it's hard to get full level.
After sleeping on it I changed the formula to
lf=round(lr/127*fb/127*127), which is round(lr*fb/127)
rf=round ((127-lr)*fb/127)
etc
This has a much better response; isolation is better and it uses more of the scale. It would be possible to extend this to smear the sound more.
The mozaic strip receives 2 CCs per channel; and maps them to the 4 CCs and relevant channel to control the sends to the relevant speakers.
I used channel 1 77-84, because that was the default for the LCXL; then calculated which channel and cc it was going to.
Control
The beauty of using Mozaic to decode the midi is that I can use multiple sources to send it the initial CCs, including:
- LCXL (2 faders/channel)
- Mozaic Joystick (x/y = lr/fb)
- Rozetta LFOs
And the sends can still be set manually; so you can position any kind of smear.
Here is a sample recorded binaurally; I uploaded it to SoundCloud as well.
I posted the info on Aussie Wigglers.
Here is the Mozaic script
Date created: 2019-10-20
SoundCloud
I uploaded the result of cross-modulating my TipTop Audio Z-3000 Oscillator and Wiard Borg Filter to SoundCloud. Sharing is caring?
It's loud.
There's a short video of the patch on my previous post
Date created: 2014-01-04
A first patch
2 modules, cross patched
- Borg Filter
- TipTop Z3000 osc
From the video it looks like pulse and sin feeding filter, and saw is feeding the filter cv, but then the 2nd output is FMing the osc.
Tags: synth
Date created: 2013-12-05
Building Keykit on Raspberry Pi
[KeyKit](http://nonsuch.com/keykit/] is an interesting programming environment for midi music, combining graphical and programmatic control. The interface is extensible. Best of all, it was written before 2000, so it doesn't require a beasty machine.
There was no pre-built package for the raspberry pi, so I thought I'd have a go myself. I haven't done much compiling from sources since my early days using Linux.
I'm running the standard Raspbian distro.
Registering at the download site allows downloading the source. I was just interested in the alsa version-- haven't tried the raw midi version at all.
Extracting the zip creates a keykit77b folder, but running make installlinuxalsa fails with different errors. There is a useful readme_linux.txt file, but it didn't solve my immediate problems. Here's what I did to get it working:
- chmod u+x to src/rmcr (this is just making the dos line endings into unix ones)
- byacc (Berkley yacc) is included as a binary under byacc/ -- this won't work, neither will the dos version, obviously.So we need to use a proper version of byacc.
- sudo apt-get install byacc
- cd byacc/
- mv byacc byaccbroken
- ln /usr/bin/byacc byacc
- We also need some missing header files
- sudo apt-get install libasound2-dev
- sudo apt-get install libX11-dev
- Running make will fail because it can't fint ytab.c or ytab.h
- byacc is creating y.tab.c and y.tab.h, so just mv the files
- cd src
- mv y.tab.c y_tab.c
- mv y.tab.h y_tab.h
- first I tried to change the src/makefile to use the right names, but this seems to be recreated after each make attempt, so it's easier to just rename the files, and rerun make
It then compiles successfully-- though it doesn't create files in /usr/local/bin like the documentation says, the files are created in key77b/bin. The program runs under x, so startx if it's not running already.
The key77b/doc file has tutorials, as well as other documentation-- the multiport one was useful.
Initially I the program was seg faulting whenever i tried to get some sound. This turns out to have been an issue with my midi port setup. This is probably properly handled by creating a keylocal.k file but I haven't got that far yet. Adding the Port Enabler tool to the window, and using it to enable midi input and output prevented further segmentation faults.
To actually get midi doing something required I use the alsa tools to map keykit's ports to the system's midi ports.
I had an old Edirol UM-1 USB-midi cable which I plugged into the usb hub connected to the pi. With keykit running and the midi ports enabled, from a console command line
aconnect -i
lists the midi inputs
aconnect -o
lists the midi outputs
Both the UM-1 and keykit showed up, with a major/minor number.
aconnect 128:1 20:0
connects the midi in on keykit to the midi out of the UM-1. At this point I could connect my iphone (through yet another midi interface) and run Midi Monitor and see events generated by keykit's Mouse Matrix tool. Running BS-16i on the iphone let me hear stuff. BS-16i has a General Midi soundfont; very handy.
Using aplay midifile from the console was very handy getting this working.
aplaymidi -p20:0 filename
Once that was working, I connected the midi cable from the UM-1's output to my MeeBlip synthesiser, switched it to receive on channel 1, and spent a fun few hours playing with keykit.
Keykit's documents say it only works for external midi; but I imagine since they were written, the state of soft synths has advanced considerably; since the connection is handled by alsa, I don't see why it won't work.
Resources
- At the Sounding Edge: Introducing KeyKit is a Linux Journal article from 2005
Tags: raspberrypi, synth