There is an ongoing outage on the primary CPAN mirror. It is possible to work around the issue by using MetaCPAN as a mirror.

NAME

Music::MelodicDevice::Arpeggiation - Apply arpeggiation patterns to groups of notes

VERSION

version 0.0102

SYNOPSIS

use Music::MelodicDevice::Arpeggiation;

my $arp = Music::MelodicDevice::Arpeggiation->new;

my $arped = $arp->arp([60,64,67], 1, [0,1,2,1], 3);

DESCRIPTION

Music::MelodicDevice::Arpeggiation applies arpeggiation patterns to groups of notes.

ATTRIBUTES

pattern

$arp->pattern(\@pattern);
$pattern = $arp->pattern;

Default: [0,1,2]

Arpeggiation note index selection pattern.

duration

$arp->duration($duration);
$duration = $arp->duration;

Default: 1 (quarter-note)

Duration over which to distribute the arpeggiated pattern of notes.

repeats

$arp->repeats($repeats);
$repeats = $arp->repeats;

Default: 1

Number of times to repeat the arpeggiated pattern of notes.

verbose

$arp->verbose($verbose);
$verbose = $arp->verbose;

Default: 0

Show progress.

METHODS

new

$x = Music::MelodicDevice::Arpeggiation->new(
  scale_note => $scale_note,
  scale_name => $scale_name,
  verbose    => $verbose,
);

Create a new Music::MelodicDevice::Arpeggiation object.

arp

$notes = $arp->arp(\@pitches); # use object defaults
$notes = $arp->arp(\@pitches, $duration);
$notes = $arp->arp(\@pitches, $duration, \@pattern);
$notes = $arp->arp(\@pitches, $duration, \@pattern, $repeats);

TODO description

SEE ALSO

The t/01-methods.t and eg/* programs in this distribution

Data::Dumper::Compact

Moo

AUTHOR

Gene Boggs <gene.boggs@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2025 by Gene Boggs.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.