Bassdrum Update

Alas, my last bassdrum SynthDef had errors in it. You can’t do a .rand in a SynthDef, you need to use a UGen: Rand(lo, hi). And my sample and hold-ish bit was beyond screwed up.

Alas. To make up for this gruesome oversight, I’ve posted 16 samples of my analog drum patch to my sample library. They’re all public domain, because crediting individual samples is too annoying for users. I hate having to keep track of stuff like that. I use a personal wiki to track this stuff when I use samples that require attribution, and it’s still annoying.
Also, here’s my fixed version:


(
 SynthDef(bassD, {|out = 0, hit_dur, amp, pan|
 
  var ringmod, noise, lpf, hpf, lpf_env, hpf_env, noise_env, env, panner, 
   pitch_env, slew, trig, sh;
  
  
  lpf_env = EnvGen.kr(Env.perc(0.05, 56.56, 12, -4));
  hpf_env = EnvGen.kr(Env.perc(0.05, 48.54, 12, -6));
  noise_env = EnvGen.kr(Env.perc(0.0001, 0.032, 1, -8));
  pitch_env = EnvGen.kr(Env.perc(0.07, hit_dur, 12, -2));
  
  env = EnvGen.kr(Env.perc(0.00005, hit_dur, amp, -2), doneAction: 2);
  
  trig = Impulse.ar(0.45/hit_dur, Rand(0.0, 1.0));
  sh = Dwhite(-6.0, 6.0,inf);
  slew =  Lag.ar(Demand.ar(trig, 0, sh), hit_dur/1.7) + Rand(-6.0, 6.0);
  
  ringmod = LFTri.ar(
     (31 + slew + LFTri.ar((27 + pitch_env).midicps, Rand(0.0, 4.0), 60)).midicps, 
     Rand(0.0, 4.0)); // 5 octave log range
  noise = PinkNoise.ar(noise_env);

  lpf = RLPF.ar(ringmod, (56.56 + lpf_env).midicps, 0.5);
  hpf = RHPF.ar(lpf +  noise, (48.54 + hpf_env).midicps, 0.5);
  
  panner = Pan2.ar(hpf, pan, env);
  
  Out.ar(out, panner);
 }).store;
)

It really doesn’t sound as good as the analog. Frankly, nothing ever sounds as good as analog. My dream system is to have a real analog synthesiser on a chip or a board with a physical interface with actual knobs and stuff. However, in my dream system, you’d be able to save knob settings and patches. And then you’d be able to use it with supercollider (or a similar system). Of course, I’d need a bunch of these things to get polyphony, so the rig would be outrageously expensive, but a boy can dream.
If you want to tell me that this already exists (in real analog, none of this fake stuff) please also tell me I’ve won the lottery! Er no, do tell me about it. It would certainly give me incentive to start buying lottery tickets.
Speaking of analog, I’m still looking for synth repair in the greater London area. My power supply for my Evenfall Minimodular is dead and there’s just not an off-the-shelf one that I can find. I theoretically know how to build my own, but I’d like my first power supply to power something slightly more replaceable. Meh. At least any new one I get will work with multiple voltages. Hauling around step down converters is a pain.

Bassdrum

There’s no better way to procrastinate than trying to do the perfect anything. You spend days on tiny things.
Um, anyway, completely unrelated to that, I’ve spent the last two days making a bassdrum synthdef.
Bass drum patch
First, I made an awesome bass drum patch on my analog synthesizer. (Well, “awesome” is a strong word, but anyway, I made a patch.) Then, I recorded the patch to my computer using the beta version of Audacity and an older version of OS X. Then I lovingly cut them up perfectly and saved them as AIFF files. Then I threw away my original recording to save space on my overly crowded hard drive. then I discovered all my AIFF files were empty because the beta version of Audacity is great if you have the lastest version of OS X, but much less fantastic if you don’t.
Hey, but that analog warmth takes up a lot of hard drive space. You need to rotate through several samples or it sounds the same every time. And I don’t have a MIDI->CV converter to use if I carry around my synths thusly patched to all my gigs. Also, it’s kind of hard to transport while patched. And I’d need to buy a second synthesizer for other stuff. So clearly the next best thing to do is replicate the patch as a SuperCollider synthdef.
I have to admit upfront that this is not as nice as the analog version because the RLPF UGen is nice, but it’s not the same kind of sound as the Voyetra8 RLPF, which is Moogy. So if you want to improve the patch, you could use a Moog emulator ugen and make sure the bass is enhanced. I’m not going to bother because of the CPU hit, but I like ot keep stupid flash apps running in the background and have a poor sense of priorities.
Um, anyway, here’s the final version:

