NAME
MIDI::Bassline::Walk - Generate walking basslines
VERSION
version 0.0103
SYNOPSIS
use MIDI::Bassline::Walk;
my $bassline = MIDI::Bassline::Walk->new(verbose => 1);
my $notes = $bassline->generate('C7b5', 8);
# MIDI:
# $score->n('qn', $_) for @$notes;
DESCRIPTION
MIDI::Bassline::Walk
generates randomized, walking basslines.
The logic (and music theory) implemented here, can generate some sour notes. And sometimes too much! This is an approximate composition tool, and not a drop-in bass player. Import the rendered MIDI into a DAW and alter things until they are suitable.
The chords recognized by this module, are those known by Music::Chord::Note. Please see the source of that module for the list.
ATTRIBUTES
intervals
$verbose = $bassline->intervals;
Allowed intervals passed to Music::VoiceGen.
Default: -3 -2 -1 1 2 3
octave
$octave = $bassline->octave;
Lowest MIDI octave.
Default: 2
verbose
$verbose = $bassline->verbose;
Show progress.
Default: 0
METHODS
new
$bassline = MIDI::Bassline::Walk->new(
intervals => $intervals,
octave => $octave,
verbose => $verbose,
);
Create a new MIDI::Bassline::Walk
object.
generate
$notes = $bassline->generate;
$notes = $bassline->generate($chord, $n);
Generate n MIDI pitch numbers given the chord.
Defaults:
chord: C
n: 4
SEE ALSO
AUTHOR
Gene Boggs <gene@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2021 by Gene Boggs.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)