A professional tool for creating Red Book compatible CD masters with CUE sheet output. Available as both a GUI application and a CLI tool.
- Modern GUI application - Native desktop app with dark theme, waveform display, and intuitive controls
- Interactive CLI wizard - Guided step-by-step experience for creating CD masters
- Red Book compliant - Enforces CD-DA specifications (16-bit, 44.1kHz stereo)
- Automatic format conversion - Converts non-compliant WAV files (resampling, bit depth, channels)
- Waveform visualization - Zoomable/scrollable waveform display with playhead
- Audio preview - Play tracks with real-time position tracking
- Full metadata support - CD-TEXT, ISRC codes, MCN/UPC catalog numbers
- CUE sheet export - Industry-standard format for CD mastering
- TOC file export - Compatible with cdrdao for disc-at-once burning
- CD burning - Direct burning via cdrdao with progress display and CD-TEXT support
- Project files - Save and load projects in .rbm format
- Drag & drop track reordering - Easily arrange tracks in the GUI
The GUI provides a professional desktop experience for CD mastering:
- Track List Panel - View and manage tracks with number, title, duration, pregap, and postgap
- Waveform View - Zoomable waveform display for the selected track with playhead
- Metadata Editor - Edit track and album metadata in real-time
- Playback Controls - Play, pause, stop, previous/next track, volume control
- Menu Bar - Quick access to New, Open, Save, Export, and Burn CD
The burn dialog provides a complete burning experience:
- Drive Selection - Choose from detected CD/DVD drives
- Speed Selection - Auto, 1x, 2x, 4x, 8x, 16x, 24x, 48x
- Options - Eject disc, Enable CD-TEXT, Simulate only
- Real-time Progress - Progress bar with MB written percentage
- Live Log Output - See cdrdao output in real-time
- Cancel Support - Abort burning if needed (disc may be unusable)
- Error Details - Full log preserved for debugging when errors occur
| Shortcut | Action |
|---|---|
| ⌘+N | New project |
| ⌘+O | Open project |
| ⌘+S | Save project |
| ⌘+Shift+S | Save As |
| Space | Play/Pause |
| Escape | Stop playback |
| ↑/↓ | Select previous/next track |
| ←/→ | Previous/Next track |
| Delete | Remove selected track |
- Rust 1.70 or later
- Audio output device (for playback features)
- cdrdao (optional, for CD burning)
git clone https://github.com/webmatze/redbookmaster.git
cd redbookmaster
cargo build --releaseBinaries will be at:
target/release/redbookmaster- CLI applicationtarget/release/redbookmaster-gui- GUI application
# Install both CLI and GUI
cargo install --path crates/redbookmaster-cli
cargo install --path crates/redbookmaster-gui# From the repository
cargo run -p redbookmaster-gui
# Or after installation
redbookmaster-gui# From the repository
cargo run -p redbookmaster
# Or after installation
redbookmasterThe repository is organized as a Cargo workspace:
redbookmaster/
├── crates/
│ ├── redbookmaster-lib/ # Shared library (core, audio, export, burn)
│ ├── redbookmaster-cli/ # CLI application
│ └── redbookmaster-gui/ # GUI application (Slint)
├── screenshots/ # Application screenshots
└── README.md
Launch the interactive wizard:
redbookmasterThis opens a guided menu where you can:
- Create new projects
- Add and manage tracks
- Edit metadata (album, track, ISRC, MCN)
- Configure track gaps
- Preview audio playback
- Export master files
- Burn CDs
# Create a new project
redbookmaster new
# Open an existing project
redbookmaster open my-album.rbm
# Add tracks to current project
redbookmaster add track1.wav track2.wav
# List tracks
redbookmaster list
# Edit track metadata
redbookmaster edit 1
# Reorder tracks
redbookmaster reorder
# Configure track gaps
redbookmaster gaps
# Play album preview
redbookmaster play
# Play specific track
redbookmaster play 3
# Play transition between tracks
redbookmaster transition 2
# Validate Red Book compliance
redbookmaster validate
# Export CUE/WAV master
redbookmaster export
# Burn to CD (requires cdrdao)
redbookmaster burn
# Show project info
redbookmaster info- Click New to create a project (choose location and name)
- Click Add Tracks to add WAV files
- Non-compliant files are automatically detected and can be transcoded
- Edit track/album metadata in the right panel
- Drag tracks to reorder them
- Use playback controls to preview
- Click Export to generate master WAV, CUE, and TOC files
- Click Burn CD to open the burn dialog and write to disc
$ redbookmaster
Welcome to Red Book Master!
? What would you like to do?
> Create new project
? Album title: My Awesome Album
? Artist/Performer: The Band
? Add WAV files now? Yes
? WAV file path: /path/to/track1.wav
✓ Added: Track 1 (3:42)
? WAV file path: /path/to/track2.wav
⚠ File is not Red Book compliant: Sample rate is 48000Hz (need 44100Hz)
? What would you like to do?
> Convert automatically
⟳ Converting to Red Book format...
✓ Conversion complete: 48000Hz -> 44100Hz
✓ Added: Track 2 (4:15)
? Save project as: my-awesome-album.rbm
✓ Project saved
Red Book Master automatically handles non-compliant WAV files:
| Input Format | Conversion |
|---|---|
| 48kHz, 96kHz, etc. | Resampled to 44.1kHz (high-quality FFT resampling) |
| 24-bit, 32-bit | Converted to 16-bit with TPDF dithering |
| Mono | Duplicated to stereo |
| 32-bit float | Converted to 16-bit integer |
The tool enforces the following CD-DA (Red Book) specifications:
| Specification | Requirement |
|---|---|
| Audio format | 16-bit, 44.1kHz, stereo PCM |
| Maximum tracks | 99 |
| Maximum duration | 79:57 |
| Minimum track duration | 4 seconds |
| Track 1 pregap | 2 seconds (default) |
| ISRC format | CC-XXX-YY-NNNNN (country-registrant-year-designation) |
| MCN format | 13 digits (UPC/EAN with check digit) |
Projects are saved as .rbm files (JSON format) in a project directory:
MyAlbum_rbm/
├── MyAlbum.rbm # Project file (JSON)
├── _transcoded/ # Converted files (if any)
│ └── 01_track.wav
├── myalbum.wav # Master WAV (after export)
├── myalbum.cue # CUE sheet
└── myalbum.toc # TOC file for cdrdao
Project files contain:
- Album metadata (title, performer, songwriter, catalog number)
- Track list with individual metadata (title, performer, ISRC)
- Gap configurations (pregap, postgap per track)
- CD-TEXT information
Concatenates all tracks into a single WAV file with proper gaps, plus:
.cue- CUE sheet with CD-TEXT.toc- cdrdao TOC file for burning
Best for CD burning and replication.
Generates a CUE sheet referencing original WAV files. Useful for software playback but requires all source files to be present.
cdrdao is required only for the "Burn CD" feature.
# macOS (Homebrew)
brew install cdrdao
# Ubuntu/Debian
sudo apt install cdrdao
# Fedora
sudo dnf install cdrdao
# Arch Linux
sudo pacman -S cdrdaoRed Book Master automatically searches for cdrdao in:
- System PATH
/opt/homebrew/bin/cdrdao(Homebrew on Apple Silicon)/usr/local/bin/cdrdao(Homebrew on Intel Mac)/usr/bin/cdrdao(Linux)
| Crate | Purpose |
|---|---|
| slint | GUI framework (GUI only) |
| clap | Command-line argument parsing (CLI only) |
| inquire | Interactive prompts and menus (CLI only) |
| hound | WAV file reading and writing |
| rodio | Audio playback |
| rubato | High-quality audio resampling |
| rfd | Native file dialogs |
| serde / serde_json | Project file serialization |
| dirs | User preferences directory |
| colored | Terminal colors (CLI only) |
| thiserror | Error handling |
| chrono | Timestamps |
| indicatif | Progress bars (CLI only) |
- Use lower burn speeds - 4x or 8x is recommended for audio CDs
- Simulate first - Use the "Simulate only" option before actual burning
- Check track gaps - Default is 2s for track 1, 0 for others
- Preview playback - Listen to tracks before exporting
- Export before burning - The burn dialog requires an exported TOC file
- CD-TEXT compatibility - Some drives don't support CD-TEXT; disable if burning fails
Even if cdrdao is in your PATH, the program searches specific locations. Install via Homebrew on macOS or your system package manager on Linux.
Ensure you have a working audio output device. The program uses the system default audio output.
Large files (especially high sample rates) take longer to convert. The FFT-based resampler prioritizes quality over speed.
Some drives don't support CD-TEXT with the --driver generic-mmc-raw option. Disable the "Enable CD-TEXT" option in the burn dialog and try again.
Window size is saved to ~/Library/Application Support/redbookmaster/preferences.json on macOS. Delete this file to reset preferences.
This software is licensed under a Personal Use License. You are free to use, modify, and share the software for personal, educational, or internal business purposes at no cost.
You may NOT sell, commercially distribute, or bundle this software with paid products.
For commercial licensing inquiries, contact: mathias.karstaedt@gmail.com
See the LICENSE file for full terms.
Contributions are welcome! Please feel free to submit issues and pull requests.



