Audiobus: Use your music apps together.

What is Audiobus?Audiobus is an award-winning music app for iPhone and iPad which lets you use your other music apps together. Chain effects on your favourite synth, run the output of apps or Audio Units into an app like GarageBand or Loopy, or select a different audio interface output for each app. Route MIDI between apps — drive a synth from a MIDI sequencer, or add an arpeggiator to your MIDI keyboard — or sync with your external MIDI gear. And control your entire setup from a MIDI controller.

Download on the App Store

Audiobus is the app that makes the rest of your setup better.

Encoding Envelope and LFO Structures into .wav files and their functionality in iVCS3

New tutorial thread to explain the CV .wav Files that accompany my (JEC) preset banks in iVCS3 and how users can load and patch them in their own presets...

Firstly consider a .wav file...
It contains data not actual audio. In other words it contains a string of numbers that REPRESENT an Audio Wave which is a Change of Amplitude over Time.

Now consider an LFO wave...
This is also a change in amplitude over time thus it is possible to describe a low frequency wave using the .wav Audio File Format.

Now consider an Envelope...
Take a Sine wave and apply an amplitude envelope... The human ear perceives an overall change in amplitude over time...

Familiar? This perceived Change in Amplitude over Time can also be described by data in an .wav file...

So the benefits of this is that as a .wav file can be created with whatever structure we desire, we can then use standard audio busses to transmit these structures and effect destinations...

In the case of iVCS3 one of these .wav Files can be loaded (like a standard audio .wav file) into iVCS3’s Sampler Inputs and then be patched via the Matrix to Modulate Destination Parameters...

