Difference between revisions of "Configuring Buzz"

From Jeskola Buzz Wiki
Jump to: navigation, search
(Automatic Backups)
(SubTick Timing)
Line 131: Line 131:
  
 
===== SubTick Timing =====
 
===== SubTick Timing =====
Better timing for control machines that send control changes between ticks.
+
Better timing for control machines that send control changes between ticks. If you enable this, generators used in combination with Pattern XP will be able to trigger your samples more often than 4 ticks per beat. Recommended setting: Enabled.
 
<br style="clear:both" />
 
<br style="clear:both" />
  

Revision as of 21:49, 23 February 2010

Configuration within Buzz is extremely simple. To configure Buzz select Preferences from the view menu at the top of your screen. You will be presented with a window containing the following 5 tabs.

ViewPreferencesMenu.png

Wave Output

PreferencesWaveOutput.png
Soundcard ASIO Drivers

It's recommended to use ASIO with Buzz. Anything other than that, except maybe the Beta WASAPI output-drivers (Vista only), is probably not worth using anymore. If your soundcard does not come with ASIO drivers, install ASIO4ALL (and consider buying a new one).

Buzz Output Drivers for ASIO

There are two ASIO output-drivers for Buzz, ASIO (bundled) and Polac ASIO (which lets you set a few more options). To set it up, select ASIO or Polac ASIO from the Dropdown and click APPLY (!). Select the soundcard from the popup and you are ready to go. To change the soundcard or settings, use the CONFIG button to bring up the popup again.


Wavetable

PreferencesWavetable.png

In order to use samples within Buzz you must configure Wavetable directories. Once a directory is added, that directory and all of its sub-directories may be accessed from Buzz Wavetable, and thus all sample based machines. To add a Wavetable directory simply click the Add button, and select a folder from your system from the pop-up window. You may add and delete Wavetable directories at any time.


MIDI Input

PreferencesMidiInput.png

One of the most useful features in Buzz is its support for continuous MIDI controllers (usually knobs or sliders) to control any of the Machine Parameters throughout its library. The latest machines also support wellknown MIDI-notes input, in order for you to control the notes of those machines with your MIDI-keyboard and record them when you have record (F7) enabled.

Important Note Before MIDI controllers may be used to control Buzz Machine Parameters, they must be bound to a name within this dialog. It is very important to be sure your MIDI In is working before you can start binding controllers or playing notes with your MIDI keyboard. Very quickly you should know if something is wrong. If so, use a tool such as MIDI-OX to troubleshoot your MIDI problems. For troubleshooting MIDI specifically within buzz you should rather use Apo's Cheapo Statistics.

Take the following steps to configure MIDI controllers in Buzz:

  • 1) First you must select an appropriate device from the list of available MIDI devices. In most cases, the first listed will be your default device and the device you wish to use. You may have other preference. If so select it from the list now.
  • 2) To bind a controller to a name in Buzz, first click the Add... button pictured above. The following window should now appear:
  • 3) You will quickly notice that the OK button is grayed out. This is because Buzz is waiting for you define a controller for which to bind. You do this by moving any valid continuous controller on your MIDI device. If your MIDI is functioning correctly you will see the controller number and MIDI channel displayed as so:
  • 4) Clicking OK on the dialog above will bind the MIDI device. You may now bind MIDI to any parameter in Buzz.

Continue this for all controllers on all devices you wish to bind. Note that you may bind devices on multiple MIDI channels, but only one MIDI device.

The most common MIDI-controller is a plain MIDI-keyboard with a pitch control and a modulation wheel. Don't forget that you can use the modulation wheel for 128 different Machine Parameters by assigning it to different MIDI-controls. This assigning is done with your MIDI-keyboard, not with buzz. When you assigned another control to the modulation wheel, you can go through the former four steps again and thus re-use the modulation wheel for 128 different bindings.

This process only needs to be done once per controller. After you have binded names to your controllers, you may bind controllers to them in any song. That song then saves the binding information so that you may continue to control the same parameter with the same controllers in the future.