(
  SynthDef(bassD, {|out = 0, hit_dur, amp, pan|
 
    var ringmod, noise, lpf, hpf, lpf_env, hpf_env, noise_env, env, panner, 
      pitch_env, slew, trig, sh;
  
  
    lpf_env = EnvGen.kr(Env.perc(0.05, 56.56, 12, -4));
    hpf_env = EnvGen.kr(Env.perc(0.05, 48.54, 12, -6));
    noise_env = EnvGen.kr(Env.perc(0.0001, 0.032, 1, -8));
    pitch_env = EnvGen.kr(Env.perc(0.07, hit_dur, 12, -2));
  
    env = EnvGen.kr(Env.perc(0.00005, hit_dur, amp, -2), doneAction: 2);
  
   trig = Impulse.ar(0.45/hit_dur, 1.0.rand);
  sh = Dwhite(-6, 6,inf);
  slew =  Lag.ar(Demand.ar(trig, 0, sh), hit_dur/1.7);
  
    ringmod = LFTri.ar(
        (31 + slew + LFTri.ar((27 + pitch_env).midicps, 4.0.rand, 60)).midicps, 
        4.0.rand); // 5 octave log range
    noise = PinkNoise.ar(noise_env);

    lpf = RLPF.ar(ringmod, (56.56 + lpf_env).midicps, 0.5);
    hpf = RHPF.ar(lpf +  noise, (48.54 + hpf_env).midicps, 0.5);
  
    panner = Pan2.ar(hpf, pan, env);
  
    Out.ar(out, panner);
  }).store;
)

I use “hit_dur” instead of dur because I want my drum sound to end before the Pbind gets around to playing again, but you can change that to dur.
I figured out those values by using the Conductor class, which is in a quark. I’m fond of this as a sound design method because you can mess around with a GUI to change values and you can save them to disk. Here’s what the test code looks like:

(

 SynthDef(bassD, {|out = 0, freq1, freq2, lpf_f, hpf_f, lpf_d, hpf_d, noise_d, dur, amp|
 
  var ringmod, noise, lpf, hpf, lpf_env, hpf_env, noise_env, env, panner, 
   pitch_env, slew, imp;
  
  
  lpf_env = EnvGen.kr(Env.perc(0.05, lpf_d, 12, -4));
  hpf_env = EnvGen.kr(Env.perc(0.05, hpf_d, 12, -6));
  noise_env = EnvGen.kr(Env.perc(0.0001, noise_d, 1, -8));
  pitch_env = EnvGen.kr(Env.perc(0.07, dur, 12, -2));
  
  env = EnvGen.kr(Env.perc(0.00005, dur, amp, -2), doneAction: 2);
  
  imp = Dust.ar(0.45/dur, 12) - 6;
  slew =  Lag.ar(imp, dur/1.7);
  
  ringmod = LFTri.ar((freq2.cpsmidi + slew + 
     LFTri.ar((freq1.cpsmidi + pitch_env).midicps, 4.0.rand, 60)
    ).midicps, 4.0.rand); // 5 octave log range
  noise = PinkNoise.ar(noise_env);

  lpf = RLPF.ar(ringmod, (lpf_f.cpsmidi + lpf_env).midicps, 0.5);
  hpf = RHPF.ar(lpf +  noise, (hpf_f.cpsmidi + hpf_env).midicps, 0.5);
  
  panner = Pan2.ar(hpf, 0, env);
  
  Out.ar(out, panner);
 }).store;

 Conductor.make({arg cond, freq1, freq2, lpf_f, hpf_f, lpf_d, hpf_d, noise_d, dur, db;
  freq1.spec_(freq, 200+660.rand);
  freq2.spec_(freq, 200+660.rand);
  lpf_f.spec_(freq, 100+200.rand);
  hpf_f.spec_(freq, 200+660.rand);
  lpf_d.sp(1, 0.0001, 1.5, 0, 'linear');
  hpf_d.sp(1, 0.0001, 1.5, 0, 'linear');
  dur.sp(1, 0.0001, 2, 0, 'linear');
  noise_d.sp(0.1, 0.00001, 1, 0, 'linear');
  db.spec_(db, 02.ampdb);
  

  
  cond.pattern_(
   Pbind(
    instrument, bassD,
    db,   db,
    freq1,   freq1,
    freq2,  freq2,
    lpf_f,   lpf_f,
    hpf_f,   hpf_f,
    lpf_d,   lpf_d,
    hpf_d,   hpf_d,
    noise_d,  noise_d, 
    dur,  dur    
   )
  )
 }).show;
 
)

