Inspecting Audio Clips
As was said in this chapter's introduction, we have been using the Inspector Panel to examine clips for quite some time. In addition to the clip settings we have already examined, any non-empty clip has a large section at the bottom of the Inspector Panel for dealing with its musical contents.
The Inspector Panel on Audio Events
By selecting a clip, certain parameters are revealed in the AUDIO EVENT section, but when selecting an audio event itself (by single-clicking the audio event's header in the Detail Editor Panel), the Inspector Panel provides all settings relevant to the selected event(s).
Several of these settings will be familiar. Since there are many of them, we will take them one section at a time. And we will also look at the functions available in themenu when audio events are selected.
These settings generally relate to the musical position of the selected event and its optional fades:
Start sets the start position of the event within its parent clip or track. Adjusting this position will move the audio event as it exists, the same as clicking and dragging the event within the Detail Editor Panel.
Remember that audio events will be always be truncated by the boundaries of their parent clip.
Length sets the duration of the event within its parent clip. Adjusting this duration will simply lengthen or shorten the event, the same as using the bracket cursor to adjust the right edge of the event's header.
Mute toggles whether or not the event is disabled on playback.
These settings relate to the behavior of Bitwig Studio's audio playback.
Mode sets the audio playback algorithm for the audio event. The settings are grouped under categories that describe the general method being used to produce audio stretching.
GRANULAR modes work in the time domain, allowing independent control of pitch and time.
Stretchis an optimized algorithm that time-stretches audio to match the project's tempo. When your settings match the original audio (targeting the original pitch and tempo), this algorithm is completely neutral, preserving your original audio at output and lowering your processor's load.
Stretch HDis a similar algorithm to
Stretchbut is applied in a multiband fashion, splitting the original signal into several frequency areas and stretching those.
Slicedivides audio into chunks and then stretches those chunks (when appropriate) using the method set in the Tail parameter.
Cyclicadds overlaps to stretched audio in the fashion of classic hardware samplers.
Elastique Solosyncs its grain size to the wavelength of the audio. This makes it especially useful for voice or other monophonic sound sources. But any source material may yield interest results and/or robots.
SPECTRAL modes work in the spectral domain, allowing independent control of pitch and time.
Elastiquepreserves transients, making it appropriate when rhythmic accuracy is important.
Elastique Ecofocuses more on harmonic content, making it more useful for less rhythmically-active sounds (like pads).
Elastique Proalso preserves transients but has formant controls as well. This comes at the cost of additional CPU resources.
UNSTRETCHED modes do not provide independent control over pitch and time.
Rawignores all stretch expression data. Events are played back at their original speed, regardless of the project tempo or any other considerations.
Repitchties pitch and playback speed together (as a tape recorder would). Stretch expression data is respected while pitch expressions are ignored.
Each stretching mode has up to three of the following parameters available:
Grain Size adjusts the length of each audio segment that is stretched in the selected audio event. The three relative options are for short, medium, or long portions of the audio to get processed at a time.
Transients controls how the onsets expression (see Onsets Expression) is used to adjust playback. There are three options to choose between and one optional mode:
The first option is off, represented by an x icon. In this mode, the onsets expression is completely ignored for playback purposes.
The second option is soft, represented by a centered vertical line with both a "fade out" triangle on the top left and a "fade in" triangle on the top right. This mode emphasizes smoothness by blending the audio before an onset with that that comes after.
The third option is hard, represented by a centered vertical line with only a "fade in" triangle on the top right. This mode emphasizes rhythmic accuracy by focusing on the audio that comes after the onset.
The separate button with the speaker icon represents preview mode. When toggled on, this mode plays the audio at each onset, but turns the volume down for all other parts of the event. This is a useful audible indicator of where the onsets are currently placed.
Rate sets the interval at which audio is divided for processing and stretching. Options include regular beats intervals (such as every
1/16note) or dividing audio at its
Tail sets a method for overlapping audio tails when stretching is needed. Settings include
Granularstretching, and stacked
Ping-Pongdelays (as used by some vintage samplers).
Formant offers two controls for shifting the formants of the affected audio:
The button showing a keyboard with outward-facing arrows toggles the automatic shifting of formants based on the pitch expression.
The numeric control allows you to set a fixed shift amount in semitones.
When a Formant parameter is available for the current playback mode, that value can also be automated via the audio events' formant expressions (see Formant Expressions).
Resolution sets the relative size of the spectral envelope used for formant shifting. Larger values create larger windows (which are better tuned for lower frequencies), etc.
Play Stop allows you to set an end time (in
MINUTEs:SECONDs.MILLISECONDs) for the audio event. Regardless of clip length and anything else, the audio event will not play beyond this point. (Setting the value in time keeps tempo changes from interacting with this playback value.)
defines the original tempo of the audio event. Knowing this enables Bitwig Studio to properly play back the data in any circumstance.
When an audio file is brought into a project, the program first checks the filename for an indication of tempo (such as the word
154bpm). If nothing is found there, the program determines the tempo as best it can.
This value can be corrected at any time, but changing it will impact the placement and timing of the audio event.
Theand parameter sets allow you to define independent fades at the beginning and end of each audio event. When set in tandem with an overlapping clip, you can also create crossfades in this way.
All of the parameters and methods of operation are the same as when applied at the clip level (see Applying Fades and Crossfades to Audio).
Unlike the other sections in the Inspector Panel, the section displaying Operators is only shown when events (and not clips) are selected. Operators are covered extensively in their own chapter (see chapter 11: Operators, for Animating Musical Sequences).
This section exposes three of the expressions we have covered: Gain Expressions), (see Pan Expressions), and (see Pitch Expressions). While these expressions have completely different functions, they are programmed in the same fashion.(see
Following the Pitch expression, the unit is semitones.and numeric controls are incrementer and decrementer buttons that will adjust the expression value by the declared amount. For the expression, these buttons express decibel changes. For the
These are the automation-type expressions, each able to be defined by a curve made from several values. Because of this possibility, each value in this section of the Inspector Panel is actually representing the average of points in that expression. Let's examine the expression as an example.
-0.58 dB is an average of the five points defined in this audio event expression.
To adjust an expression curve: change its listed average value, or click one of the expression's incrementer/decrementer buttons.
This method will work for any expression in this section, whether it is defined by a curve or a single value.
Finally, while right-arrow buttons at the edge of parameter fields are normally reserved for the Histogram interface for working with multiple events selected (see Using the Histogram), these buttons are also present when any number of expression points or even a clip is selected.
This provides a way to both see the average Spread value for all selected points, and a way to adjust them relatively.
Working with Multiple Audio Events
The Inspector Panel also works with selections of multiple events.
Functions are straightforward, as most of them listed in this chapter allow the selection of multiple events. (In the case of Reverse Pattern, it is not available unless you have multiple events selected.)
Parameters can be a little trickier when several events are selected at once. Bitwig Studio has a couple tricks of its own for both displaying and working with chunks of parameter data.
We saw expressions summarized earlier with a single average of all their points. That works well when you are dealing with numbers, but some parameters simply toggle on and off. For these discrete parameters, the Inspector Panel will diagonally stripe any indicator whose settings are mixed.
In the above image, the Mute, fade IN, fade OUT, and both of the Onset buttons (Preserve and preview) have the orange and gray striping to suggest that some of the selected events are enabled, some are not.
Additionally, the Mode menu is listed as
(mixed), which is its way of suggesting that not all selected events have a uniform setting.
Using the Histogram
Finally, Bitwig Studio provides a special interface called the Histogram for working with a selection of multiple numeric values. The purpose of a histogram is to display the number of times that different possibilities occur over a span of time. In our case, the span of time being considered is the length of the current selection and the possibilities being considered are different values of the targeted parameter.
But our Histogram can also modify values, or even produce them from scratch. We will now demonstrate the option of creating values and then tweaking them.
I will begin with the drum loop you have seen throughout this chapter.
By applying the Split at Onsets function, this single event will now be divided at each onset point, giving us a collection of events that add up to the same loop.
From here, I will select all of the events. This can be done in the standard ways, by either pressing CTRL+A ( CMD+A on Mac), or by choosing either from the menu or from the context menu. And once all events are selected, I will switch the Detail Editor Panel to focus on the Pitch expression.
A few things to note before we proceed.
First, the Inspector Panel now labels this section of the panel as AUDIO EVENTS (19). The 19 in the title is indicating exactly how many audio events are currently selected and will be acted upon when changes are made here.
Second, the event headers are now reflecting fades where each onset point was split. This is because I have Automatically create fades on audio clip/event edits enabled, which is the default setting. (This preference is found in the Dashboard, under the Settings tab, on the Behavior page, in the Fades section.)
The only places where fades do not exist are at the start of the first event and at the end of the last one because no splitting occurred at these two places. And because these events lack a fade of each kind, both of the Fades buttons are now striped.
Third, in the expression section of the Inspector Panel, each numeric control is now followed by a right-arrow button. Since we now have multiple events selected, these arrows appear to give us access to the Histogram.
With these few observations made, we can now proceed.
The pitch expression is currently empty, containing no points. Now I will simply single-click on the Pitch parameter control. I am not changing the setting, just clicking on it once.
By just clicking on this parameter, an expression point has been created at the start of each event. So even though every point is currently set to
0.00 (semitones), we now have something to work with.
By clicking the right-arrow button beside the Pitch parameter, we can now see the Histogram.
The Histogram is comprised of four elements:
The large display on the left is the actual histogram, which will present a count of the different values occurring across our selection. It is blank right now as we don't have any values yet.
Mean represents the average of all selected values.
Spread is a control for modifying the range of the selected values.
Chaos is a control for injecting random variations to the selected values.
Adjusting the Spread of these points would do nothing as they are all currently identical. And adjusting the Mean would only adjust them all by an identical amount keeping them the same. So I will click the Chaos control and drag it upward.
And now we have some variation in this expression.
You can see that the Histogram display now has some life in it. The horizontal positions are indicating the pitch values for various events — from -24 semitones on the left, to zero semitones in the middle (no pitch shift), to +24 semitones on the right. The vertical position of the chart roughly indicates the number of events found near that value.
The distribution shown here is weighted toward the left (negative) side, and indeed, the Mean is telling us that
-1.31 semitones is the current average of all values. The Inspector Panel displays an identical Pitch value, showing that these two controls are identical.
The Chaos value is set in the units of the selected parameter, so it is
25.25 semitones of shift in this case. And because the pitch expression has a bipolar range,
25.25 semitones represents a distribution between -12.125 and +12.125 semitones.
Looking at the newly formed Pitch expression in the Detail Editor Panel, you can see that the highest point is right around +12 semitones (in the second audio event), and that the lowest point is right around -12 semitones (in the fourth event).
If we liked the shape of the expression but felt it was a little too extreme, we could call the Histogram back up and bring down the Spread value to narrow the overall range.
As the Spread value goes below
100%, the range is indeed being shrunk, causing the histogram curve to become narrower and grow upwards — an indication that more of our 20 points are landing close to each other. But the shape of the curve is comparable to where it started.
Interestingly, the Chaos value was back at
0.00 when we brought the Histogram back up. Actually, this happened immediately after the Chaos setting was made and the mouse was released. And the same was true of the Spread function just now, as it will return to
100% once you let go.
Each of these values represents an amount to change the current distribution of points. Unlike Mean, these values reflect only the future action and nothing about the present situation.
Finally, we can indeed use the Mean function to shift the whole expression so that zero is no longer near the center.
By moving the Mean to
12.00, the average value is now a shift of one octave up with all variation landing just around that. (Again, we could have used the Pitch parameter to make the exact same adjustment.)
So that is a brief overview of how the Histogram works and an example of what you can do with it. We have spent this much time on it because the Histogram is available all across Bitwig Studio, whenever a group of numeric values can be selected together.
- 0. Welcome to Bitwig Studio
- 1. Bitwig Studio Concepts
- 2. Anatomy of the Bitwig Studio Window
- 3. The Arrange View and Tracks
- 4. Arranger Clips and the Browser Panel
- 5. The Clip Launcher
- 6. The Mix View
- 7. Introduction to Devices
- 8. Automation
- 9. Working with Audio Events
- 10. Working with Note Events
- 11. Operators, for Animating Musical Sequences
- 12. Going Between Notes and Audio
- 13. Working with Projects and Exporting
- 14. MIDI Controllers
- 15. Advanced Device Concepts
- 16. Welcome to The Grid
- 17. Working on a Tablet Computer
- 18. Device Descriptions
- 19. Credits