/BitTable

BitTable is an extension for Bitwig Studio which acts as a GUI for a command-line utility called okwt. It integrates okwt functionality into Bitwig allowing a user to convert any audio file and non-audio file to a wavetable without leaving their favourite DAW.

Primary LanguageJava

Contents


What's this?

BitTable is an extension for Bitwig Studio which acts as a GUI for a wonderful command-line utility called okwt. It integrates okwt functionality into Bitwig allowing a user to convert audio files and non-audio files to wavetables without leaving their favourite DAW. Check Examples out to see it in action.


Dependencies

  • okwt (required)
  • ffmpeg (optional, only needed if you want to convert audio files of formats other than WAW, namely AIFF, MP3, FLAC).

Installation

  • Download the BitTable.bwextension file from the latest release
  • Install the file you downloaded as a Bitwig Studio extension
  • Activate the extension: Settings -> Controllers -> Add Controller -> select Hardware Vendor 'Utilities' -> BitTable -> Add

Settings

Global Settings

Settings -> Controllers -> BitTable -> Settings

  • Paths

    • okwt

      The folder where the okwt executable is located.

      To find out where okwt is installed, type which okwt in the terminal/cmd.

      In Windows there is no need to specify this setting if okwt is accessible from everywhere (i.e. added to the global PATH environment variable).

    • ffmpeg (optional)

      The folder where the ffmpeg executables are located. Fortunately, ffmpeg is already included with Bitwig Studio so normally you don't have to install ffmpeg yourself. Just specify the path to the folder where the Bitwig Studio executable files are located. In Windows, it can be something like 'C:\Program Files\Bitwig Studio\5.0.5\bin'. You can use the placeholder ${bws.version} instead of the version part, i.e. 'C:\Program Files\Bitwig Studio${bws.version}\bin'. When the extension performs conversion, the placeholder is replaced with the actual version of Bitwig Studio in which the extension is running, so if you install the newer version of BWS and delete the older one, the path you've set still works regardless of BWS version you currently use. If you don't want to use the ffmpeg package that's shipped with BWS by some unexplainable reason, you can install ffmpeg on your own and set the path accordingly.

  • Save Locations

    • WT Files

      Where resulting .wt files will be saved.

      Tip: create a dedicated folder in User Library/Wavetables, i.e. User Library/Wavetables/okwt. This way converted files will be accessible in the wavetable browser.

    • WAV files

      Where resulting .wav files will be saved.

      Tip: create a dedicated folder in User Library/Samples.

  • Sample locations

    To convert a sample from Sampler or the popup browser the extension needs to 'know' a full path to the sample in order to pass it to okwt as a parameter. Bitwig doesn't provide such information to extensions through the API, only filenames. But if you add folders that contains samples to one of the Sample Locations fields, BitTable will scan them recursively and build 'sample name' -> 'file path' mapping internally. Ideally, any sample that is accessible through the Bitwig browser should be visible to BitTable too. Good candidates to add here are as follows:

    • User Library (Settings -> Locations -> My Library, or, in the browser, Locations -> My Library -> right click -> Show in Explorer/Finder -> copy path)
    • installed-packages (Settings -> Locations -> Downloaded Packages, or, in the browser, Locations -> Packages -> right click -> Show in Explorer/Finder -> copy path)
    • All your Sound Content locations
    • your Projects folder (this is needed for example if you want to convert bounce audio files)
    • Temporary projects folder (for the same reason)
  • Force Reindex

    If, by some reason, BitTable wasn't able to determine the full path to a sample when it should do, push this button and try again.

  • Misc

    • Debug

      Prints additional information in the console window for debugging purposes

    • Append date and time

      Each generated file will have a date and time suffix in its name. Useful if you convert the same sample multiple times with different settings so the resulting file won't be overwritten with each conversion.


Project-level Settings

Are accessible in the controller pane.

  • Resize algorithm

  • Normalize

  • Maximize

  • Fade

  • Trim

  • Trim Threshold

  • Shuffle

  • Shuffle groups

    These are wavetable conversion parameters that are passed to okwt as-is. Check their descriptions in the okwt manual.

  • File

    Full path to a sample you want to convert (only takes effect when the popup-browser is inactive and Sampler is not selected).

  • Save as

    Specify output file format, it can be either WAV or WT. It only takes effect when you click the Save button.


Usage

There are a few options what you can do with resulting wavetables (corresponding buttons are available in the extension's controller pane):

  • Save

    Just converts a sample and saves the resulting wavetable file in a folder as specified in Global Settings -> Save Locations.

  • Load new Sampler

    Converts a sample, saves the wavetable as a WAW file and loads it into a new Sampler instance in the currently selected track. Why would one load a WT file into the Sampler, you may ask? This can be useful if you already have an existing Polymer/Grid instance set up into which you'd like to load the new wavetable. When conversion is done, just drag the sample from Sampler and drop it into the WT osc of your existing Polymer/Grid.

  • Load new Polymer

    Converts a sample, saves the wavetable as a WT file and loads it into new Polymer instance in the currently selected track.

There are also several ways how a source file can be chosen:

  • from Popup browser

    Select a sample in the Popup Browser, then click any of the Convert and buttons.

  • from Sampler

    Select a Sampler instance with a sample loaded in it, then click any of the Convert and buttons.

  • Arbitrary file from the file system

    If you want to convert an external file, i.e. an image that you have found in your file manager, copy its full path, paste that into the File field and click any of the Convert and buttons.


Examples

external.file.mp4
from.browser.to.existing.polymer.mp4
from.side.browser.to.new.polymer.mp4