MIDI Output

PreferencesMidiOutput.png

Select the devices you would like to test from the list. Once you click apply, these devices will be available in the machine that support MIDI Output.


Engine

PreferencesEngine.png

A few options on Buzz's internals:

Amplifiers: Response Time

Inertia of the Volume Sliders on the Connection Triangle

Multithreading: Processors

Select the Processors that Buzz should use

Multithreading: Affinity
  • SetThreadAffinityMask Sets a processor affinity mask for the specified thread. A thread affinity mask is a bit vector in which each bit represents a logical processor that a thread is allowed to run on.
  • SetThreadIdealProcessor Sets a preferred processor for a thread. The system schedules threads on their preferred processors whenever possible. On a system with more than 64 processors, this function sets the preferred processor to a logical processor in the processor group to which the calling thread is assigned.
Multithreading: Time Critical Priority

Causes the audio thread of Buzz to run at the highest priority (called "Time critical" on Windows.) This should make Buzz more resilient to stuttering if other applications suddenly use CPU.


Options

In addition to those settings, you can set the following Options in the view menu:

ViewOptionsMenu.png
Accurate BPM

Old Buzz's (1.2b) BPM calculation was slightly off. It is recommended to enable this to make it more accurate, for example to export perfectly looping sounds.

Anti-aliased Lines

When enabled, Connections in Machine View look a little nicer. Might cause overhead on single-core systems.

Automatic Backups

When enabled, Buzz first renames the old file to the same filename + ".backup", and then saves the current project to the normal filename. If Buzz should crash while saving, at least you won't end up with a 0 bytes file.

Equal Power Panning

Causes +3dB gain boost at full L/R pans, so old songs may sound different when it's enabled. Leave it on unless you are certain you need to disable it.

Lock Toolbars

If enabled, Toolbars at the top (Standard, Master Volume, Time) can't be moved.

Machine Delay Compensation

Some machines introduce Delay into the chain. Buzz can try to compensate this automatically. Type 'mdc' in Debug Console to see what's happening. To override or manually set the machine delay, right-click machine and choose "Delay...". Machines can implement CMachineInterfaceEx::GetLatency as demonstrated by Jeskola Limiter.

Master Keyboard Mode

When enabled, MIDI channel 1 input of your keyboard is routed to the machine that has MIDI focus. MIDI focus changes when:

  • machine view is activated / selected machine changes
  • pattern editor is activated / selected machine changes
  • sequence editor is activated / active column changes
  • parameter window is activated
  • a machine calls pCB->SetMidiFocus
MIDI Filtering

Enable MIDI filtering and right click machine to set the input channel. Machines should be changed to accept all messages when filtering is enabled, instead of doing their own filtering. See the new MachineInterface.h callback. Users of the current version of PVST can set MIDI in mode to all in the preferences dialog.

Multithreading

Use multithreaded audio engine for using all your processors / cores. Does dynamic work balancing. This currently only works with generators. If you add effects, Buzz will not be able to utilize all your CPUs.

Note that many old machines are not compatible with this. If you find a machine that does not work, use Multithreading="False" in gear.xml to disable multithreading for this machine. Additional options for Multithreading can be found in Preferences.

New Mute Mode

Machines are processed even when muted.

Pattern Boxes

Display Boxes around the patterns in Sequencer View.

Pattern Box 3D Look

Make the Boxes look more pretty.

Shadows

Enable Shadwows for Machines in Machine View. Might cause overhead on single-core systems.

Skins

Enable Skins for Machines in Machine View. Might cause overhead on single-core systems.

Splash Screen

Show the Splash Screen when Buzz starts up.

SubTick Timing

Better timing for control machines that send control changes between ticks. If you enable this, generators used in combination with Pattern XP will be able to trigger your samples more often than 4 ticks per beat. Recommended setting: Enabled.

Index.txt

documented here: Index.txt

Gear.xml

documented here: Gear.xml