Morse Code Audio Player & Generator
Type text, adjust speed, tone, and volume, then play it or download a WAV file generated in your browser.
Morse Code Audio: Settings That Matter
This tool converts the text you enter into International Morse code and synthesizes the timing in your browser. Nothing is uploaded. Use playback for listening practice or download the generated signal as a WAV file.
Speed in words per minute
WPM changes dot duration and all related spacing. Start slowly enough to copy accurately, then increase the speed in small steps. This player uses standard character timing; it does not add separate Farnsworth spacing.
Tone frequency
700 Hz is a practical default, not a required international pitch. Choose a tone that is comfortable and easy to distinguish. Pitch does not change the Morse symbols or their timing.
How the audio is made
The player uses the Web Audio API and a sine-wave oscillator. The WAV download is rendered locally using the same speed, frequency, and volume settings shown above.
Timing you can verify
The standard PARIS convention uses a dot duration of 1200 ÷ WPM milliseconds. A dash lasts three dot units; gaps inside a character last one unit, gaps between characters three units, and word gaps seven units.
| Speed | Dot | Dash | PARIS word |
|---|---|---|---|
| 10 WPM | 120 ms | 360 ms | 6 seconds |
| 15 WPM | 80 ms | 240 ms | 4 seconds |
| 20 WPM | 60 ms | 180 ms | 3 seconds |
| 30 WPM | 40 ms | 120 ms | 2 seconds |
Playback and download checks
- Enter SOS; you should hear three short signals, three long signals, then three short signals.
- Move volume to 0%; playback should be silent while timing continues.
- Change WPM and download again; the WAV duration should change while pitch follows the frequency control.
Current limits: the player does not record a microphone, decode received audio, export MP3, or add Farnsworth spacing. Browser audio support and device volume can affect playback.
Worked timing examples
Example 1 — SOS at 20 WPM: one timing unit is 60 ms. Each S uses three 60 ms dots plus two 60 ms internal gaps, or 300 ms. O uses three 180 ms dashes plus two 60 ms gaps, or 660 ms. Adding the two 180 ms letter gaps gives approximately 1.62 seconds of keyed signal and spacing.
Example 2 — A B at 20 WPM: A (.-) takes 300 ms, the word gap takes 420 ms, and B (-...) takes 540 ms, for approximately 1.26 seconds before any player start/end handling.
Use the player to build listening drills, verify the rhythm of a prepared message, or compare how the same text feels at two WPM settings. It is not a medical alarm, a radio transmitter, or an audio decoder.