tabr0.5.1 package

Music Notation Syntax, Manipulation, Analysis and Transcription in R

append_phrases

Concatenate and repeat

as_music_df

Noteworthy string to data frame

chord_arpeggiate

Arpeggiate a chord

chord_break

Broken chords

chord_def

Define chords

chord_invert

Chord inversion

chord_is_major

Check if chords are major or minor

chord_set

Generate a chord set

chord-compare

Rank, order and sort chords and notes

chord-filter

Extract notes from chords

chord-mapping

Chord mapping

chords

Chord constructors

double-bracket

Double bracket methods for tabr classes

dyad

Construct a dyad

freq_ratio

Frequency ratios

hp

Hammer ons and pull offs

interval_semitones

Interval semitones

intervals

Interval helpers

is_diatonic

Check if notes and chords are diatonic

keys

Key signatures

lilypond_root

LilyPond installation information

lilypond

Save score to LilyPond file

lp_chord_id

LilyPond chord notation

lyrics

Create lyrics and check lyrics string validity

midily

Convert MIDI to LilyPond file

miditab

Convert MIDI to tablature

mode-helpers

Mode helpers

music-helpers

Accessing music object values and attributes

music

Create music objects and check music string validity

n_measures

Summarize rhythm and time of music objects

notate

Add text to music staff

note_ngram

Note/chord n-gram

note_slice

Slice, sort, rotate, shift and arpeggiate notes

note-checks

Basic noteworthy string checks

note-coerce

Basic noteworthy strings formatting and coercion helpers

note-equivalence

Note, pitch and chord equivalence

note-logic

Relational operators for noteworthy class

note-metadata

Noteworthy string metadata

note-summaries

Noteworthy string summaries

noteinfo

Note info helpers

phrase-checks

Phrase validation and coercion

phrase

Create a musical phrase

pitch_freq

Pitch conversions

pitch_seq

Create a sequence from pitch notation

plot_fretboard

Chord and fretboard diagram plots

plot_music

Plot sheet music snippet with LilyPond

ratio_to_cents

Convert between chord frequency ratios and cents

read_midi

Read, inspect and convert MIDI file contents

render_chordchart

Render a chord chart with LilyPond

render_music

Render sheet music snippet with LilyPond

repeats

Repeat phrases

rest

Create rests

scale_chords

Diatonic chords

scale-deg

Scale degrees and mappings

scale-helpers

Scale helpers

score

Create a music score

sf_phrase

Create a musical phrase from string/fret combinations

simplify_phrase

Simplify the LilyPond syntax of a phrase

single-bracket

Single bracket methods for tabr classes

string_unfold

Fold and unfold strings

tab

Render sheet music with LilyPond

tabr_options

Options

tabr-c

Concatenate for tabr classes

tabr-details

tabr: Additional Detals

tabr-head

Head and tail for tabr classes

tabr-length

Length for tabr classes

tabr-methods

Summary of implemented S3 generic methods

tabr-rep

Repeat for tabr classes

tabr-rev

Reverse for tabr classes

tabr

tabr: Music Notation Syntax, Manipulation, Analysis and Transcription ...

tie

Tied notes

to_tabr

Music notation syntax converters

track

Create a music track

trackbind

Bind track tables

transpose

Transpose pitch

tuplet

Tuplets

valid-noteinfo

Check note info validity

valid-notes

Check note and chord validity

Provides a music notation syntax and a collection of music programming functions for generating, manipulating, organizing, and analyzing musical information in R. Music syntax can be entered directly in character strings, for example to quickly transcribe short pieces of music. The package contains functions for directly performing various mathematical, logical and organizational operations and musical transformations on special object classes that facilitate working with music data and notation. The same music data can be organized in tidy data frames for a familiar and powerful approach to the analysis of large amounts of structured music data. Functions are available for mapping seamlessly between these formats and their representations of musical information. The package also provides an API to 'LilyPond' (<https://lilypond.org/>) for transcribing musical representations in R into tablature ("tabs") and sheet music. 'LilyPond' is open source music engraving software for generating high quality sheet music based on markup syntax. The package generates 'LilyPond' files from R code and can pass them to the 'LilyPond' command line interface to be rendered into sheet music PDF files or inserted into R markdown documents. The package offers nominal MIDI file output support in conjunction with rendering sheet music. The package can read MIDI files and attempts to structure the MIDI data to integrate as best as possible with the data structures and functionality found throughout the package.

  • Maintainer: Matthew Leonawicz
  • License: MIT + file LICENSE
  • Last published: 2024-09-11