Those of you who like high bass drums will have fun with freq1 and freq2, if you’re bored and feel like messing around with such things.
That synthdef actually has more envelopes than my IRL synth does. I think it’s because I wrote a post about envelopes today like they’re the greatest thing since sliced bread. I also have a post about Conductors that I find somewhat more readable than the official documentation, but that’s probably just because I wrote it.

Edit

I corrected an error in the main synthdef. However, the one next to the conductor is the old version.

Idea – any interest?

When I was studying analog electronic music in The Hague at Sonology, one of the techniques that Kees Tazelar really promoted was the re-working of recordings. The composer would record a sound and then playback that recording though another patch, like a filter or ring modulator or something and record the results of that and then repeat the process with the new recording.
This approach is nice because the resultant material has a link with the material that preceeded it. When the composer mixes it all togther, the material has a connection which may be audible. I used to record completely new patches with new sources for every sound in an analog work, but now I also do a lot of reprocessing.
My idea is to do a collaboration with other interested electronic artists. We could each publish one source sound and then publish some reprocessing of that sound and other artists’ sumitted sounds. We could then mix some of those sounds (with possibly some extra processing) and make new pieces with these collaboratively devloped sounds. These could then be released as a group via a netlabel or something.
I think this might be fun and if people document what they did, it could also be a nice learning tool. Anyone interested?

IDAHO

Why is the International Day Against HOmophobia and transphobia abbreviated to IDAHO and not IDAHOT? The whole “hahaha the T is silent” thing is supposed to be a joke. If they’re serious about the leading ‘I’, then it’s surely not important that it shares a name with a state that few people have heard of outside of the US.

The big action in my town was a kiss-in. I planned to go, but then I didn’t. I mean, if I go and kiss a woman, then I’m a straight guy kissing a girl, which is just such a massive show of privilege. If I go and kiss a boy, it reminds of me of being in high school and wishing I were a straight girl and the uncomfortable kisses that resulted from that. meh. I don’t want to pretent to be a cis gay guy.

This might be unfair. Maybe it wasn’t like that. I can’t say for sure, as I didn’t go. But still, I don’t think a kiss-in makes a lot of sense in the context of fighting transphobia.

I like cis LGB people (some of my best friends are . . .) but I’m increasingly against hitching my wagon to their quest for rights. Like, absolutely, they should have full civil rights, and trans people should stand in solidarity with that. Heck, a lot of trans people are LGBQ. But when all trans people stand as a subgroup of LGB people, we’re totally invisible.

On the other hand, if we just had an IDAT, how many cis LGB people would even notice or mention it? It’s not like many of them go to TDOR, although most trans people I know go to the vigils that result when a cis gay man is killed – vigils which also say they’re against transphobic violence, but then only have cis speakers.

I don’t want to be a hater about this. Homophobia is bad and I’m against it. Transphobia is also bad, but if you don’t really want to talk about it, then just don’t mention it at all. Most twitterers have completely neglected the silent, invisible T. So, if transphobia is totally beside the point, then don’t bother bringing it up in the first place. I’m tired of being disappointed and invisible.

In my life

The band I’m in had a gig recently, on the night of the election. Helen wrote a song([MP3]) about the Tory party leader, who, alas, has become the new Prime Minister. I made a video for the song.
The gig went well.
A few days before that, I put together a last-minute set for a noise show. That gig was a bit unnerving, as I had a lot of technical problems. However, I got a surprisingly good review of the mp3 that I posted. The part that’s gone to my head says, ” . . . that digital squeal that’s the laptop equivalent of Hendrix’s burning guitar . . ..” (It was an analog chaos patch and not actually feedback, but that’s well beside the point.)
In other creative musical news, I actually finished a piece (pending seeing my supervisor). There’s a few different ways to finish a piece and one of them is to become so filled with hatred that “finishing” it is an act of putting a stake through it’s heart. This is one of those cases.

