PlayTune

This function plays musical tunes. Write your own musical tune and call the function to play it.

You are now following this Submission

Editor's Note: This file was a File Exchange Pick of the Week

This function plays musical tunes. Write your own musical tune and call the function to play it.
Notation:
[CDEFGAB] keys, 5 full octaves
[12345678] key/rest duration, with the default [1] semiquaver, [2] quaver, [4] crochet and [8] minim
[#] sharp / [b] flat / [.] rest / [^] raise octave / [_] lower octave

The algorithm is based on the Karplus-Strong string synthesis methods:
[1] Karplus & Strong, "Digital synthesis of plucked string and drum timbres", Computer Music Journal, vol. 7, no. 2, pp. 43-55, 1983.
[2] Jaffe & Smith, "Extensions of the Karplus-Strong plucked-string algorithm", Computer Music Journal, vol. 7, no. 2, pp. 56-69, 1983.

The musical scores for Canon in D (Pachelbel), Prelude No 1 (Bach), and The Globe Trotter are also provided.

Essential files: playtune.m
Accompanying files: canon_in_d.m, prelude_no_1.m, the_globe_trotter.m

Cite As

Alan Tan (2026). PlayTune (https://www.mathworks.com/matlabcentral/fileexchange/11441-playtune), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
2.0

Switched the algorithm to the Karplus-Strong string synthesis method

1.1

Edited the version information

1.0.0.0

Added BSD license.
Added Fantasie Impromptu (plays both hands), one of my favorite pieces by Chopin.