Atlas Audio: Bitwig Preset Extractor
The Bitwig Preset extractor reads metadata from Bitwig Studio preset files. These files contain authorship, description, and categorization data embedded in a structured binary format with plaintext metadata fields. It’s part of the Atlas Audio extractor pack.
Extension: .bwpreset
Format Overview
Bitwig preset files use a proprietary binary container with a BtWg magic number. The file header encodes version and size information in ASCII hex, followed by a structured metadata section with length-prefixed string key-value pairs.
Binary Structure
Offset Content
0x00 "BtWg" magic (4 bytes)
0x04 Version/size in ASCII hex (26 bytes)
0x1E Padding (2 bytes)
0x20 Section count (4 bytes BE)
0x24 Section header size (4 bytes BE)
0x28 "meta" section marker (4 bytes)
0x2C Key-value pairs begin
Metadata Encoding
Each metadata entry is a length-prefixed key-value pair:
[4 bytes: entry count] [4 bytes: key length] [key string]
[4 bytes: type (0x08 = string)] [4 bytes: value length] [value string]
Keys are plain ASCII strings. Values are UTF-8 strings prefixed with a type byte (0x08 for string type).
What It Extracts
The extractor produces traits only (no edges). Bitwig presets describe device configurations — they don’t reference external audio files.
| Trait | Source | Example |
|---|---|---|
preset_creator | creator field | Bitwig |
preset_comment | comment field | A drum kit for the tech house genre |
preset_category | device_category field | Container |
preset_device_name | device_name field | Drum Machine |
preset_tags | tags field | Drums, Electronic |
Comment Field
The comment field contains a human-written description of the preset. This is the richest metadata — it describes the preset’s purpose, suggested use, and character. Examples:
- “Indian percussion kit. Use Remote Controls to swap the instruments on some pads.”
- “A drum kit made primarily of Bitwig E-drum instruments. Tweaking possibilities lurk in every drum pad.”
Device Category
The device_category classifies the preset’s device type within Bitwig’s architecture (e.g., “Container” for drum machines and layered instruments, “Generator” for synthesizers).
Performance Notes
All metadata is in the first ~300 bytes of the file header. The remaining file content is the serialized device state (parameter values, modulation routings, sample references internal to Bitwig). The extractor reads only the meta section.
Example Usage
# Scan Bitwig presets
atlas scan ~/Documents/Bitwig\ Studio/Library/Presets/
# Find presets by creator
atlas search --trait preset_creator "Bitwig"
Use Cases
- Preset inventory — Catalog all Bitwig presets with their descriptions and categories
- Creator tracking — See which presets are factory vs. third-party by creator field
- Category browsing — Search presets by device category or tags
- Preset documentation — Surface preset descriptions that are otherwise only visible in Bitwig’s browser