Other Stuff

I have a girlfriend, who I never blog about and whom I’m not going to start blogging about, except to mention here that she exists.
Um, I don’t know, when people ask me about my life, I just talk about what I’ve been working on. Apparently, this is common for PhD students. Speaking of which, I’m now officially going to be at uni for the optional fourth year.
I’ve gotten word of my name change to both my phone companies. My bank invented a law that says they can only deal with a name that matches government ID. Or maybe it’s a real law, I don’t know. I’m going to try opening a new account someplace else. I hate my bank. The last shrink I saw at Charing X said he would write a letter such that I could get a provisional drivers license learning permit what ever it is with the right gender marker, but I haven’t heard anything about that. My next appointment is next week, so I’ll bring it up then. It would solve my bank problem. Otherwise I have no idea why they want me to see another shrink. I’m still the same amount of sane as last time.
I still live in the same place with the same dog and go to the same university, so not much is changing, which is nice.

Pre-operative Consult

Three weeks ago, I had an appointment to meet my surgeon. It was at St. George’s Hospital in Tooting. The hospital seems to be a new construction or has recently been renovated. The landscaping had not yet been planted, and I passed some heavy equipment outside. Inside was nice, but had confusing hallways, like all hospitals must. I found my clinic quickly. There was a guy I knew in the waiting room, waiting to see the same surgeon. He had gone online and found some pictures of the surgeon’s work and talked to a happy recipient of the same surgery, so he was very positive about her. After a longish wait and a nice chat with my friend, I was ushered into her office. She examined me, told me what sort of operation I’m to have and talked about recovery times.
She asked me to take off my shirt and produced a small tape measure, which she used to measure the distance between my neck and my nipples. One of my moobs has always been more droopy than he other, something exacerbated as testosterone has slightly (not entirely, alas) deflated them. “You’re quite asymmetric” she said, which suddenly called to mind the time I got my left nipple pierced. The piercer had gotten it crooked and had blamed it on my having “weird nipples.” It’s a good thing I already wanted to get rid of the moobs!
Anyway, what will happen is that the surgeon will cut off my nips, remove extra moob from around where the nips were, then re-attach the nips and sew it all back up. This method leaves minimal scars. I forgot to ask if I would have any feeling in any temporarily amputated parts, but it seems unlikely. Alas for that, but it seems like a worthwhile trade off and it’s possible that feeling may slowly return over time. When I had a tumor cut out of my finger, years ago, the top of my finger was numb for a couple of years, but is now normal. 

The surgeon explained that given my existing asymmetry, I should expect to have some later and cautioned me that if I got out a tape measure, I might be disturbed. (Buck Angel, who has a perfect chest had greater asymmetry than I, but he went to a Hollywood doctor and paid a small fortune. As I’m getting this for free and don’t plan a career in porn, I’m pretty ok with this.) So I will be keeping my odd nipples and my lopsided chest. Whatever. At least I’ll be able to cavort around topless and even do wild and crazy things like wear T-shirts. 

Any surgery carries an infection risk, which she didn’t seem overly concerned about. And there’s some chance my nipples would fall off, which, thankfully, is very rare. She blocked out 2 hours of operating room time, but it should be quicker than that. I’ll have to stay overnight in hospital. So the risks are acceptably low and I’m happy this is coming, but it is more serious and invasive than I had realised. 

I can expect to feel really shit for a week. Because Xena pulls on her lead, I probably can’t walk her during this time. Then, I can’t lift anything or do any exercise for 6 weeks. So no gigs for me, unless I get a roadie. I’ll also need to wear a post-surgical binder. She explained that the NHS did not currently fund the one she thought was best, although she’s been pushing for it, so I should try to buy my own. She cautioned me that it will be kind of pricey. How much? I asked. Around £50. She explained that if I couldn’t afford it, they could provide something else and I shouldn’t worry about it. So I’ll be that much out of pocket, plus the £7 copay on whatever pain killers. My first new T-shirt is going to say “God Bless the NHS.”

