BreakPal (Breakbeat Palette) is a Renoise tool designed to transform a source phrase into a comprehensive library of chops and phrases, enabling rapid song construction through automated pattern generation and manipulation.
Special shout out to esaruoho(https://github.com/esaruoho) and erlsh(https://github.com/dethine) from the TRACKERCORPS and Renoise Discord servers for their inspiration and feedback!
-
Note Division Generation
- Takes your source phrase and creates multiple versions at different note divisions
- Automatically segments the source into halves, quarters, and eighths
- Allows quick access to specific portions of your source phrase
- Generated phrases maintain all sample and effect data from the source
-
Breakpoint Pattern Generation
- Uses slices tagged with "Breakpoint" to reordered breaks
- Automatically identifies and isolates sections between breakpoints
- Creates all possible permutations of these breaks
- Maintains timing relationships between breaks
- Preserves groove and feel while reordering breaks
- Supports complex arrangements by handling:
- Timing transitions between sections
- Delay value adjustments
- Line number calculations
- Volume relationships
-
Cycle-based Variations
- Uses slices tagged with "Cycle" to create permutations
- Rotates through all possible combinations of tagged slices
- Creates variations for both the full source phrase and all note divisions
- Maintains groove while providing rhythmic variations
-
Roll Pattern Generation
- Works with pairs of similarly labeled slices (e.g., "Snare")
- Requires one slice tagged as "Roll" (primary hit) and another as "Ghost Note" (secondary hit)
- Generates multiple variations:
- Volume curves (Linear, Logarithmic, Exponential)
- Direction (Up/Down)
- Effects (Upshift, Downshift, Staccato, Stretch, Backwards, Reversal)
- Creates patterns at multiple timing divisions (1/2 to 1/64)
-
Shuffle Pattern Generation
- Creates patterns using multiple pairs of labeled slices
- Pairs must share the same label (e.g., "Snare", "Hi-Hat")
- Combines slices tagged with "Shuffle" (primary) and "Ghost Note" (secondary)
- Generates various shuffle patterns by combining multiple label pairs
- Supports different time divisions and variations
-
Multi-Sample Roll Pattern Generation
- Creates complex patterns using multiple samples of the same type
- Supports roll and ghost note combinations
- Includes templates for various rhythmic patterns
- Generates timing variations for each pattern
-
Complex Roll Pattern Generation
- Paradiddles and crossover patterns
- Complex rolls and multi-instrument patterns
- Templates for various drumming techniques
- Supports inverted pattern variations
-
Beat Pattern Generation
- Includes templates for various musical styles:
- Latin (Samba, Afro-Cuban)
- Afrobeat
- Jazz
- Funk
- Creates patterns with multiple instruments
- Supports complex rhythmic structures
- Generates variations at different time divisions
- Includes templates for various musical styles:
-
Euclidean Rhythm Generation
- Generates patterns based on the mathematical concept of Euclidean rhythms
- Works with pairs of shuffle and ghost note slices
- Includes templates for various Euclidean patterns:
- Patterns from 2 to 11 pulses
- Different step lengths (3 to 12 steps)
- Multiple rotation variations for each pattern
- Creates timing variations:
- Normal speed
- Half-speed versions
- Double-speed versions
- Automatically organizes patterns into separate instruments when needed
- Maintains consistent naming conventions for easy navigation
- Preserves volume relationships between shuffle and ghost hits
-
Break Pattern Symbol Editor
- Provides a visual interface for creating complex break patterns using symbolic notation
- Displays labeled sections of breaks with detailed timing information:
- Line numbers and positions
- Sample labels and types
- Delay values in hexadecimal format
- Supports flexible pattern creation through:
- Base symbols (A-E) for direct break references
- Composite symbols (U-Z) for pattern macros
- Break string syntax for pattern sequencing
- Features comprehensive syntax tools:
- Pattern validation and error checking
- Composite symbol resolution
- Import/export of break patterns and macros
- Maintains timing relationships:
- Preserves original sample positions
- Handles delay values between sections
- Ensures smooth transitions between breaks
- Streamlines break creation workflow:
- Visual feedback for break composition
- Real-time pattern validation
- Direct phrase generation from break strings
- Supports pattern reuse through:
- Savable break string templates
- Reusable composite symbol definitions
- CSV import/export functionality
- Comprehensive tagging system with five main flags:
- Breakpoint: Marks slices that define section boundaries for break pattern generation
- Cycle: Marks slices for rotation in variation generation
- Roll: Designates primary hits for roll patterns
- Ghost Note: Marks secondary/quieter hits for both rolls and shuffles
- Shuffle: Marks primary hits for shuffle patterns
- Supports standard drum labels (Kick, Snare, Hi-Hat, etc.)
- Labels are used to maintain logical pairing in pattern generation
- Import/Export functionality to save and reapply slice label data
- Start with a source phrase in Renoise
- Open BreakPal from the Tools menu
- Label your slices:
- Click "Label Slices"
- Assign appropriate instrument labels to each slice
- Set appropriate flags based on desired functions:
- Use "Breakpoint" to mark section boundaries
- Use "Cycle" for variation generation
- Use "Roll" + "Ghost Note" pairs for roll patterns
- Use "Shuffle" + "Ghost Note" pairs for shuffle and Euclidean patterns
- Save your labels
After labeling, use the generation buttons in this recommended order:
-
Make Breaks:
- Uses slices tagged with "Breakpoint"
- Creates all possible break permutations
- Maintains timing relationships
-
Create Phrases by Division:
- Creates divisions of your source phrase
- No labels required for this function
- Forms the base for other generations
-
Modify Phrases with Labels:
- Uses slices tagged with "Cycle"
- Creates variations of both source and divided phrases
-
Make Rolls:
- Works with "Roll" + "Ghost Note" pairs
- Creates various roll patterns and variations
-
Make Shuffles:
- Uses "Shuffle" + "Ghost Note" pairs
- Combines multiple pairs for complex shuffle patterns
-
Make Complex Rolls:
- Generates paradiddles and crossover patterns
- Creates multi-sample roll variations
- Includes multiple roll types and styles
- Supports advanced rhythmic patterns
-
Make Beats:
- Creates patterns for various musical styles
- Generates multi-instrument patterns
- Supports different time divisions
-
Make Euclidean Rhythms:
- Uses "Shuffle" + "Ghost Note" pairs
- Creates mathematically precise rhythmic patterns
- Generates rotated variations
- Includes timing variations (normal, half, double speed)
- Access generated patterns through the phrase editor
- Use the
Zeffect command in the pattern editor to trigger phrases - Recall labels anytime using the "Recall Labels" button
- Import/Export labels for reuse across projects
The Symbol Editor provides a powerful interface for creating break patterns using a syntax inspired by L-Systems (Lindenmayer Systems). Just as L-Systems use simple rules to generate complex visual patterns, the Symbol Editor uses a simple string-based syntax to create intricate break patterns.
-
Base Symbols (A-E)
- Each base symbol represents a labeled break section from your source material
- Breaks are automatically identified using "Breakpoint" flags in the labeler
- The editor displays the contents of each break using the format:
[LINE]-[LABEL]-[DELAY] - Example:
04-KICK_-d00represents a kick drum at line 4 with no delay
-
Composite Symbols (U-Z)
- Function like production rules in L-Systems
- Allow you to define reusable sequences of base symbols
- Can contain any combination of base symbols (A-E)
- Useful for creating recurring patterns or variations
-
Break String Syntax
- Similar to L-System axioms and production rules
- Combines base and composite symbols to define break patterns
- Read left-to-right to determine break sequence
- Examples:
ABCDE: Basic sequence of all breaks in orderAABAA: Repetition of first break with middle variationUVWXY: Sequence using only composite symbols
- Basic Patterns
Break String: ABCBA
Result: Palindrome pattern using breaks A through C
- Composite Symbols
U = ABC
V = CBA
Break String: UVUV
Result: Alternating forward and reverse patterns
- Complex Patterns
U = AABA
V = CCDC
Break String: UVVU
Result: Nested palindrome with variations
Just as L-Systems use:
- Axiom: Initial state
- Production Rules: Pattern generation rules
- Iterations: Rule application
The Symbol Editor uses:
- Break String: Initial pattern (like axiom)
- Composite Symbols: Reusable patterns (like production rules)
- Pattern Generation: Converting symbols to actual breaks
- Analyzes the currently selected phrase and displays detailed information:
- Note data for each line
- Instrument values
- Distance between notes
- Useful for understanding phrase structure before modification
- Available after pattern generation
- Displays a comprehensive list of created phrases with their:
- Names
- Index numbers
- Pattern structure
- Helps navigate large sets of generated patterns
- Particularly useful when using the
Zeffect command in the pattern editor
- The roll and Euclidean pattern generation can be CPU-intensive
- On lower-end systems, you may need to:
- Work with fewer samples
- Dismiss any hanging or unresponsive dialogs during generation
- Be patient during processing
- Consider generating one type of pattern at a time
- Large numbers of slices may affect UI responsiveness
- Limited to 4 breakpoints (5 breaks) per instrument and overflow not handled yet
- Euclidean patterns are automatically split across multiple instruments when they exceed 120 patterns
- Humanize notes toggle
- Refined note placement based on slice length
- Option for best fit
- Option for strict fit only
- Option for trimmed fit
- Advanced menu for selecting which types to generate
- More Beat and Roll Types
- Additional Euclidean pattern templates
- Custom Euclidean pattern builder