Comments

  • So basically a bit like making envelopes from audio sources with FAC Envolver? Pretty cool.

  • edited November 2020

    Just bought your Bank A patches for the mod files. As it turns out, they can be loaded into Drambo's DC coupled sampler, Flexi. I tested it with your pizzicato envelope and a triangle wave so far - works flawlessly. Saving modulation as samples is great - especially because you can apply sampling techniques (chop, reverse, offset, slice #, key track, etc) to those mod files. If you haven't given Drambo a shot yet @JEC , I'd highly recommend it. You're sure to get your money’s worth for the modulation file generation and DC voltage sampling alone.

    Your triangle file modulating osc FM depth.

  • Thanks @JEC. I should spend more time with iVCS3 😋
    This and iOdyssey are my current GAS killers 🔥

  • @aleyas I will have A look thanks, I also demonstrated the idea using miRack👍

    Taking the idea further...

    Once the sculpted data is in a.wav file ALL audio processing can be performed on it, both hardware and digital... The files can also be loaded into a DAW enabling the DAW to be used to sequence any manner of modulation purposes, for example a described LFO loaded into a DAW could have automation applied in a similar way to midi CC tracks, the LFO could also have an evolving structure or different LFO Structures could be cross-faded. Envelopes could be processed with delays or any other effects.

    This all works in both software and hardware domains... The concept was proven using a hardware EMS Synthi AKS opening huge new sonic possibilities and the JEC .wav CV files were loaded into a Korg Kronos HD1 Engine as a multi-zone multi-layered multisamples so that different Envelopes were triggered, depending on key note number and velocity, and sent to the audio outputs to be routed to destinations. Indeed with it’s 6 channel audio output many CV parameters could be output concurrently to control 6 separate destinations (CV Synths, Modulars, Eurorack etc).

    Another application I did a few years ago in iVCS3, was to encode dual files, one, a pitch sequence with glides and the other, a gate sequence thus making an extremely high resolution sequencer which could be as long as one desired limited only by the memory allocation of the sampler module used.

    Of course as a single file can be routed to multiple destinations different synths can utilise the identical modulation source for unparalleled levels of synchronisation...

    All great fun LOL 🎶👍

  • Here is the envelope graphical representation I used during my 2019 International Csound Conference lecture...

    and this is the pertaining controls in iVCS3...

    The concept paper can be found here in PDF Format...
    https://csound.com/icsc2019/proceedings/11.pdf

  • edited November 2020

    Just a fun fact...
    ...using a sample as a modulation source is very easy to do in SunVox and it's sampler even has nice tools to draw / finger paint the waveform or record output from LFO modules, Audio Input etc.

    (It's a very common 'thing' when looking at some of the more advanced SunVox music files).

    (Tutorial)

    So just like Drambo, SunVox can be used to create *.wav files that can be used for modulation :)

  • @JEC Just got iVCS3 and several of your patch packs. Fun synth, and your patches are great. Thanks!

    I've seen a lot of talk about using WAV files in iVCS, but not much about making them. Even more, I didn't just want to make a CV WAV file. I wanted to be able accept an active CV input to iVCS from an external generator in AUM.

    James, I believe you demonstrated this somewhere, but I couldn't find it. So just commenting here on what I did. Can you link your miRack to iVCS example?

    My workflow for doing a CV WAV file is to start with miRack in AUM, setting up some kind of sequenced or variable CV output. See pictures below.

    As a simple example, in miRack, I ran the output of a pair of LFO's to two separate channels of a mixer so I could adjust amplitude. Then I ran the mixer output to the miRack output. Two LFOs interacting through a mixer by itself can generate a lot of variation, but you could do the same with envelopes, CV voltage sequencers, oscillators, etc. in miRack.

    I ran the output of miRack to the input of iVCS as shown below in AUM. Put the Fx or MFx version of iVCS in the FX slot. Use the MFx version if you want to send MIDI notes to iVCS as I did in the picture below using Fugue Machine. You can put iVCS in the same channel as miRack, or there are benefits to putting iVCS in the FX slot of its own channel, and route miRack (or other sources) to that channel using AUM channel bus routing as shown in the picture below.

    Anything you can dream up using miRack modules can be input to iVCS real time. So you can twiddle knobs in miRack and see how it affects iVCS in real time. Or, instead of miRack, you can do the same with anything that generates audio. Place it in an AUM channel and route that channel to Bus A in my example above. For example, take a simple AUv3 synth's oscaillator and make it drive a wave at 1 Hz, and you have an LFO that you can drive into iVCS. You don't need miRack to do this.

    To get the input from AUM to work in iVCS, make sure you set the Mix Ch.2 knob fully CCW (to the left). This knob is the mix knob between external audio in vs. audio from the internal sampler. Fully CCW sets it so the external audio input will affect iVCS, not the audio sample loaded in the sampler. Also, make sure the INPUT CH.2 switches are set to Mic/Sampler and ENV in the up position. See hi-lighted parts of image below.

    BTW, if the ENV swtich is set in the down position, it will average the incoming audio to create an envelope of the audio source. So if the audio source is not low frequency - like say you have a song, the ENV switch will average the volume of that audio source and use that rolling average as a control voltage just as if you created a low frequency voltage yourself.

    Below is my setup in iVCS. I just set up a simple synth (OSC1/2 to Filter, to Envelope, to Output 1/2). As highlighted below, I set Input Channel 2 to affect the Filter frequency cutoff. Adjust the cut off knob correctly, and you will hear it oscillate according to the CV input created by miRack. You may have to adjust the Input Level for Channel 2 to get the desired result. Also, note that I put a pin for Input Channel 2 to the Meter. So the Meter will wiggle to show the input is working, and you can see the waveform (sort of) on the iVCS oscilloscope as shown in my picture above.

    When I got something I liked, I would record the output from miRack to a WAV file using AUM's record feature, trim and adjust it in a WAV editor (Audioshare is good enough), and then load it into iVCS's sampler so it can be a permanent part of a single patch in iVCS. AUM no longer needed. Or I just continue to use this in AUM as an AUM "patch".

    Remember to use the sampler, make sure the Mix Ch.2 knob is fully CW (to the right). Now the Sampler WAV file will affect the filter in my example. In the picture above, I have a simple triangle envelope loaded into the Sampler.

    For anyone reading this and confused at what I just explained, maybe someone else already has a video to show it (James?). If not, ask questions and I can explain better what I did. It is very simple once you understand how to get iVCS3 configured correctly, but I did gloss over a lot of details in order to keep the explanation relatively short.

  • @MLohmeyer that was a brilliant post. Very concise explanation and description of application. I’m certainly going to explore sending CV from mirack (and Drambo) to iVCS3. I wonder if SunVox also generates usable DC voltage signals @Samu

    I’m really liking the information on this thread so far.

  • Technically, if the encoded excursion were for a while for some reason taken down to quite low speed, and you didn’t want to risk stair-stepping or aliasing, it’d be nifty if (if this were a true modular) if you could just plonk another low pass filter in after the sample readout to integrate the wave from one sample value to the next.

  • @u0421793 said:
    Technically, if the encoded excursion were for a while for some reason taken down to quite low speed, and you didn’t want to risk stair-stepping or aliasing, it’d be nifty if (if this were a true modular) if you could just plonk another low pass filter in after the sample readout to integrate the wave from one sample value to the next.

    This is what the Sound2Control module in SunVox does :)

    It's actually a cool module when using samples as the modulation source.
    You can set the sample-rate for the incoming signal is sampled and also smooth output...
    ...and the smoothness of the source values depends on what interpolation method is used for playing back the source sample and at what speed. For me I love to play back the samples very slow where each sample lasts for ~1-20ms or so.

    Sorry for derailing the discussion...
    But using samples/waveforms as modulation sources would be a handy feature in almost any synth that offers any kind of modulation options, be it custom LFO waveforms, Envelopes or even step/value-sequencers :)

    Cheers!

  • @MLohmeyer you totally get it🍻👍

    A couple of other points too... The “ENV” switch sets iVCS3 to use the modulus of the waveform in its corresponding sampler / input. So say for a single cycle bi-polar triangle wave, the second half of the waveform’s cycle would be inverted thus giving the effect of a triangle wave of the same cycle duration at half amplitude and offset from zero.

    Also each one of iVCS3’s samplers are stereo enabled and thus can also be dual-mono. So two differing waves can be created in one dual-mono sample file and the desired wave can be selected by the “L/Mix/R“ switch. The Mix setting is the average between the two.

    This switch could actually be replaced by a “Pan” knob which could be subject to the extended parameter modulations, enabling for example Midi CC or local extended LFOs to crossfade between the two file channels.

    The Inputs Mix knob does indeed cross fade between incoming audio and the loaded file. So as previously said to use Only the inputted signal this parameter should be set fully Anti Clockwise and for Only the loaded file, fully Clockwise. However, when the balance is set to a central position Both signals can be used simultaneously with each attenuated by 1/2. This can be addressed by boosting an incoming signal but limits the maximum effect of the loaded sample file.

  • As for file creation, I generally use an audio sample editor, loading a “Maxed” sample file then sculpt the desired shapes. The Max file can also be loaded into a DAW and then Sculpted by the DAW’s automation. before outputting to iVCS3.

    Cheers all.

  • edited November 2020

    @u0421793 said:
    Technically, if the encoded excursion were for a while for some reason taken down to quite low speed, and you didn’t want to risk stair-stepping or aliasing, it’d be nifty if (if this were a true modular) if you could just plonk another low pass filter in after the sample readout to integrate the wave from one sample value to the next.

    This is what the ENV switch on the iVCS3 back panel is for (next to the DK/KS, Mute, Mic/Sampler switch that I highlighted in the pictures). Flip it down and it effectively does what you are saying. Flip it up for use with a low frequency file like what we are talking about here.

    (Or what JEC just said in a post just above mine. :smiley: )

  • In relation to the “Rate” control for very slow playback, for example, a “noise” sample file can be loaded and a very very low rate set to achieve stepping, with the trigger set to off this can serve as a pseudo random Sample and Hold generator.

    One other really important point to note is that iVCS3 has a global parameter that when set, forces iVCS3 to crossfade loaded a sample file at the beginning and end. This MUST be set to “OFF” to prevent iVCS3 from altering the loop of worse the Transient of a loaded Envelope file.

    👍

  • Obviously the rate control sets the duration of a loaded envelope, so very low rates produce long envelope times.

  • @MLohmeyer said:

    @u0421793 said:
    Technically, if the encoded excursion were for a while for some reason taken down to quite low speed, and you didn’t want to risk stair-stepping or aliasing, it’d be nifty if (if this were a true modular) if you could just plonk another low pass filter in after the sample readout to integrate the wave from one sample value to the next.

    This is what the ENV switch on the iVCS3 back panel is for (next to the DK/KS, Mute, Mic/Sampler switch that I highlighted in the pictures). Flip it down and it effectively does what you are saying. Flip it up for use with a low frequency file like what we are talking about here.

    (Or what JEC just said in a post just above mine. :smiley: )

    Learned a thing today, thanks. I must admit I don’t spend a lot of time at the back of iVCS3, it looks like the back, like I’m not supposed to be there.

  • That's what I was thinking. I mean how annoying to have to turn the thing around all the time to get to those controls. :p But I guess the real VCS doesn't have a lot of that stuff back there. Just the connectors.

Sign In or Register to comment.