Thursday, 4 June 2020

Guitar Effects Pedals that don't seem to exist...

There are a lot of guitar pedals out there. The more you look, the more you will find. A fascinating recent (well, recent-ish: they've been doing it for ages, but now it seems to have been noticed!) trend is keyboard players using guitar pedals to process their keyboards, and so you now have stereo in and out, very high quality, smoothly sophisticated 'effects' boxes like the Strymon 'Big Sky' (and others). There are some fascinating YouTube Channels on the topic too - JHS Pedals is a stand-out example, and Josh Scott is a totally watchable, hugely informed, completely immersed 'pedal' guy, and imho he is one of the best of many...

So you would be forgiven for assuming that you can get commercial pedals that do just about anything. I certainly thought that this was the case, based on everything that I've ever seen, plus spending 3 days at NAMM in Anaheim once - something that I think every hi-tech musician should do once in their lifetime! So no-one was more surprised than me when I couldn't find a pedal that did something that is one of the standard features of my track strips in Ableton Live:


Actually, nowadays I usually have an Effects Rack that has common controls for the Auto-Filters plus two separate Auto-Pans set to act as two individual mono Tremolos. Sometimes I hark back to the S&H Filter sound by doing this to the tremolo...


Anyway, I've been planning an update to my live rig for a while now, and so one obvious thing to add to the spreadsheet was a Filter/Tremolo pedal... So I looked for one.

And I looked for one.

And I tried harder, assuming that I was calling it the wrong thing. I obviously wasn't looking properly...or in the right places, or in obscure places... or in very obscure places...

 But I didn't find one. Which kind of broke my assumption that there were:

Pedals that can do anything you might want!

But, of course, there are! You just need to go outside of commercial 'off the shelf' pedals and into 'program your own' pedals. So I reached for my 'go to' solution : the Rebel Technology OWL Pedal. Originally purchased because a 'name' producer asked me if I could make a pedal that did something really unusual, which I did, and it has been with me ever since! It gets used some of the time as a rapid prototyper for ideas, as well as part of my live rig when I don't want to take a full pedal board with me.


Programming simple audio processing concepts like 'filter followed by tremolo' is completely within the remit of Cycling 74's Gen, which is the lower-level, sample-rate processing, high performance bit of Max (and MaxForLive). It took me a few minutes to have a prototype up and running, and slightly longer to get that onto the OWL pedal because I'd forgotten how to do it since I last did it. I'm intrigued by the way that modern life has all sorts of complex processes that you can learn, use intensely for a few days or weeks, and then not use again for months, and by then you've forgotten the fine details. Maybe I'm just the Patrick Stewart version of Professor Charles Xavier, and not the James McAvoy version...

Inside...

Anyway, here's the startlingly non-innovative code in Gen:


Yes, that's a resonant low-pass filter, two LFOs and two multipliers acting as VCAs. Having two LFOs modulating the volume of two channels is something that I like because you don't hear it very often - it is easy to do auto-pan across the stereo image, but this isn't that, it is two-channel mono tremolo with the outputs panned hard left and right. On drums, it gives a little bit of animation, but it definitely isn't the 'panning back and forth across the stereo image' that you sometimes hear. Probably not a 'gated reverb' that will become THE sound for a while, but I think it sounds interesting, and it was different until I wrote this...

Should you want it, you can now find my 'DrumTrem' patch on the Rebel Technology web-site, which kind of proves that there really are:

Pedals that can do anything you might want!

It's just that they may not be available 'off the shelf', and you may need to program them yourself. 

Beyond

Apart from the OWL Pedal, there are pedals like the Mod Duo, the Mod DuoX, the Empress ZOIA, the Zynthian, as well as more computer-oriented devices like the Blackaddr Arduino Teensy Guitar Audio Shield (lots of options!), Axoloti, Aida DSP, and the Bela.io / Rebel Technology SALT module, as well as the modular version of the OWL pedal from Rebel Technology. There are lots of other examples out there, because this is a fertile area for Kickstarter and Indiegogo projects, and lots of undergraduate computer science students keep having the same idea of making a programmable effects pedal... Programming languages for all of this diverse range of hardware solutions are just as varied: C, C++, Gen, PureData, Faust, LV2, Nyquist, BALibrary or PJRC's Audio Library for the Arduino Teensy Guitar Audio Shield, and various varieties of assembler for SHARCs, Cortexes, Spin FV-1, and more. In this paragraph I have gone through a huge range of possibilities: from simple 'visual programing' stuff to VSTs to low-level DSP assembler, and commercial through kits to DIY homebrew. This list is in no way comprehensive - it is an incomplete sampling of the available. Do not be overwhelmed. The rabbit hole basically goes as deep as most people can cope with, and then well beyond that...

(Be cautious when pledging to audio and music products and kits that are crowd-funded - make sure you understand what you are doing when you make a pledge... Also you should be aware that some audio and music products and kits may be from very small companies, and so the availability, support and longevity may vary... As always: do your research before parting with your money!) 

My days of writing DSP code on Motorola 56Ks are long-gone (along with the pizza and cola diet), so I'm perfectly happy with high level abstractions like Max, and slightly lower level sample-rate 'critical section' stuff like Gen. But I'm sure that some readers are already planning on reading up on Analog Devices' SHARC assembler... 

Links in this post

C

Modular Equivalents

In terms of basic modular equivalents, then implementing DrumTrem is pretty straight forward: you just need 2 VCFs, 2 LFOs, and 2 VCAs, although you could add 2 extra LFOs to drive the VCFs cyclically as well. Anyway that is an ME of either 6 or 8. One of the often overlooked advantages of modular synthesizers is that you can easily do exactly this type of unusual effects routing and tweaking. My advice would always be to explore the flexibility that modular patching gives you, and not to just make a modular equivalent of an ordinary monosynth because that's what you are familiar with...

Pedal Equivalents

This is trickier. Whilst you can find various EQ pedals, a straightforward low-pass resonant filter is much rarer, and finding one with easy access to controls like Cut-off Frequency can be awkward. I found several pedals which were variants of auto-wah, and which had minimised the number of rotary controls, and so didn't really give you access to the simple cut-off frequency control (and resonance) that I like. Tremolo pedals seem to be mono, and so you would need two of them to get the dual rate two-channel tremolo that I mention here. All in all, this might be an expensive way to see what it sounds like!

---

If you find my writing helpful, informative or entertaining, then please consider visiting this link:









Saturday, 30 May 2020

MIDI Interfaces I Have Known and Lost...

MIDI Interfaces have been a big part of my life for more years that I care to think about. Nowadays people buy audio interfaces for computers, and these often come with MIDI In and Out ports, almost as an after-thought. But it hasn't always been like this. When microprocessors were less powerful, processing audio 'live' in the way that we expect nowadays was at the limit of possibility, and so simpler and less processing power hungry alternatives were used: Rectangular waveform 'bleeps' and tracker software were the order of the day, plus MIDI of course.


So I have used quite a few MIDI interfaces over the years, and quite a few computers as well. One thing has become very apparent to me over this time:

MIDI Interfaces have a limited lifetime...

This is for various reasons, and almost never anything to do with the MIDI interface itself: sometimes the interface technology becomes superseded (parallel ports on computers like the BBC B, for instance), or sometimes the computer itself becomes obsolescent or obscure and non-mainstream (the Atari ST, for example). Sometimes manufacturers just stop supporting devices, of which more later. So I have, or had, quite a lot of MIDI Interfaces that still work, but that can't actually be used because they aren't supported, there's no interface to a computer, etc. Today's hi-tech is tomorrow's land-fill, although I'm a bit of a hoarder for some things, but not everything!

History

Before MIDI, my first 'home' computer was a Sinclair Spectrum, which was right at the start of an explosion of home computers (and the CD came in at about the same time), and I also got a Mattel Aquarius, the less said about the better (although it was a bargain at the end of the boom!). 8-bit micros used for playing games aren't noted for their audio fidelity, and modern 'chip tunes' sound much better than I remember...

I then got a BBC B Micro, and built a DIY BeebMIDI interface, which was designed by Jay Chapman. You can read about it in the amazing mu:zines archive, and it accompanied an in-depth series on building a MIDI interface that was featured in Electronics & Music Maker, a precursor to Sound On Sound magazine. Later, I reviewed the UM-4M add-on for the 'BBC B', which was, at the time, at the 'Pro' end of the market, and it prodded me to get more serious about music and MIDI...

On the BBC B, I wrote various MIDI programs, an FM emulator, and more... I also got a phone call from Acorn computers, the manufacturers of the BBC B, who told me that my assembler code for the 6502 in one of my DX7 MIDI programs was faulty. It turns out that I had got a pointer wrong, and so was dumping the entire memory contents (32 Megabytes!) through the MIDI Out port, instead of just the Sysex memory block that I meant to transmit... Oops!

I then got a Toshiba MSX computer, but I always wanted a Yamaha CX5M... I eventually sold it to a guy who wanted it just like I had, because it was going to be the next big thing... It wasn't and didn't.

My next computer was the Atari ST, which had MIDI sockets built in! (More than 30 years later, this probably sounds unbelievable... but it is true!) Curiously, it wasn't easy to find a photo of the back of an ST, but I found one from a retro computer museum that has a pretty amazing collection. Visit and have a look, and if you have any old computers...


For anyone who thinks that the 5-pin DIN socket used for MIDI is strange, then look at that power socket: a 7-pin DIN male connector to a large 'brick' power supply! The 1980s were also the days when computers had 'Reset' buttons...

I did a dual boot-ROM mod to my Atari 520, and expanded the RAM to the full 1 Meg (as in the 1040 model) and did various other tweaks. Eventually it died, and I was given a replacement by the London Synthesizer Service Centre, but that died as well, and the days looked numbered for the Atari as a music platform. So I parted company with one Silicon Valley startup, and jumped over to another.

My first Apple Mac was a Macintosh Plus - you can see it in this photo... But whilst I lived through the astonishing 'HyperCard' launch (I stayed up all night, programming, and all the following day...), eventually I knew I needed more screen real estate. My first 'big screen' Apple Macintosh was a Mac IIsi, and it was a combination of many compromises to get the price down, but it served me well, and set me on the path to bigger and better things.

The MIDI Interface I used for quite a while was the original Opcode MIDI Translator - a small (beige) cream-coloured box with three MIDI Outs on one side, and, on the other side, a MIDI In socket plus a small circular connector that connected to the Mac's serial port - which had two icons revealing what serial ports were used for when the Mac was first designed: a Printer and a Modem. I had a home-brew MIDI switch unit that I used to enable the use of a master keyboard or sequencer and so solve the 'Local Control On/Off' problem, plus I used a Philip Rees V10 ten output Thru box (Philip Rees stopped selling MIDI accessories in 2005). But as my MIDI gear grew in numbers, and particularly with lots of Sysex patch dumping and patch editing, I realised that I needed something where I had better control over the interconnections, and a MIDI interface with more ports was required - a MIDI 'patchbay'.



Eventually I went for one of the 'high end' solutions: Studio Vision Pro and a Studio 5LX 15 In, 15 Out MIDI Interface which allowed all sorts of amazing functionality including the creation of virtual MIDI instruments... Unfortunately, after only a few years, the demise of Opcode meant that I had to retire this MIDI interface, and move on...

Once again, I did the research into the available devices, did SWOT analysis on the Strengths, Weaknesses, Opportunities (Upgrades, Support) and Threats (Longevity of the company...), and made a difficult decision...



I chose the M-Audio MIDIsport 8x8/s, a pair of which provided similar functionality to the basics of the Studio 5LX. However, M-Audio stopped supporting this MIDi interface many years ago, and the driver and control software no longer runs on current Macs. I also had been using an M-Audio FireWire 410 audio interface, and again, support for this was dropped by M-Audio some years ago. So if anyone wants a fully working pair of MIDIsport 8x8/s MIDI Interfaces and a FireWire 410 Audio Interface, then just make me an offer!

I have another piece of M-Audio gear, as well, which also had support removed, so that's three out of three for me.

And Now...

For my most recent move, I selected iConnectivity, and bought an iConnectMIDI4+, which has a lot of features and which has worked well for me, albeit with some minor problems (today's complexity seems to bring equally complex niggles with it), but it is very rugged! But whilst the new 'MioX' devices are definitely the focus of iConnectivity's marketing now, the iConnectMIDI4+ did get a firmware update on the 4th of April 2020, and the iConnectMIDI4+ is listed as being supported by the new 64-bit Auracle-X control software (with some caveats...).



So things are looking good at the moment, although the mioXL's 8 In 12 Out does look very nice, but I might go for a 4 In 5 Out mioXM so that I have a current product in my portfolio without breaking the bank.


And as 'backup', I have the MIDI Interface in my Focusrite Scarlett 2i4 (2nd Gen) if there are any problems, and based on the amazing upgrade and support that Novation have provided for the Circuit (8 firmware releases with some major additions over the past 5 years since it was launched) then I'm pretty confident I will be okay for most unexpected eventualities. Plus, Focusrite do make some very nice audio and MIDI interfaces with lots more I/O ports if I need them...

If I was to sum up my current attitude, based on my experiences, then it would be something like:

Avoid being totally dependent on a solution, because it will eventually 'evaporate' for one reason or another, often quite quickly, and be prepared to keep moving to current, supported equipment. 

Which actually applies to all hi-tech music equipment, and computers! 

Conclusions

In 37 years, I have had six different MIDI Interfaces, so six years per interface isn't bad (and to be fair, way more computers have come and gone in my studio!). I dislike throwing perfectly functional equipment away because it is no longer supported by communications interfaces, drivers, software or operating systems, but that's the nature of rapid technological development. However, I am very aware that, over time, audio has changed from something which was stretching the processing power of even top-end machines, to something where real-time processing of multiple tracks with multiple plug-ins is widely available on even modest computers.

---

If you find my writing helpful, informative or entertaining, then please consider visiting this link:








Wednesday, 20 May 2020

A Synthesizer Programmer looks at Spitfire Audio's BBC Symphony Orchestra Discover plug-in...

What started out as a short review of Spitfire Audio's BBC Symphony Orchestra Discover has grown somewhat. Below you will find a review, followed by how I produced an unusual demo, and then some deeper synthesis explorations. I will start with an intro...

I've programmed a few sounds for synthesizers (including the E-mu Morpheus, Vintage Keys, Yamaha DX7, SY77, SY99, TG33, FB-01, TX81z, AN200, DX200, SY200, RY30, Kawai K5, Peavey DPM3, Korg Wavestation, Roland D-50, Novation Circuit, MonoStation, and lots of virtuals: Sprike, Amazing Noises Pulsor (I also wrote the 'Alternative Manual' for the Pulsor...), and lots more for Ableton Live software instruments, plus all the ones that I can't talk about...). Sample library wise, these days I tend to make my own, using Ableton's Sampler/Simpler inside Instrument Racks, or Native Instrument's Kontakt.


So it was quite a departure when I got tempted by the advertising from Spitfire Audio for their BBC Symphony Orchestra Discover - the lowest cost option of the three versions of the BBCSO sample libraries. Previously I had dabbled with the amazing LABS samples from Spitfire Audio, as well as the astonishing Pianobook.co.uk library, but this was the first time I had actually bought a real product from them - they normally target film and tv composers, so I'm perhaps a little outside of their usual customer base (Although the BT 'Phobos' synthesizer does look very interesting!) So this 'Purchasing from Spitfire' experience was a first for me, despite having been to several 'music industry' events at Spitfire Audio's HQ in Tileyard, north of King's Cross in London, England.

It has been quite a few years since I last did a review for Sound On Sound magazine, so bear with me as I warm up for a blog post review... Here's how it went from here, plus what I did with Discover, and more...

The Purchase Experience

The first shock I got was the 'Welcome to the Family' email, which thanked me for buying a Spitfire Audio product, and giving me links to videos and other support material. (including a fascinating article from the in-house 'Composer' magazine about scoring the Lego 'Builder's Journey' mobile phone game.) It felt very much like the opening page of a synthesizer owner's manual! I also got an email which told me that my purchase was ready for download, and this was when things diverged from what usually happens - there wasn't a download link in the email! (Deliberately, of course!)

Instead you go to the Spitfire Audio web-site and download their App, which is a special download manager just for Spitfire Audio products that runs on Mac or Windows computers. (I asked Spitfire Audio Customer Support about Linux, and Luke said: 'I'm afraid Linux is not supported currently, though whether this will be supported in the future I am uncertain!') The Spitfire Audio App is small (the installed app occupies a mere 22.1 Megabytes on my SSD), and graphically straight-forward (crisp clean and minimalistic - with graphics only were it needs them: for libraries!):


As you can see on the screen-shot above, you log into the app with the same details that you used to create an account on their web-site, and the App then shows you what products you can download, and handles all the downloading, plus repairs to libraries or plug-ins, as well as downloading and maintaining the LABS freebie samples.


Here is the screen that shows the free LABS content - all the graphics is used for the content, not the User Interface. From the buttons (or lack of them) it is possible to infer that I have installed the 'Choir' and 'Frozen Strings', that I need to update the 'Amplified Cell Quartet', ad that I can install the 'Charango' (a type of guitar), the 'Drums', the 'Dulcimer', the 'Electric Piano' and the 'Hand Bells'. Did I mention that these are free? Did I mention that there are more free samples on Christian Henson's 'Pianobook.co.uk' website?

Note that this use of sample management software in the App means that you need to run the App on a computer that is connected to the Interweb (aka the Internet), so if you have a 'music' computer that is deliberately 'isolated' then you will need to connect it temporarily... Also note that there isn't any messing about with serial numbers or authorisations - all of that is handled by the App, and you don't need anything other than the App and your log-in details.


The 'My Products' page is just a little bit sparser (I would love to buy all of their libraries!), although I think that Spitfire are missing a trick by not having another tab for a Wish List, because that would be full to bursting for me - there's a particularly interesting product from BT (Brian Transeau, the 'make one loop per day' guy) which is a novel synthesizer that uses lots of carefully curated samples and a lot of processing. Almost a perfect match for my interests in every way, and I wish that I had the money!

The Spitfire Audio App is an interesting decision that says a lot about the way that Spitfire value and understand their customers. Providing a single 'sample library management tool' to people streamlines the install, update and maintenance overhead, particularly if you have lots of large sample libraries, and it must simplify the customer support as well.


When you are used to just getting a download link and downloading a zip file, then finding it, unziping it and then trying to figure out exactly where you put the expanded contents, then this was definitely different - very Professional, and very 'Supportive'. Quite a contrast to my experience with installing software from some other campanies, I can say! The downloads didn't take very long - and as you can see in the screen-shot above, the library download is under 200 MB (yes, that's an orchestra plug-in in there!), and the plug-in download is well under 200 MB as well, and the App then installed the files into the proper locations, and that was that. Possibly one of the least demanding installs I have done in quite a while!

The cog-wheel menus on the right hand side of the window are interesting - they reveal more of the 'not just a downloader' philosophy behind the App: Repair for fixing those samples that mysteriously acquire errors (Gamma particles? Aliens?, Wear-and Tear?, Just one of those things?...), Locate for when you need to find where you stored that sample library, Optimise for, well, optimising, and Reset for when repair fails and you need to download a fresh copy again. Again, I suspect that many customer support queries are probably resolved using this menu...


Opening Ableton Live, the Plug-ins part of the Browser now contained BBCSO Discover VST and AU plug-ins, and so I dropped the AU plug-in into a new track, got the usual plug-in widget in the Clip View (what I think of as the 'track strip'...), and clicked on the 'Spanner' icon to open the plug-in window...

The Plug-In

The BBCSO Discover plug-in window has a big graphic of the layout of an orchestra, which is used to select instruments, and various other controls, menus and buttons. This serves as a simple metaphor, but the white background and primary colour look also differentiates Discover from the Core (Grey) and Pro (Black) versions which don't have this graphic at all. The window is re-sizable, but some of the text is very small, especially on a very old MacBook Pro screen with not very many pixels on it! The resizing wasn't obvious at first glance, but there's a tiny button with the usual double-ended diagonal arrow symbol on it, and that minimised the window, at which point the lower right hand corner acquired a set of diagonal lines to indicate that you could drag it to re-size the window. I reported this as a potential bug, of course, and I will update this blog post with progress.


After everything so far going pretty smoothly, it was a little disappointing to see that there are two 'settings' menus in the upper right hand corner of the window... One is the 'ellipsis' three-dots that usually means something like 'more', whilst the other is the more obvious cog or gear-wheel icon.



Having the setup spread across two different menus is a little awkward, and I couldn't find out how to save settings so that my MIDI Velocity mapping preferences didn't need setting again every time I added the plug-in to a new track, but I'm sure there must be a way, and if not, then I will suggest it as a 'new feature request'.


The user interface is clean and mostly clear, and although there are some unusual icons, pop-up explanations appear in the lower left hand corner if you hover over them hesitantly with your mouse.


The large colourful graphic shows the section of an orchestra, and a click on any of the sections selects you that instrument, plus the available techniques for playing it. If you select Strings: Violins 1, then you get four techniques: 'Long', 'Spiccato', 'Pizzicato', and 'Tremolo', complete with the music score symbology (Over the whole library there are 47 techniques available). If you click on the drop-down menu at the top of the screen then you get a more detailed screen that shows a more text-oriented (and accessible) way to choose from the 33 instruments.


On the left hand side of the window there are two vertical sliders: Volume ('Expression') on the left, and 'Dynamics' on the right.


The dynamics slider controls the velocity switching layers, except that in Discover there is only one layer of sample - to get more layers you need to move to the Core or Professional versions (More money gives you more layers, techniques, microphone positions, round robins, etc. Plus there's a 'Mode Switching' feature which means that you can play MIDI files from any of the versions on any of the other versions - with mapping for where techniques, layers or microphone positions are missing...).


I didn't mention it earlier, but the Discover version is only £49, $49, or 49 Euros - and if you are willing to fill in a form and wait two weeks, then it is free. So in Discover, the Dynamics slider acts as a volume control, and in the '...' settings menu there are four options to control how dynamics is mapped to incoming MIDI velocity or the modulation wheel. Yep, this isn't a synthesizer, and so the mod wheel isn't automatically defaulted to LFO vibrato! Instead, the mod wheel (MIDI CC 1), or your favourite MIDI Controller, is used to control the dynamics. As I mentioned before, the default mapping of the least velocity sensitivity isn't my preference, but I couldn't find out how to set my preference, although I will ask Spitfire Audio's customer support. As an aside, having downloaded quite a lot of the free LABS samples, Spitfire Audio's support has always been excellent, even for free stuff!


Over to the right of the two sliders is a big rotary control (something of a feature of all Spitfire Audio user interfaces, it seems...) that controls the reverb level. Yes, this sample set was recorded at London's famous Maida Vale studios (the BBC will relocate most of the recording operations to Olympic Park in Stratford by 2023-ish) and so the samples in the Discover set do have some room ambience in them even with the control set to zero, but at 100% then you get a very nice real reverb from Studio One at Maida Vale sound studios. So you don't seem to get a completely dry 'close mic' signal in Discover,  but it sounds very usable! As always, if you want 'more' (mic positions in this case), then you should upgrade to the Core (£399, although currently on offer at £250.01 (!) until 31st May 2020) or Professional (£899, although currently on offer at £630 until 31 May 2020) versions.

After that, it's just fine detail at the top of the window, and we enter territory where pro reviewers devote paragraphs to describing each and every button and menu. I'm not going there! Suffice it to say that there seems to be plenty of control and you get a very strong impression that Discovery is just a carefully crafted 'essentials' sub-set of a much larger, more detailed product, and not an incomplete teaser. Exactly what you would expect from a company with huge experience of making orchestral (and related) sample libraries for composers! Which takes me to the next phase of this post: trying it out...

Using It

Spitfire Audio have lots of support material on their web-site, and the very first one that you are directed to post-purchase is a YouTube video where Christian Henson, one of the two founders of Spitfire Audio, shows how to turn an Erik Satie piano piece into an orchestral version. There's a lot of good advice in there about how to do orchestral arrangements 'Anyone can do it!', but I decided to ignore all of it, have some fun, and approach using Discover as if it was a synthesizer library. Here's just some of what I did wrong...

I decided that I definitely wasn't going to take a MIDI file of a classical piece and orchestrate it - even though many synthesists have done that at various times. Nor was I going to play a piano piece and then convert that. Nope. Instead I went 'old school' DAW, and started with a blank canvas and just made up a bass part. Nothing complicated, and I defer to Tantacrul for his far superior expertise in this particular area of music theory. (His YouTube channel is very good too!)


My attempt at simple and not clever or subtle was just five notes (C F A G D), evenly spread out over 10 bars. Yep, deliberately breaking the 'every 8 bars' rule with my first phrase! I used the Strings: Basses playing with the 'Long' technique because I have always had a weakness for Double Basses!


For the percussion, I avoided the 4/4, 120 bpm, four-to-the-floor bass and snare cliche, and instead went for minimalism: a single Tubular Bell hit, and again, I broke and followed convention simultaneously by having it happen at an interval of '1 bar and 1 beat' , but with a 4/4 120 bpm clock. So every 5th beat, the tubular bell hit happens, as 10 bars of bass slowly grind in the background. Not formula pop, and nowhere near the heights of Ultravox's Vienna.

A synthesizer pad was next, and here I actually followed Christian's advice about using monophonic lines per instrument. I did a descending set of four very obvious notes (C A G F) derived from the bass line, and assigned them to Strings: Violins 1, playing the 'Long' technique again.


Next I assigned an arpeggio to Strings: Celli (or Cellos) playing using the (wait for it) 'Long' technique, and yes, it is a startlingly unoriginal arpeggio in just about every way, not jazzy, no rhythmic variation, no velocity variation (more on this later) and lazily quantised. The Interweb probably already has lots of guides called something like: 'How not to create muzak in a DAW', and I just ignored every bit of potential advice I could think of...


The arpeggio is eight notes, and lasts exactly one bar. Looking back at this, then I now think that I should have made this longer or shorter than a bar, (which is bound to turn up in a 'How to do amazing things in Ableton Live!' YouTube video...) but there's always another version to be explored later! From the previous note choices, you won't be surprised to see C D F G A and B in there.


For the second pad track, I set the length at 3 bars, and broke the monophonic line rule (and several other conventions) by doing octaves, and by using the Strings: Violins 1 playing the 'Long' technique yet again. (No! No! No! Use another section!) C D and A are used here, surprising absolutely no-one!


Finally, the lead line, which (Gosh!) used Woodwinds: Flutes a3 (meaning 3 flutes at once instead of a solo flute, apparently) and which lasts 13 bars (!) that kind of only loosely follow bar divisions, and there's a sudden twiddly bit in the middle.


Rather than spend a long time hand-crafting the velocity (mapped to that 'Dynamics' slider which is a volume control in this layerless version), I cheated and used the stock/factory Velocity plug-in to add a bit of random velocity to the fixed velocities that the eagle-eyed amongst you will have spotted in the clip piano rolls.


Above you can see the simple automation applied using the Volume controller. Slow fades in and out everywhere. With this in mind, I synthesized a slow video accompaniment, and you can see the result:


Think of it as my lament for the deprecation of Quartz Composer from macOS - a wonderful technology that sadly never got the attention it deserved. (And a shout-out for Vuo, in case anyone is looking for an alternative...)

The end result highlights how well-crafted the Spitfire Audio BBCSO Discover sample library is. To me, it sounds like an orchestra playing a poorly-composed piece of music without the aid of a conductor! Which is what it is, of course! But whilst the music is bad, the sound is good, although it could be so much better with a little tweak here and there. Now when a sample library can take lazily-thrown-together muzak and make it sound good, then I'm impressed.

(This is an interesting point. Just about every demo that I've ever seen in the music business features a player with alarmingly strong musical ability showing that if you spend years learning your instrument, weeks programming, days building up muscle memory, minutes learning shortcuts, seconds memorising timings and milliseconds acquiring several other arcane expertises, then you can make the product sound truly amazing for about thee minutes! (And then people get bored and go to the next demo...) For me, I'm far, far more impressed when a product manages to make uninspired, lazy throw-away sequences of notes sound good.)

One final thing about what Spitfire Audio have done here. Yes, there are lots of orchestral sample libraries out there on the Interweb, but the ability to take music produced in a £$49 Euro (or Free) Discover version and play it using the Core or Pro versions, with much the same sound (less refined, and with some techniques missing, etc.) should enable a lot of learning, sharing, demoing and collaborations that previously might never have happened because of the problems of finding common resources. And that is both a good thing, and a potential game changer...

Explorations

I'm not known for leaving things alone. All samples are merely things to be pulled apart, twisted, tweaked, processed and then used as raw material for synthesis. And I'm afraid that the Spitfire Audio BCBSO Discover library is no exception. Having used just a few of the instruments and techniques to produce an exploratory demo, I then moved to seeing what those samples could become with a little more tweaking. Here's what I did...


My first exploration looked at the single layer limitation. The composite screen-shot above shows one way to get around this. I worked on the Strings: Violin 1 sound that was heavily over-used in the demo. At the top is the velocity fading/switching pane, splitting the 1-127 range into three slightly overlapping layers. Underneath the velocity screen-shot, the layers are shown in full so you can see them all at once. In the top layer, I added the stock/factory Saturator plug-in to add additional harmonics to reflect the higher velocity, but because of intermod distortion, this only works well with monophonic clips! (Another good reason for creating multiple monophonic lines...) The middle layer is left alone, and the lower level has a filter added to reduce the brightness - Yes, I could have used EQ, but I was raised on subtractive synthesis back in the 60s, and so I prefer a simple low-pass filter with optional resonance as a quick-and-dirty way to take the top end off and maybe add a bit of selectivity. Putting three instances of Discover inside an Instrument Rack may seem slightly unusual, but I create a lot of virtual instruments using Racks, and the results can be well worth it.

Synthesizing missing velocity layers necessarily involves only subtle changes to the sounds, so I then looked at finding some more radical changes (Which could be put into a velocity-layered virtual instrument like the one above, of course! Oops, another secret given away! My advice would be to create an Instrument Rack like the one shown above, and to play with putting different Discover instruments inside it, any maybe even going beyond orchestral sounds by layering in the odd synth sound or two...).


Changing the saturation transfer function (the blue waveshape) beyond the preset 'distortion' settings can produce more complex changes. Asymmetric transfer functions like the one above start out just adding brightness, but as you go to higher Drive settings, then the sound gets fuzzier and the variations in timbre in the 'Long' Violin 1 sound can start to break up. It stops sounding like a violin and becomes more like a guitar through an overdrive pedal, and not in a good way. What is particularly interesting here is that putting synthetic sounds through this sort of transfer function can sound very good, but for samples of real sounds then it isn't as effective - or, given the way that modern pop does all sorts of things that I always thought of a 'just plain wrong', then maybe I should write: 'isn't as effective in some contexts, but may be exactly right for some others'. The takeaway here is thus to use Saturator with care as a way to add a little bit of edge to the sound, but not to go too far. Which could actually be a pull-out quote, since it is good advice:

Use effects to add a little bit of edge to a sound, but don't go too far!

There isn't a choir section in Discover, but this doesn't mean that you can't get similar timbres from it. By using the Corpus physical modelling plug-in, you can use resonance to get some tones that can be very useful. One useful tip is to use the note indicator to set a suitable frequency for the resonance, and you will notice that this is set to just over C3 - if you set it slightly sharp or flat, then you get a nice detune effect - very reminiscent of detuning the oscillators on a subtractive analogue synthesizer.


I used the Strings: Violins 1 as the source material again - but there is nothing to stop you exploring the use of the other instruments! The 'Membrane' preset gives nice results, and just switching to the 'Tube' preset with the settings shown in the screen-shot above is a good starting point for more vocal-like tones - although there is more 'selectivity' in 'Tube' so you get 'tube'-influenced sounds when the input frequency is close to the 'Tune' value, and more of the source sample the further away you go. One very good illustration of where it doesn't work is to use the Percussion: Percussion: Timpani as the source sample for the Tube preset, and you get something which is too far away from a timpani and too much 'tube'-sound. Now when I say 'doesn't work' and follow it with 'too far away from a timpani' then that's the danger with transforming sounds - go too far and you lose the connection with the original sample, and the listener just hears an unusual, unfamiliar sound. Putting some of the original back with the 'Wet/Dry' control can restore some of the sense of the origin of the sound, but it may still sound like distortion, or you may find that getting the Wet/Dry balance right is very difficult.

Two of the staples of synthesized music are pads and stabs: thick sounds with very different envelopes, and in the case of stabs, a rather cliched vibrato. But the rich, thick sound is very useful in all sorts of circumstances, and so I investigated if a similar timbre could be obtained from the source material in Discover.


To achieve this type of sound, I used one of the often overlooked stock/factory plug-ins in Ableton Live:  'Overdrive'. As the screen-shot shows, the filter is set to cut out the lower frequencies and the Drive is full on, whilst the Tone is at just below middle. For the Strings: Basses this gives a timbre which is bright and harsh, and starts to cross over into 'synthetic'. Adding the 'Auto Filter' allows the harshness to be controlled, and below about 1 kHz, you get a thickened version of the Basses. The screen-shot shows the pizzicato 'stab' version, but when you use the 'Long' then there's a fascinating accentuation of the slight changes of tone and you get almost a loop sound instead of the smooth bass sound you might have expected. Putting this underneath a more conventional sound gave it a depth and extra thickness that was not as synthetic in sound as I expected. I must check the result of using this approach instead of the Saturator for the high velocity layer of the Instrument Rack that I showed earlier. I probably tend to think of Saturator as a more subtle effect, but in this context, maybe I need to do more A/B comparisons.

For the opposite kind of thickness: low end grumbles, I just reversed the filter curve:


This produces something which has a mixture of Double Bass growl, with a synthesized fullness - so full that you probably need to EQ it to leave room for other instruments! Once again, you can see my roots coming through here - I'm turning the orchestral sound into something that is a hybrid of real and synthetic.


Adding chorus to the Tremolo technique might seem to be a strange thing to do, and merging vibrato and tremolo ought to give a Leslie speaker effect. But the effect of the chorus accentuates some of the dense high frequency scraping sounds of the violin bow on the string, and it starts to sound rather alien. Replace the Chorus effect with a Flanger and some settings well below the usual resonant tube effect will give weird clunking and knocking sounds that are very non-violin!


Compressing the Pizzicato Violin 1 can accentuate the room ambience amazingly and remove most of the tell-tale characteristics that make a Pizzicato sound like it does. It's a bit like pitch shifting a triangle sample - any pitch other than the correct one doesn't sound like a triangle! Well here, some heavy compression gives an early reflection type of sound, which gets stronger when you layer several notes on top of each other, and with octaves and rapidly repeated notes, it sounds like there's a big echo plug-in. Repeat short notes very rapidly and you start to get nice interesting glassy textures and long reverb tails, and all of this with the Reverb set to zero! With the Reverb set higher then you can get some nice sharp metallic sounds that are well removed rom Pizzicato Strings.

I have always been a fan of repetition processes like flamming, reverse flamming, FOF and granular... So I then filled a bar with repeated short notes (just over two hundred of them...) with uneven spacing to stop it sounding too mechanistic, and tried the Pizzicato and Spiccato techniques, copied the notes to three other bars and did some pitch shifting of a few semitones per bar..


Switching to the Strings: Basses with the Pizzicato technique and transposing the whole clip downwards a few octaves produced a very nice sound indeed, although I did need to drop the Volume control in the Discover plug-in to about 50%. I also added some ping-pong echo to smear out the resulting drone-like atmosphere even further...  Oooh!


As you can see in the Compressor plug-in in the screen-shot above, this processing produces a complex output that has moved quite a way from the orchestral pizzicato Bass origin of the sound. But this hand-crafted variation on FOF (Okay, so it isn't really that because it isn't using sine wave granules!) or granular (Which often seems to be too clinical and clean) is using quite a lot of processing power, but once you sample it, then you have a hybrid sound that has elements of real and synthetic, and that's a very interesting place to be...

A selection of these explorations is available on SoundCloud (link below), but I strongly encourage you to do your own processing rather than just repeat what I have done.


What is particularly significant in all of these explorations is that the natural origin of the samples is often reflected in the way that the processing affects them. I found unexpected sonic details and quirks that I don't normally find in synthesized sounds, and this has set me along a new and unexpected path of research. Discover may turn out to be the start of something much more expansive and exploratory indeed!

Conclusion

My exploration of Spitfire Audio's BBC Symphony Orchestra Discover sample library started as a review, segued into a demo from a synthesist's viewpoint, and then went all exploratory when I started to use Discover as the sound source for deeper sound creation and synthesis. I'm pretty hooked into several aspects of this sample library, and it definitely has possibilities that far exceed its price and intended area of use. Basically, I'm impressed - far more than I thought I would be. Congratulations to Spitfire Audio for making an even more amazing/stunning product than I expected.

---

If you find my writing helpful, informative or entertaining, then please consider visiting this link:






Wednesday, 13 May 2020

Minimalistic octave remapper plug-in in Max For Live for Ableton Live

Gregory Taylor's article for Cycling'74, where he talks about 'One Big Knob' effects plug-ins, made me think...You might have noticed that I'm not exactly a 'minimalistic' user interface person - some might say that I provide too many controls. So I'm trying an experiment...

Recently, I released MIDIchromatixN, a 128x128 MIDI note number remapper that has quite a few controls... Well, I have just released the exact opposite, a remapper with one big rotary control, and one small rotary control! It does something different with remapping, but the core code for doing the remapping is identical - the differences are all in the fine detail of the controls and what they do. Because I really wanted to boil it down to a single 'big knob', but failed, I have called it MIDIchromatixONE, in an attempt to distract you from the two controls.

MIDIchromatixONE


MIDIchromatixONE creates inversions of notes or chords in sequence clips - musical transformations of some of the notes, and not the 'invert' function where low notes become high and vice-versa. There are two controls (but you already knew that!); a big 'Map' rotary control that selects from the initial  20 presets, and a smaller 'Pitch' rotary control that 'tunes' the internal mapping to suit different input notes. Preset number 1 on the Map rotary control is a 'Thru' setting, where notes pass through unchanged, so it is more accurate to say there are 19 presets (at the moment) that do stuff other than nothing. The presets are arranged in 5 groups, based around modifying in groups of twelve notes, six notes, four notes, three notes or two notes. In each of the groups, the mapping starts out sparse and open, and gets more complex and thicker for higher numbered presets. So 'Preset 5 : Six Notes 1' is simple, whilst 'Preset 8 : Six Notes 4' is complex. The best thing to do is to put some notes from a clip through it, and listen to the presets.

The Pitch control shifts the internal mapping by up to +/- 24 semitones. This doesn't mean that it pitch shifts the output, it means that the way that the remapping is done can be shifted by 2 octaves up or down. I did wonder if I should call it 'Tune' instead of 'Pitch', but the word 'Tune' sounded too vague - this is one of the 'not fully nailed down yet' bits of the design, so it may still change in the future. Again, the best way to see what it does is to put some notes through it and to listen. Kind of what you might do with a plug-in with just 'One Big Knob', really.

Note really a control, the '!' button is a 'Panic' button that attempts to clear up any hanging notes, and also sends an 'All Notes Of' MIDI Controller message. I did think about restricting the Map button to changes only when the Ableton Live transport was stopped, but discovered that using an LFO to change the presets was rather cool, so I didn't put any limits on it - which means that if you change the Map button whilst a chord is held, then you may get held notes... Take care!

Inside

Inside MIDIchromatixONE, there are lots of lookup tables, kind of 'hand crafted' by myself, using assistance from a variety of tools that I wrote in Max For Live. (Which may or may not be a good thing - there's certainly quite a lot of 'tool artefact' in most of the presets... This might end up in a blog post one day - how do you avoid your tools affecting what you do?) I used source note clips from monophonic 'synth' sequences and polyphonic orchestral arrangements, and deliberately went for a range of effects, rather than just choosing the most complex ones - kind of how you would create presets for a real device...


The screenshot above shows part of the development environment for MIDIchromatixONE, where I'm using my 'Huge Noter' tool devices to show the input and output notes. Eagle-eyed viewers will also spot that I'm still in my 'Muted Impure' phase...


And above you can see just one or two of the simple tools that I use to assist me... Normally, you never get to see what happens behind the scenes... One programmer that I know told me that his tool-to-release ratio was about 100:1, so he wrote one hundred times as much code for the tools that he wrote to enable him to write the one final device that he then released.

Sometimes tools and utilities DO get released - examples from me on MaxForLive.com include the following:

- Aud Colours (inspired by Adam Neely @adamneelybass)
- Huge Noter (big display of notes, as used in this blog post!)
- DLS Helper N (Explore MIDI DLS...)
- MIDI cc tool (MIDI Continuous Controller message analysis...)
- MIDI cc  (simulation of a MIDI Continuous Controller...)
- Wavetable Creator ('512 sample' wavetables are increasingly becoming 'retro', these days...)

Regular readers may have spotted that one of these is closely related to my 'should be famous' M4L device which still has zero downloads!

Demo

There's a demo on SoundCloud here. It starts off with 16 bars of plain source material, then fades out and is followed after a pause of one second, by the same material processed by MIDIchromatixONE with a slow LFO running gradually through all of the presets - even the 'Thru'. There's also a bit of probability-based note pruning and some added random velocity from my MIDIprobNV plug-in. they sound gratifyingly different, at least to my ears. The material is not quite in 'Lamb of God' territory... and it isn't done using the Spitfire Audio BBC Symphony Orchestra Discover! Instead it uses an edited version of one of my 'mrOrchestra' Instrument Racks, and so exploits some of the articulation capabilities very nicely. (which is based on 'Quick_Arranger', which is still available...) I really should do another blog post about the 'Quick_Arranger' Instrument Racks...

In Use

MIDIchromatixONE doesn't do anything other than a few note transpositions, which sounds easy and trivial until you look at all of those lookup tables. My advice would be to start with Preset 1: Thru to create your clip, and then to audition the presets and find one that you like the sound of. There's a tiny bit of influence from the MiniMoog front panel design for waveshape selection, because the presets tend to get more complex and thicker as you go to the higher values. This doesn't mean that Preset number 20 is the best, of course! Don't forget to explore fine-tuning things with the 'Pitch' control, and remember that the effect it has depends on the source material, so don't expect huge changes!

One important thing to remember is that MIDIchromatixONE is not your standard effect plug-in. It is perfectly possible that many of the presets will have little or no effect on most of the MIDI Notes that you pass through it. Conversely, it can change notes in ways that would take quite a lot of manual editing time. Finally, the presets are my first pass through creating ways of using the underlying transposition engine - I intend to make more presets (probably less than 107 more!) for a future update when I have time, and these might use the tools less and be be done with more manual editing of the tables - I did worry that the tools were doing too much of the driving...

A final thought: the presets so far are very tame: chromatic and very constrained inversions. If you look at MIDIchromatixN, then there's lots more power lurking in the underlying engine... In the 107 available preset slots that are left (can you figure out why?) then there is space for more 'challenging' presets, but would people like something that would produce discordant outputs? For a while I have been considering releasing some of the 'broken' abandoned devices that don't, and in many instances, can't work properly, or whose output is imperfect in some way. Maybe MIDIchromatixOOPS will get released one day...

Getting MIDIchromatixONE_mr

You can get MIDIchromatixONE_mr here:

     https://maxforlive.com/library/device/6273/midichromatixone

Here are the instructions for what to do with the .amxd file that you download from MaxforLive.com:

     https://synthesizerwriter.blogspot.co.uk/2017/12/where-do-i-put-downloaded-amxd.html

(In Live 10, you can also just double-click on the .amxd file, but this puts the device in the same folder as all of the factory devices...)

Oh, yes, and sometimes last-minute fixes do get added, which is why sometimes a blog post is behind the version number of MaxForLive.com... and pictures may not always be the current version... but Schrodinger's cat's status is permanently uncertain...

Modular Equivalents

In terms of basic modular equivalents, then implementing MIDIchromatixONE_mr is just about as awkward as MIDIchromatixN, even though the transpositions are much simpler. The 'mapping' of the 128 MIDI notes is the problem, unfortunately, and I still haven't found a neat solution. The Make Noise 'Maths' module starts to get somewhere close, but not entirely. The Expert Sleepers 'Disting mk4' also gets close, and maybe the Quantizer can be tweaked suitably, or possibly the Waveform Animator, maybe. But I couldn't find a direct equivalent. This means, of course, that I will get a comment pointing me to a classic module that I have overlooked, or never heard of, or forgotten, or didn't know about - there are lots of modules out there. Anyway, until then, I don't have an ME for this device...

The obvious solution goes outside of a purist interpretation of 'Modular' and 'DAWless' synthesis, and takes us into 'Hybrid' territory: use a dual DC-coupled 'audio' interface to connect Ableton Live into your modular system so that you can use MIDIchromatixONE (or N).

---

If you find my writing helpful, informative or entertaining, then please consider visiting this link: