Difference between revisions of "PlaySound Command"

From GeoGebra Manual
Jump to: navigation, search
(typo)
Line 244: Line 244:
  
  
{{Example| 1=<code>PlaySound["C+E+G  R Ai Bi Ci  A4i B4i C4i ", 0]</code>  
+
{{Example| 1=<code>PlaySound["C+E+G  Rw Ai Bi Ci  A4i B4i C4i ", 0]</code>  
 
: Plays a quarter note chord CEG;  rests for a whole note;  plays the eighth notes A, B, C;  plays them again one octave lower.
 
: Plays a quarter note chord CEG;  rests for a whole note;  plays the eighth notes A, B, C;  plays them again one octave lower.
 
: Piano instrument is used.
 
: Piano instrument is used.

Revision as of 17:12, 22 July 2011



PlaySound[ <Note>, <Duration>, <Instrument> ]
Plays a MIDI note.
Note is an integer from 0 to 127 that represents a musical note given by the table below. When note = 60 a Middle C is played.
Duration is the time to play the note in seconds.
Instrument is an integer that represents the synthesized instrument used to play the note. See technical specifications at midi.org for possible instruments.
Most instruments are supported, but there are differences between computer platforms.
MIDI Notes
Octave C C# D D# E F F# G G# A A# B
0 0 1 2 3 4 5 6 7 8 9 10 11
1 12 13 14 15 16 17 18 19 20 21 22 23
2 24 25 26 27 28 29 30 31 32 33 34 35
3 36 37 38 39 40 41 42 43 44 45 46 47
4 48 49 50 51 51 53 54 55 56 57 58 59
5 60 61 62 63 64 65 66 67 68 69 70 71
6 72 73 74 75 76 77 78 79 80 81 82 83
7 84 85 86 87 88 89 90 91 92 93 94 95
8 96 97 98 99 100 101 102 103 104 105 106 107
9 108 109 110 111 112 113 114 115 116 117 118 119
10 120 121 122 123 124 125 126 127


PlaySound[ <Note Sequence>, <Instrument> ]
Plays a sequence of MIDI notes and commands using a JFugue music string.
Note Sequence is a text string that uses JFugue character commands.
Instrument is the default MIDI instrument used when the string is played.
The basic commands are given below. The full command set is described in
The Complete Guide to JFugue (English).


Basic JFugue Commands
Character Command
A-G Play the musical note given by the letter in octave 5
For sharps and flats add b or #
To change octaves add the octave number, e.g. A4
Note length is a quarter note unless specified otherwise
[number] Play the MIDI note given by the number (0-127)
+ Join notes together to play them in harmony, e.g. C+E+G
R Rest
w, h, q, i, s Add to the end of a note or rest; sets the length
w = whole note
h = half note
q = quarter note
i = eighth note
s = sixteenth note
/n Add to a note or rest; sets the length to n (a decimal number)
/1 = whole note
/.5 = half note
/.25 = quarter note
/2 = two measures
I[number] Set the instrument
V V followed by a number from 0 to 15 sets the MIDI channel. "V9" sets the MIDI percussion channel.
Space Play the previous note, combination of notes or rest.


Example: PlaySound["C+E+G Rw Ai Bi Ci A4i B4i C4i ", 0]
Plays a quarter note chord CEG; rests for a whole note; plays the eighth notes A, B, C; plays them again one octave lower.
Piano instrument is used.
Example: PlaySound["I[56] C5q D5q I[71] G5q F5q", 0]
Plays notes with different instruments. Trumpet = 56 and Clarinet = 71.
Example: PlaySound["V0 A3q B3q C3q B3q V1 A2h C2h", 0]
Plays notes in harmony with different voices.


PlaySound[ <File> ]
Plays a MIDI file (*.mid) or a text file (* .txt) containing a JFugue string.
"File" is the directory path to this file, e.g. PlaySound["path/to/myFile.mid"]
PlaySound[ <Function>, <Min Value>, <Max Value> ]
Plays a sound generated by Function, a time-valued function with range [-1,1]. The time units are seconds and the sound is played from time Min Value to Max Value. Sound is generated by 8-bit samples taken at a rate of 8000 samples per second.
Example: PlaySound[sin(440 2Pi x), 0, 1]
This plays a pure sine wave tone at 440 Hz (musical note A) for one second.


PlaySound[ <Function>, <Min Value>, <Max Value>, <Sample Rate>, <Sample Depth> ]
Plays a sound generated by Function, a time-valued function with range [-1,1]. The time units are seconds and the sound is played from time Min Value to Max Value. The sampling method is specified by "Sample Depth" and "Sample Rate".
"Sample Rate" is the number of sample function values taken each second. Allowable values are 8000, 11025, 16000, 22050, or 44100
"Sample Depth" is the data size of a sample in bits. Allowable values are 8 and 16.


PlaySound[ <Boolean Play> ]
Pause or resume play.
PlaySound[true] = play, PlaySound[false] = pause.
© 2024 International GeoGebra Institute