The surgeon asked me if I had anymore questions and I asked why she goes by Ms. rather than Dr. She told me that she, like all surgeons, was qualified as a doctor. But then she had done several extra years of training to qualify as a surgeon. It’s customary for surgeons to go by Mr or Ms to signify their greater level of training. She also said it had historical roots from the old days when surgeons/barbers had entirely different training than doctors, who just did bloodletting and prescribed drugs. It’s kind of weird that her profession is descended from shaving beards. I did not bring up Sweeney Todd, but I thought of him. 

After answering all of my questions and whatnot, I was sent off to have “before” pictures taken. The NHS documents everything, she explained. I got somewhat lost on the way, but a helpful woman noticed me looking lost and offered directions. On the way to the multimedia department, I passed several classrooms and a student examination in progress. St. George’s is also a medical school.
The multimedia department had a proper photo studio with lighting and backdrops. I had to sign a consent form which asked if my pictures could also be used for teaching. I said they could. The photographer explained my face would not be in the pictures. I told him that I had recognised somebody’s before pictures from his tattoos. The photographer looked surprised by that idea and I suspect may bring it up at a future meeting. For the pictures, I had to face different directions. It felt like I would imagine how getting a mugshot feels. 

And that was it. I went home. About 2 weeks later, I got voicemail scheduling my pre-op appointment, which will be 15 June. The operation will probably be two weeks after that, I think. I don’t know. It’s hard to plan things when I don’t know dates, but I’m pretty happy.

I Changed my Name Today

I am now, legally, Charles Céleste Hutchins. (But you can keep calling me Les). I changed my name via a device called a statutory declaration. Rather than hiring a solicitor to draft the document, I used a web form at Press for Change and added a spot at the bottom for me to sign. I printed it out and then called around Solicitors in my area. One of them told me to just pop by.
A woman there looked at the form and had me sign it in front of her. My signature is wonky as I’ve never signed “Charles” before. Then, she she asked me to raise my right hand and swear that the contents of the form were true and correct, so I did so, feeling kind of goofy. She then filled out her part and stamped it. I paid £7 for this, which is apparently the going rate.
There are several ways you can change your name in the UK, but this kind is the only one recognised by the US embassy. I also need to show that I’ve been using the new name, so I called my phone company and will need to mail or fax them a copy of the form. Tomorrow, I’ll go to my bank for a new checque book and then my GP for a new NHS card. Those three documents should be enough for me to get a new passport with my new legal name. I will also need to inform my university and documents that they send me would also count for the embassy.
This is a lot easier than changing at home would have been. I’m quite pleased.

Gig TONIGHT!

It’s kind of last-minute. I think the organisation for this event started on Tuesday. Anyway, I’ll be there doing some live-patching of my MOTM synthesizer. Depending on how this afternoon goes, I might also be live-sampling it with supercollider. I want to use my wireless game controller, so it should go with no visible laptop. It’s the future. The official announcement follows. My name has been mistaken hyphenated in a very amusing fashion.

NOISE=NOISE #19

spontaneous assemblage
diy punk electronics
exploratory noise
hallucinogenic visions
sonic butchery

Thursday 29th April
@ Butchers Corner
302 New Cross Road
London
[Map]

nearest overground — New Cross Gate

7/8pm ish start

featuring:

  • HYLICS
  • CHEAPMACHINES
  • J.M. BOWERS
  • DJ TENDRAW
  • THE ABOMINABLE MR. TINKLER
  • JOHN WALL
  • OPAEAN & CARACOIS VOADORES
  • TORTULA
  • JOEL CAHEN
  • CHARLES CELESTE-HUTCHINS
  • ZLATKO BARACSKAI
  • AMPERSAND

Voting

