-
Notifications
You must be signed in to change notification settings - Fork 0
Application Overview
Burn To The Brim is a highly efficient archiving utility designed to solve the classic subset-sum (bin packing) optimization challenge. It intelligently selects and groups files and directories (documents, high-fidelity media, or raw back-ups) to optimally fill recordable CDs, DVDs, or custom-capacity storage drives.
By recursively scanning your designated folders, BTTB matches item sizes to your media capacity, finding a near-perfect selection in milliseconds and an absolute perfect packing configuration in just a few seconds.
The BTTB solver operates with two primary mathematical rules:
→
Fill to the Outer Edge First: The primary objective is to maximize space utilization on the target medium, leaving virtually zero wasted space (allowable tolerance is controlled by your custom slack capacity variable).
→
Minimize Item Count Boundary: As a secondary priority, BTTB prefers keeping larger folders together and minimizing split segments. This keeps logical folder structures intact and leaves smaller, easily-fittable buffer items available for your subsequent disk burns.
Burn to the Brim 4.2.0 introduces a complete offline JSON Index creator and token parser, and Cauchy Reed-Solomon PAR3 parity verification and copy-based restoration, alongside our state-of-the-art neural semantic packing algorithms:
→
Offline JSON Indexing (v4.2.0+): Automatically generates a standardized index.json catalog file in the destination folder during multi-volume solved output, capturing file relative paths, exact sizes, and system timestamps. A high-performance, offline tokenizer parser is integrated directly into the GUI results panel for seamless catalog browsing.
→
Entropy-Aware Semantic Packing: Clusters files and folders together based on context and meaning instead of just hard pattern rules. Enter a prompt like "keep similar content together", and BTTB will generate sentence-embeddings to group relevant items prior to knapsack solving.
→
MiniLM Neural Embeddings: Integrates Hugging Face's all-MiniLM-L6-v2 transformer model to generate high-dimensional (384 float) embeddings. Runs via an out-of-process JSON-IPC python helper, keeping the native C++ binary size extremely lightweight.
→
Robust Python & C++ Fallbacks: In the absence of heavy ML packages (PyTorch/sentence-transformers), BTTB falls back to a built-in character-level N-gram TF-IDF vectorizer or native C++ edit-distance string similarity metrics, ensuring the application remains fully functional out-of-the-box.
→
Interactive Test Simulation Mode: A dedicated, non-destructive simulation run mode is now accessible in GTK4 GUI, Win32 GUI, and CLI shells. The solver runs simulations, computes individual volume slack and semantic coherence metrics (average pairwise cosine similarities of items in each volume), and reports them directly without modifying any files on disk.
Burn to the Brim 4.2.0 combines the classical backtracking subset-sum engine with highly optimized data integrity features:
→
Reed-Solomon PAR3 Parity (v4.2.0+): Adds support for robust PAR3 parity archive creation (Volume_1.par3) using Cauchy Reed-Solomon error correction. Dynamically incorporates estimated PAR3 sector overhead during backtracking bounds checks, securing multi-volume sets.
→
Bit-Rot Integrity Verification & Copy-Restoration (v4.2.0+): Natively verifies individual volume files and symlinks against their PAR3 parity archives, listing all corrupted or missing items. Executes an in-place copy-based repair process inside a clean, safe target directory chosen by the user, leaving the original sources completely untouched.
→
Unicode & Long Path Support (>256 chars): BTTB is now fully compatible with international characters and paths of arbitrary length (supporting standard Windows UNC \\?\ absolute path prefixes up to 32,767 characters). Scans unreadable files gracefully with skip/abort prompt choices.
→
Explorer Context Menu & IPC Appending: Right-click folders in Windows Explorer and select "Add to Burn to the Brim". The single-instance IPC architecture uses WM_COPYDATA to append folders directly to your running BTTB session and brings it into focus.
→
Integrated Hybrid GUI/CLI: Run BTTB directly from terminals or scripts! If arguments are provided, it runs in pure command-line console mode (including standard -h help guides). If no arguments are passed (or with -gui), it opens the responsive GTK 4 / Win32 GUI.
→
Smart Adaptive Capacity Warnings: Scanned files that exceed media capacity trigger clean prompts (CLI inputs or modal popups) that recommend the minimum required volume size, allowing you to automatically adjust and retry packing.
→
Windows Setup Installer Package: We now provide a native setup installer executable compiled via NSIS, offering desktop and Start Menu shortcuts and a clean uninstallation utility.
→
Debian Package Installer (.deb) for Ubuntu: We now distribute a native Debian package supporting Ubuntu 22.04, 24.04, 25.04, and 26.04 out of the box, engineered using dynamic symbol compatibility wrapping and static runtimes to target a low glibc requirement (GLIBC 2.35).
→
Multi-Volume Spanning Engine: Slices large file structures that exceed the capacity of a single disc or flash drive, automatically organizing them into successive volume folders (e.g. Volume_1, Volume_2, etc.) at maximum packing efficiency.
→
Multiple Source Directories Setup (+): Aggregates files across multiple distinct base folders into a single virtual root layout. Nested duplicate folders are automatically filtered and ignored.
→
Lightweight Symbolic Link Outputs: Instantly create symbolic links pointing back to original files in target folders instead of copy/move operations. Handles Windows native unprivileged symlinks, cmd shell mklink, and robust copy fallback.
→
Win32 Results TreeView Explorer: Hierarchical left-side results TreeView control natively displayed in the Windows GUI to easily explore fitted volumes and remaining items.
→
Blu-ray & USB Presets: Native support for BD and high-capacity USB keys (up to 512 GB presets with 64 GB custom default) using 4096-byte clusters to align with modern file systems.
→
Dynamic Suffix MB Capacity Label: Supports fractional capacity inputs (e.g. 2.5GB, 512MB) and displays real-time MB sizes dynamically inside settings dialogues.