The country I live in is preparing for an election. As a non-citizen, I cannot vote, but since I live here, the results will certainly effect me. Especially all the competing proposals to make life harder for immigrants and would-be immigrants. Still, I’m not going to tell anybody how to vote, although I do think a hung parliament might help keep them out of trouble. Instead, I want to share a story.
Ten years ago, in my home country, we had a couple of tossers standing for election. They both went to the same sort of schools. They both had fathers who had held high offices. They both had major connections to oil companies. They both had all the personality of plaster. It was tweedle-dee and tweedle-dum. It seemed not to matter which got in. One was coming from a supposedly more left party, which had done all kinds of horrible right wing things while in office and had widened the gap between rich and poor and had done a lot of bombing overseas. The other came from a somewhat farther right party which had an alarmingly bad record from its time in power in the 1980’s.
Still, there wasn’t all that much difference between the published platforms of the parties. One of them seemed to hate LGBT people slightly less than the other. One seemed to care a tiny bit more for poor folks (not that you’d be able to tell from the 8 years immediately preceding). In short, aside from empty words, it seemed like voting would be an utter waste of time. “Don’t vote!” we said, “It will only encourage them!”
As it happened, the slightly more right wing candidate got into office and it turned out that he was a bit more right than he had represented himself. Indeed, he was George W. Bush
“If voting changed anything it would be illegal” is only half true. Voting is perfectly legal because it allows a way to put a stamp of public approval on sociopathic policies that harm the general public. The structure of western democracy is such that you cannot actually ever seem to vote for anything good. You can only vote against things that are bad. Because the political process is controlled by the rich and powerful, only things they like are ever going to come up for a vote at all. The power of the masses resides in our numbers. We can take to the streets and demand things. Our needs and wants are raised via activism, not via voting.
This, however, should not construed to mean that voting is a waste of time. You cannot vote in positive change, but it’s possible to vote in negative change. Ergo, voting is not an expression of hope and change, but of damage control. Essential, important damage control. It’s a grim, ugly and strategic business. You do it because you’ve got to do it. Because you love your country. Out of a sense of responsibility; no matter how ugly or evil it is, you’ve got to prevent George Bush-like disasters from befalling you and your countrymen.

Freenet

This the latest on my series on how to use the internet without government interference – now a pressing issue in the UK, China and Australia and probably coming soon to a country near you.

What is Freenet?

Freenet is is free software which lets you anonymously share files, browse and publish “freesites” (web sites accessible only through Freenet) and chat on forums, without fear of censorship.
It is a proper dark cloud. If you want to share material online and you don’t want to be identifiable as the source, this is the software for you.
You would want to use this if you were a member of an outlawed opposition political party or if you wanted to post other material that might get you in trouble because it’s against censorship laws. This frees you from having to rely on foreign servers who might comply with requests from your government to remove material or reveal your identity. There s no takedown order on Freenet.
You can also use freenet as a way to share data with friends and collaborators without the source of that data being easily traceable. And it offers peer-to-peer website hosting – so it scales automatically to meet demand. Which, oddly, means it’s free web hosting.
If some of this seems dodgy, remember that you should have a right to anonymity and know also, that Google has decided to fund some development on the project, which could be taken to further confirm that it’s a an entirely legit use of the internet.
Note that running a node helps out others who are using the project, even if you’re not actively using it yourself.

How to use it

I’m on a mac, so I can write up what I did. They have windows documentation on their website as well as general documentation.
First, I downloaded the installer. Then I ran it. After it installed, it opened in my web browser and then told me I should use a second web browser to connect. I normally use Chrome, but for my second browser, I use Camino because it’s lightweight, but configurable. However, I need to remember to clear the cache when I’m done.
There are some questions, I went with the defaults and with “normal.” Then I got to the home page, which is at http://127.0.0.1:8888/. This page is on my own computer. At the bottom are buttons to shut down the freenet application which is also running on my computer or to restart it.
If you have shut down freenet (or rebooted) and want to start it again, go to the freenet folder and run StartFreenet.command by double click on it. That should work.
Ok, so when I got to the home page I clicked on the Ultimate FreeNet Index. And I noticed that it’s slow. And also, the content looks very 1999 (the simplicity makes it load faster) and it’s a teeny bit dull.
Alas, well, defeating censorship isn’t always glamorous. If you want this to be more secure (and to share interesting content with people you know), you should find your friends on here. You would add them at http://127.0.0.1:8888/addfriends/. At the bottom of that page is your reference link. Share that (securely!) with your friends and they would put it in the box above. There’s some documentation on how to do that on this page.
Once you have friends on it, you can send them messages and files securely, from the friends page, so it’s good for just trading stuff around. Check it out. If you want to be my friend, let me know. It’s not exactly social networking, but it’s still cool.