Irrvogel's MIDI Text Display: User Manual
Irrvogel's MIDI Text Display turns text into MIDI notes, so your text appears as readable words in your DAW's piano roll, lined up with your project's bars. It is a CLAP and VST®3 plugin for DAWs that support them, plus a standalone program.
Irrvogel's MIDI Text Display product page
Version 2026.1.1, released 1 November 2026. Updates, including security updates, for this version until December 2031. Product id ivi-midi-text-display.
If the manual and the software disagree, please tell us at support@irrvogel.com.
Safety and warnings
Read this before you start, because later chapters point back here wherever a warning matters.
Volume and your hearing
Warning: A text can produce many notes that play together. Check the instrument's volume before you press play, and be careful with headphones.
The plugin only sends MIDI notes, so the instrument on its track decides how loud they are. Audio on the track passes through unchanged, and without audio input the plugin outputs silence. Section 6 of the license terms says more.
Files that are not code-signed
The installer and the files in the ZIP are not code-signed yet, so Windows shows "Windows protected your PC" before the installer starts. The standalone program gets a SmartScreen warning the first time you start it. Before you allow either, compare the SHA-256 checksum of the downloaded file with the one on the download page.
Very long texts
A long text makes many notes, and the higher Note Rows is, the more notes it makes. A long text can reach 100000 notes. Every 1000 notes add about 8 KB to a MIDI file. Your DAW has to import and draw every note in its piano roll, so some DAWs can slow down. Above 100000 notes the readout above the preview gets a warning mark (see "Preview"). If your DAW slows down, lower Note Rows, write fewer sections, or select the part you need and save it with Save selection as MIDI file….
The demo writes two sections
Without a license, the MIDI you drag, save or play live covers only the first 2 sections of your text, and later sections get no notes. Activate your license key before you export MIDI for a finished project (details in "Demo mode" in the chapter "License").
Clearing the text
Clear the text… removes all the text, and Undo cannot bring it back, so the plugin asks before it clears anything (see "Clearing the text" in the chapter "Writing text").
Back up your work
Save your DAW projects and the MIDI files you export regularly, and keep a copy on another drive. The text lives in the project, so a lost project takes the text with it.
Installation
Files in the download
The ZIP has one top folder named "MIDI Text Display
| File | What it is |
|---|---|
| INSTALLATION.txt | the basics of installing and uninstalling, with a link to this manual |
| MIDI Text Display.vst3 | VST3 plugin (a folder) |
| MIDI Text Display.clap | CLAP plugin |
| MIDI Text Display.exe | standalone program (on Linux: MIDI Text Display) |
| Manual (English).pdf | this manual in English |
| Handbuch (Deutsch).pdf | this manual in German |
| License terms (English).txt | license terms in English |
| Lizenzbedingungen (Deutsch).txt | license terms in German |
| Changelog.txt | what changed in each version |
| Privacy notice (English).txt | what the software sends and to whom, in English |
| Datenschutzhinweis (Deutsch).txt | the same in German |
| Licenses | folder with "Third-party licenses.txt" (notices for the open-source parts) and "DejaVu font license.txt" (license of the embedded DejaVu font) |
The installer puts the documents in one language only, the one you pick during setup. They go into the subfolder "Documents" (English) or "Dokumente" (German) in the program folder. They keep the names from the ZIP, for example "Manual (English).pdf" or "Handbuch (Deutsch).pdf". The license terms, the privacy notice and INSTALLATION.txt are always installed there. The manual and Changelog.txt are optional. You choose them on the "Choose parts" page, where they are called "Manual (PDF)" and "Changelog". They are installed only if you leave them ticked. The "Licenses" folder stays directly in the program folder. The Linux package has the same layout as the ZIP.
System requirements
- Windows 10 or 11, 64-bit
- Linux: 64-bit (x86-64) with glibc 2.31 or newer, for example Debian 11 or Ubuntu 20.04 and newer
- A graphics card with DirectX 12 (on Linux: Vulkan)
- An internet connection once for activation and again after you install a newer version. It can be this computer, another computer or a phone.
This version runs on Windows and Linux.
Installer or ZIP
For Windows there are two downloads with the same files, and you need only one of them.
ivi-midi-text-display-<version>-windows-x64-setup.exeis the installer. It copies the plugins, the standalone program and the documents and adds an entry in Settings → Apps → Installed apps. You choose the folders for the VST3 plugin and the CLAP plugin, and the defaults are the standard foldersC:\Program Files\Common Files\VST3andC:\Program Files\Common Files\CLAP. The program, the documents and the uninstaller always go intoC:\Program Files\Irrvogel\MIDI Text Display, where only administrators can change them.ivi-midi-text-display-<version>-windows-x64.zipholds the same files for you to copy yourself (see "Install on Windows" below).
To use the installer:
- Close your DAW.
- Start the installer. Windows shows "Windows protected your PC" because the installer is not code-signed yet. If you like, compare the SHA-256 checksum of the file with the one on the download page first (see "Safety and warnings"). Then click More info and Run anyway.
- Windows asks whether the app may make changes to your device, because the plugin folders are shared by all users. Click Yes.
- Choose the language, read the license terms and tick the box to accept them. Then pick from CLAP plugin, VST3 plugin, standalone program, manual and changelog. All are ticked at first. Untick what you don't need. The license terms and notices are always installed. The Start menu entry comes only with the standalone program.
- Choose the folders for the VST3 plugin and the CLAP plugin, or keep the defaults. If you pick other folders, tell your DAW about them (see "The plugin does not show up in my DAW").
- Open your DAW and let it scan for new plugins.
When the installer finds an installation, it shows the folders that installation uses and offers Update, Repair (for the same version) or Uninstall. Update and repair reuse the plugin folders, even if you chose other folders the first time. The installer asks before it installs an older version over a newer one.
The installer never connects to the internet. The plugins and the standalone program run only when you open them.
Note: If Smart App Control is turned on (Windows 11), Windows can block the installer because it isn't signed yet, and the "Run anyway" button is missing then. In that case write to support@irrvogel.com.
Install on Windows
- Close your DAW.
- Unpack the ZIP, which has the top folder "MIDI Text Display
". - Copy "MIDI Text Display.clap" to
C:\Program Files\Common Files\CLAP. - Copy the folder "MIDI Text Display.vst3" to
C:\Program Files\Common Files\VST3. Windows asks for administrator rights for both folders. - Open your DAW and let it scan for new plugins. Insert MIDI Text Display on an instrument or MIDI track.
Tip: Copy both formats if you aren't sure which one your DAW supports, since you need only one.
To use the standalone program, copy "MIDI Text Display.exe" to any folder and start it there.
Note: Windows may warn you the first time you start the standalone program, because it isn't code-signed yet. Read "Safety and warnings" before you allow it.
Install on Linux
- Close your DAW.
- Unpack
ivi-midi-text-display-<version>-linux-x64.tar.gz. - Copy "MIDI Text Display.clap" to
~/.clap. - Copy the folder "MIDI Text Display.vst3" to
~/.vst3, and create the folders if they don't exist yet. - Open your DAW and let it scan for new plugins.
For all users on the computer, use /usr/lib/clap and /usr/lib/vst3
instead, which needs root rights.
To use the standalone program, copy "MIDI Text Display" to any folder and start it there.
Activation
The software runs in demo mode until you enter a license key. Every feature works, but MIDI output and export cover only the first 2 sections of your text, the font is the default one, and the Layout controls and the text files are locked (details in "Demo mode" in the chapter "License"). The demo and the full version are the same download, so after you buy a license key you don't have to install anything again.
A license key works on up to 2 computers at the same time. One activation covers the CLAP plugin, the VST3 plugin and the standalone program on that computer.
Activate online
- Open the plugin or the standalone program.
- Open the menu at the top right (⋮) and choose License….
- Paste the license key from your purchase email (Paste or Ctrl+V, or type it).
- The Computer name field starts with the name Windows gives this computer, and you can change it (up to 64 characters). The license page shows this name for the computer.
- Press Activate. If the key is wrong, the window stays open and shows the error.
Under the computer name, one line lists the machine ID, the operating system and the computer name that activation sends. Its Privacy link opens the privacy notice. The license server stores the computer name. The plugin also keeps it in its license folder on your computer, without a key or an email address, so that the license window shows the same name as the license page. The copy on your computer is deleted together with the license confirmation. Later license checks send no name.
The computer needs an internet connection for this one step, and after activation the software works offline. A newer version of the plugin needs one more contact with the license server, or a new offline activation, before it accepts your license. You can skip this once we have published the switch-on file for a long license server outage (see "Online and offline").
Activate without internet
Activation needs internet once, and again after you install a newer version, either on this computer or on another device through offline activation. On a computer without internet, follow these steps:
- Open ⋮ → License… and choose Offline activation. The window now shows numbered steps, the Activation code and a Back button, and the key field is hidden until you go back.
- Take the code to another device. Copy puts it on the clipboard. Save as file… next to it saves the code together with the steps as a text file that you can carry over on a USB stick.
- On any device that is online (a phone will do), open the activation page, license.irrvogel.com/activate, and enter the code together with your license key. The page gives you an activation file.
- Bring it back to this computer, press Load file… (or paste the file's text with Paste) and press Activate.
First steps
- Insert MIDI Text Display on an instrument or MIDI track (CLAP or VST3).
- Type your text into the text area.
- Leave a blank line between the sections of your text, and set how long each section lasts (the length field and unit in the top bar).
- Drag the arrow button onto a track, or leave the MIDI output switched on (see the ⋮ menu) and the plugin sends the notes to the track while the project plays.
Before you press play, check the instrument's volume (see "Safety and warnings").
The first time you open the plugin, a short guided tour walks you through the editor, and you can restart it any time from the ⋮ menu.
Writing text
Note: A section is a block of lines with a blank line before and after it. Every section gets its own stretch of time, the sections follow one another from the start of the song, and the text of a section stays inside its own time.
What you type
| You type | What happens |
|---|---|
| Enter | new line in the same section. The empty line under the last line of a section still belongs to it while the cursor is on it. A second Enter leaves the section, so the text you type next starts a new one |
| a blank line | starts the next section |
| Shift+Enter | adds an empty line inside the section, below the line the cursor is in, or above it when the cursor stands before the first letter. On an empty line it makes that line part of the section |
| Backspace | at the start of a line, removes the line break in front of it. An empty line inside a section goes with one press and the section stays whole |
| Ctrl+Shift+Enter | opens the window of the section the cursor is in |
<3>text</3> |
puts that passage on MIDI channel 3 |
<rb>text</rb> |
one channel per letter, each letter goes on the next channel |
<rr>text</rr> |
channel gradient from top to bottom, the channel changes step by step from the top of the letters to the bottom |
<gr>text</gr> |
channel gradient from left to right, the channel changes step by step from the left end of the line to the right end |
<wd>text</wd> |
one channel per word, each word goes on the next channel and spaces are skipped |
<r> |
back to channel 1 |
An empty line holds its place without a letter. In a Together section it keeps the space of a line free, so the other lines don't move up to fill it, and in a One after another section it is a rest with a length of its own. Typing on an empty line turns it into a normal line.
Undo and redo
Ctrl+Z takes back the last change, and Ctrl+Y or Ctrl+Shift+Z puts it back. The same two entries, Undo and Redo, are in the ⋮ menu, grayed out while there is nothing to take back or put back.
Undo covers the text (typing, paste, cut, delete, Enter and the empty lines) and the settings of the sections (name, color, Together or One after another, length, time signature and rest). Typing a word counts as one step, and a pause, a click or a new kind of edit starts the next step. A run of Backspace is one step, and so is a number you type into a field of the section window. Undo puts the cursor and the selection back where they were, and it keeps the last 200 steps. The steps belong to the open plugin window, so they are not saved with your project, and loading a project starts them again.
The length in the top bar and its unit are covered too, whether you type a number or press ÷2 or ×2. Undo writes the old value back through your DAW, which records it as an ordinary change of the parameter. A change that the DAW makes itself, such as automation or its own undo, is not a step here, and Undo of the text leaves it as it is.
The two keys work while the cursor is in the text area. Some DAWs keep Ctrl+Z for their own undo and never pass it to the plugin. If yours does, use Undo and Redo in the ⋮ menu, which always work. Clear the text… and Replace (when you open a file over your text) start the steps again, so they can't be taken back.
Together or one after another
A section plays its lines in one of two ways. Together stacks all the lines in one block that lasts as long as the section. One after another gives every line its own turn, and each turn lasts as long as the section's length, so four lines at 2 bars take 8 bars. The top bar sets the way new sections play, and each section can choose its own in its window.
Section marks
Every section carries marks in the text area. A band in the section's color runs down the left side, a colored rule sits above the first line and under the last, and a tag at the right end of the top rule shows the name, the length and the time signature, for example Chorus, 4 bars, 4/4. In a One after another section the length reads "4 bars each", and a time signature that follows your DAW reads "4/4 from host".
- Click the tag, or press Ctrl+Shift+Enter with the cursor in the section, to open the section window.
- The gap above a section holds a +. Click it to add a rest before the section. The rest shows as a striped gap with a label such as "Rest 1 bar". A click on the label opens the section window to change the rest, and the × at the end of the label removes the rest in one click.
- In a Together section, an empty line shows a faint "empty line". It keeps the space of a line free, and in One after another the same empty line becomes a rest, as the tooltip says.
- In a One after another section, every line has a chip behind its text with its length, and an empty line shows a pill such as "Rest 2 bars". A click on a chip or a pill opens the window of that line, and the × on a pill takes the empty line out of the text. A small + sits between every two lines, faint until the pointer is on it, and adds a rest right there as an empty line.
- In demo mode, sections after the second are grayed and carry a hint button that asks for a license, because they get no notes. A click on the hint opens the license window.
Whole Text shows no marks, because all the text is one block.
The section window
The section window opens under the tag of a section. Every setting in it is an ordinary field, so the keyboard reaches all of them.
| Setting | What it does |
|---|---|
| Name | The name on the tag and in messages, up to 24 characters. An empty name gives "Section 1", "Section 2" and so on, by place in the text |
| Color | Eight colors in a row, and More shows all twenty. The color marks the section in the text and in the preview. Sections without a choice take the eight colors in turn |
| Lines | Together or One after another. Same as top bar goes back to the choice of the top bar |
| Length (Each line in One after another) | How long the section lasts, or each of its lines. It is a number with the buttons ÷2 and ×2 and a unit (see "Lengths and units"). Same as top bar goes back to the top bar's length |
| Time signature | The numbers the bars of this section are counted in, or the From host switch to follow your DAW. The numbers show the DAW's value, grayed out, while From host is on. Same as top bar goes back to the top bar's time signature |
| Rest before | Silence before the section. It counts in bars until you pick another unit, and 0 or Remove the rest takes it away |
| Layout | The button Layout for this section opens the Layout drawer for this section. The note beside it says how many settings the section has of its own |
The window of a line opens from the chip or the pill of a One after another section. It holds the length of that line, or of the rest an empty line stands for, with Same as section to go back to the section's length. For an empty line it also has Remove the empty line.
Settings stay with their section when you edit the text, and after a paste the plugin matches sections by their text, which can go wrong between sections that look alike. A section you add by typing or pasting starts with the settings of the top bar.
The row next to Text
The row next to the word Text shows where the cursor is, in short groups, for example Chorus, line 4 of 5, bars 5 to 8 and 4/4 from host. The bars count from the start of the song.
A message takes the row's place for as long as it applies. If several apply, the row shows the first of these:
- Your DAW plays a time signature that differs from the section at the playhead, for example "Your DAW plays 3/4 in Chorus, but the section is set to 4/4." The Use 3/4 button next to it sets that section to the DAW's time signature. A section that follows the host with From host never gets this message.
- A notice about the letters (see "One letter size").
- What the last text file you opened contained (see "Text files"), until you edit the text.
- A problem with the text, for example characters that don't fit. Messages about files and saving show at the bottom left of the text area instead. The text area then gets a red outline.
Channel patterns
A pattern changes the MIDI channel step by step. The colors come from your DAW, so if it colors notes by channel, the text appears in colors in the piano roll. The right-click menu has four built-in patterns under Patterns.
| Menu entry | What it does |
|---|---|
| One channel per letter | Each letter goes on the next channel, from 1 to 16 and then around again. |
| Channel gradient: top to bottom | In each line the channel changes step by step from the top of the letters to the bottom, from 1 to 16. |
| Channel gradient: left to right | In each line the channel changes step by step from the left end to the right end, from 1 to 16, in groups of equal width. |
| One channel per word | Each word goes on the next channel, from 1 to 16 and then around again. Spaces are skipped, and the count carries on over the line breaks inside the same passage. |
With text selected, the entry wraps the selection in the pattern tags (for
example <rr> and </rr>). Without a selection it inserts the opening tag
at the cursor, and the pattern runs until the closing tag or until <r>.
The preview, the dragged MIDI and the saved MIDI file all use the pattern,
and it is saved with the text in your project.
Scripts
The text can be in Latin, Cyrillic, Greek, Japanese, Chinese, Korean, Hebrew or Arabic, and a line can mix them. The notes draw each letter in the font you chose in the top bar. A character that this font lacks is drawn from a font installed on your computer, on the same baseline and at the same letter height. On Windows these are Yu Gothic or Meiryo for Japanese, Microsoft YaHei for Chinese, Malgun Gothic for Korean and Segoe UI for most other characters. On Linux the plugin looks for fonts in the folders that fontconfig lists, and in the usual font folders of Debian, Fedora, Arch and NixOS, including your own ~/.local/share/fonts and ~/.fonts, and finds Noto Sans CJK, Noto Sans Arabic and Hebrew, and DejaVu by their family names. The font search in the top bar lists the same folders. Another computer with other fonts can draw the same text a little differently.
Han characters take the Japanese form when the text has kana, the Korean form when it has Hangul and no kana, and the Chinese form otherwise. Hebrew reads from the right, Arabic letters join, and a line that mixes Latin with Hebrew or Arabic is drawn in the order a reader sees it. Emoji are drawn in outline when a font has them.
A character that no font has is left out of the notes. The status row under the text names the first few and says that they are left out.
Text size
Hold Ctrl and turn the mouse wheel over the text area to make the text larger or smaller, and press Ctrl+0 to go back to the normal size.
The right-click menu
Right-click the text area, or press the Menu key or Shift+F10 while you type, to open a menu with Copy, Cut, Paste, Select All, Save selection as MIDI file… (only while text is selected), Channel (1 to 16), Back to channel 1, Section settings… (the same as Ctrl+Shift+Enter), Patterns (see "Channel patterns") and Clear the text…. Copy, Cut and Paste appear when the plugin has a clipboard (on Linux, when an X display is available).
Copy and Cut keep the empty lines inside sections, and Paste in the plugin turns them back into empty lines. Another program shows them as an invisible blank character.
Clearing the text
Clear the text… in the ⋮ menu and in the right-click menu asks whether to clear all the text and warns that this cannot be undone. Keep closes the question and leaves your text as it is, and so does Escape. Clear the text removes all the text (see "Safety and warnings").
Limits
The plugin takes up to 20000 characters of text and up to 256 sections. Typing or pasting that would go over 20000 characters is refused with a message, so every song can be saved as a text file and opened again. In One after another sections every line counts as a window of its own, and the song holds up to 1024 windows. A line with more letters than fit is cut, and the row next to Text names the section and says how many characters were left out. Shorten that line or split the section.
Text files
Open text file… in the ⋮ menu reads lyrics from a file, and Save text file… writes your text, with the names, lengths and rests of its sections, to a file. The picker of Open lists the usual lyrics extensions first and offers every file, because the plugin recognizes the format from the content and the extension decides nothing. Demo mode locks both entries, while Save as MIDI file… stays available.
What Open reads
| Format | What you get |
|---|---|
| Plain text | Blank lines separate the sections. A file of more than 8 lines with no blank line and no header is cut into sections of 4 lines |
| Headers | Lines such as [Verse 1], or a section word with a colon such as Chorus:, name the section under them. A header with no lines under it becomes a rest as long as the top bar's length, or a copy of the first section of the same name |
| ChordPro | The lyrics, without the chords and directives |
| Chords over lyrics | The lyrics, without the chord lines |
| LRC, SRT, WebVTT, UltraStar | The text only. The times are left out, and a notice says so |
| The plugin's own format | What Save text file… writes: the sections, and a line in braces for each setting that differs from the top bar |
The own format is plain lyrics with a blank line between sections, a name in
brackets above a section that has one, and settings in braces such as
{length: 4 bars}, {time: 3/4}, {time: host}, {mode: together},
{mode: one after another}, {rest}, {rest: 1 bar} and {line: 2 bars}. A
setting in braces at the top of the file, before the first section, applies
to the whole song.
Open cleans what it reads. It unifies line ends, turns tabs into spaces,
collapses runs of spaces, removes control and direction characters, splits
lines of more than 120 characters at a space and removes a < that doesn't
start a tag, while the plugin's own channel tags stay as written. Files in
UTF-8 (with or without a byte order mark) and UTF-16 open as they are, and
other files are read as Windows-1252. A file that is not text, such as a
picture or an archive, is refused with a message.
Replace, Insert or Cancel
When the text area is empty, a file opens straight away. When it holds text, a window asks what to do.
- Replace swaps your text for the file's, and the settings at the top of a file go into the top bar. Replace can't be undone, so the button is red.
- Insert at cursor puts the file's sections after the section the cursor is in, with a blank line on each side, so no section is cut in two. The top bar stays as it is.
- Cancel leaves everything as it is.
Afterwards the row next to Text says what the file held, for example "Opened 6 sections and 24 lines without the chords." It also names what the import changed, such as headers that became rests or lines that were split.
Paste a song
A text that you paste and that has settings in braces, such as {length: 4 bars} or {mode: one after another}, is read like a file. Into an empty text area it replaces the text, and a setting at the top before the first section goes to the top bar for the whole song. Into a text it goes after the section of the cursor, and the top bar stays as it is. Lyrics without such a line, a paste over a selected text and every paste in the demo stay plain pastes.
Drop a file
You can also drag one file onto the plugin window, and the text area then shows "Drop a text file to open it". The file opens as it does with Open text file…. With several files at once the text area says "Drop one file at a time". Dropping works on Windows, in the plugin and in the standalone program. A DAW may keep drops for itself, and then the menu is the way to open a file.
Save text file
Save text file… suggests the name lyrics.txt and writes UTF-8 with \n
line ends. It writes only the settings that differ from the top bar, and
an empty line as {rest}. Open text file… reads the
saved file back with the same sections.
Limits of a file
A file can be up to 256 KB, 20000 characters, 1000 lines and 256 sections, and a section name is cut to 24 characters. The plugin refuses a file that goes over a limit as a whole, and the message says which limit. Insert at cursor is refused when the result would go over 20000 characters or 256 sections.
The top bar
The top bar holds the settings every section follows until it has its own.
| Control | What it does |
|---|---|
| Lines (two icons) | The way new sections play their lines. Together plays all lines of a section at once, and One after another gives each line its own turn |
| Length and unit | How long a section lasts, or each line of a One after another section. The units are ms, Steps (16ths), Beats and Bars, and the buttons ÷2 and ×2 next to the number halve and double it |
| Time signature (beats / beat note) | The time signature that bars are counted in |
| From host | Follows your DAW's time signature instead. The top bar then shows the DAW's value in place of the numbers |
| Font | Search your installed fonts, or open a font file with the folder button. The demo writes in the default font, DejaVu Sans Bold, and shows this control grayed |
| Arrow button (tooltip "Save as MIDI file") | Click to save a .mid file, or drag it straight onto a track |
| MIDI out off | Appears while the MIDI output is off, and turns the output back on when you click it |
| ⋮ menu | Save as MIDI file…, Open text file…, Save text file…, License…, MIDI output (it shows an On or Off badge, and choosing it switches the output), Undo, Redo, Clear the text…, Show the tour again, Send feedback or an idea…, About |
Tip: Middle-click a numeric field to reset it to its default.
Lengths and units
Every length counts in one of four units. ms is milliseconds at the tempo of your DAW, Steps are 16th notes, Beats are quarter notes and Bars are bars of the time signature that applies. A length goes from 1 to 10000, and a rest before a section can also be 0.
The buttons ÷2 and ×2 next to a length and next to a rest halve and double the number in the unit you have chosen. A number that does not halve evenly rounds down, and the buttons stop at the limits of the field. At 1 the ÷2 button is grayed, and at 10000 the ×2 button is grayed. A rest of 0 grays both, because there is nothing to halve or double. To go below 1 bar, switch the unit to Beats. Each press is a step that Undo takes back.
Your DAW reports its time signature only at the playhead, so From host follows the signature where the playhead stands. If your song changes signature, turn From host off and type the signature in, or give each section its own.
Layout
Open the Layout tab at the top right of the text area. Controls that show only an icon give their name in a tooltip. In demo mode the drawer opens but is grayed and locked, and the notes use the default layout.
Sections
| Control | What it does |
|---|---|
| Split | How the text is divided. Sections makes a section of every block between blank lines, each with its own settings. Whole Text makes one block of all the text, with your line breaks as typed, the blank and empty lines ignored and none of the section settings used, and it uses the top bar's length and time signature |
| Align | A grid of 3 by 3 cells. The column puts every line left, center or right in its section's time, and the row puts the block of lines at the top, in the middle or at the bottom of the note range. Click a cell, or use the arrow keys while the grid has the focus. In Whole Text only the middle row is available |
| Pre Gap / Post Gap | Quiet space before and after the text in each section, in percent. Grayed out in Whole Text |
| Chain button beside the two gaps | Links the gaps so they move together. Matching gaps leave the same quiet space on both sides |
Glyphs
| Control | What it does |
|---|---|
| Letter Size | How big the letters are, from 25 to 100 percent of the largest size that fits every section (see "One letter size") |
| Note Rows | How many rows the letters are drawn on. At 100 percent every key of the note range gets one row, at 200 percent two rows, and at 50 percent one row for every second key. The letters keep their height on the keyboard, because the rows always spread over the whole note range. More rows keep curves and thin strokes and make more notes, and fewer rows make blockier letters and fewer notes |
| Line Spacing | How far apart the lines sit |
| Letter Spacing | How tightly the letters pack, down to touching at negative values |
| Note Range | The lowest and the highest note your text can use, shown as for example A0 to C8. A click opens a piano keyboard. Press a key to move the nearer end there, and drag to move that end. The two note fields in the same window do the same from the keyboard. The ends stay at least an octave apart, and Default goes back to A0 to C8 |
The preview shades the keys outside the note range.
One letter size
The letters have the same size across the whole song, whether a section has one line or five. The section with the most lines sets the height of a line, and every section uses that height. The width follows from the time, and the line that needs the most room for its time, typically a long line in a short section, sets how wide the letters are for the whole song. A short line in a long section therefore keeps the same width as every other line and sits where Align puts it. Letter Size scales all the letters down from that size.
Two notices in the row next to Text name the cause when it matters:
- "Line 3 of Bridge needs the most room for its time, so it sets the letter width for the whole song. Shorten it or give the section more time." It appears when the other sections use on average less than about a third of their time.
- "Chorus has 12 lines stacked, so the letters get small. Split the section or use One after another." It appears when the letters at 100 percent get fewer than 8 rows, and more Note Rows gives them more rows. In Whole Text it reads "12 lines stacked make the letters small. Use fewer lines or a wider note range."
Layout for one section
The switch at the top left of the drawer says what the controls change. It offers All sections and the section the cursor is in, shown with its name and color. With All sections the controls work as described above. With a section, a control changes that section only, and every other section keeps the values of all sections. The Layout tab always opens the drawer on All sections. The button Layout for this section in the section window opens it on that section.
A setting that the section has set for itself shows a small dot in front of its name, and a section with settings of its own shows a dot on its tag. A click on the dot of a setting goes back to the value of all sections for that setting. Same as all sections at the top right does it for every setting of the section. A control without a value of its own shows the value of all sections. Split, Note Rows and Note Range belong to the whole song, so the section's view says "Applies to all sections." for them.
Letter Size has a switch in this view. It is off, and the letters keep the size of the song. Turn it on to give the section a letter size of its own, which starts at the song's value. The letters of that section then no longer match the rest of the song, and the other sections keep their size.
The settings of a section are saved with the project and with the text file, as {align: center top}, {pregap: 20}, {postgap: 20}, {letters: 80}, {linegap: 10} and {spacing: -5} above the lines of the section. Undo and Redo cover each change, and a drag of a slider is one step. In demo mode the drawer is locked. A layout of a section is not used there, and the notes follow the default layout.
Preview
Click the Preview button at the right end of the bar under the text to see the notes exactly as the piano roll will show them. The bar keeps the readout at its left, and the zoom buttons join it while the preview is open.
- Ctrl + scroll zooms, and plain scroll moves along the timeline.
- The zoom buttons zoom in, zoom out, or fit everything on screen.
- The readout shows how many notes the text produces and how many bars they cover. Above 100000 notes it gets a warning mark (see "Safety and warnings").
- The ruler counts the bars of each section in that section's time signature. Where the time signature changes, the ruler shows it next to the bar number, for example 10 3/4. In a section longer than 4 bars every second group of 4 bars has a faint shade.
The strip
Above the ruler, a strip shows one block for every rest, every Together section and every line of a One after another section, in the section's color. Rests are striped. A click on a block opens the window of its section or line.
Every block has a handle on its right edge, and dragging it changes the length of the block. The length snaps to whole units of the unit it is written in, so a length in bars snaps to bars and one in milliseconds to milliseconds. The notes follow while you drag. The first section has one more handle at the start of the song. Dragging it to the right adds a rest before the first section or makes it longer, and dragging a rest back to 0 removes it. A double-click on a handle between two blocks adds a rest of one bar there. It goes before the section on the right of the handle, or between two lines of a One after another section as an empty line. A double-click on the start handle adds the rest before the first section. In demo mode the blocks of sections after the second are gray and say they need a license.
With Whole Text the strip shows one block for all the text.
With the keyboard, Tab moves to the strip. Left and Right then move between the handles, Up and Down change the length of the chosen handle by one unit (four with Shift), and Enter or Space opens the window of its block.
Getting the notes into your project
- Drag: drag the arrow button onto a MIDI track.
- Save as MIDI file: click the arrow button, or choose ⋮ → Save as MIDI file….
- Save selection as MIDI file…: select part of the text, right-click, and choose it. The Save selection window that opens says what it will save, for example the number of sections and lines, their names and the first words. It has the same green button as the top bar, where a click saves a .mid file and a drag hands the notes to a track. The selection keeps the length, the line mode and the time signature of its sections and the empty lines inside them, so the notes land in the same places as in the whole song. A rest before the first selected section is left out.
- Live output: with MIDI output: On, the plugin plays the notes on its own track.
Tip: Switch the live output off in the ⋮ menu while recording on the same track.
All plugin settings can be automated from your DAW.
Keyboard
You can reach everything in the plugin window with the keyboard.
| Key | What it does |
|---|---|
| Tab, Shift+Tab | Move to the next or previous control. The control with the focus has a ring around it |
| Enter or Space | Press the button, switch or menu with the focus |
| Arrow keys | Move through an open menu or list, move the chosen cell of the Align grid, and move and change the handles of the preview strip |
| Escape | Close a menu or a window. In a text field the first Escape leaves the field |
| Menu key or Shift+F10 | Open the right-click menu of the text area |
| Shift+Enter | In the text area, add an empty line inside the section |
| Ctrl+Shift+Enter | In the text area, open the window of the section the cursor is in |
| Ctrl+Z | In the text area, take back the last change to the text or to a section |
| Ctrl+Y or Ctrl+Shift+Z | In the text area, put back what you took back |
| Ctrl+A, Ctrl+C, Ctrl+X, Ctrl+V | Select all, copy, cut and paste in the text area and in the text fields, for example the license key |
After you click a button, a switch or a list, the keyboard stays where it was, so you can go on typing in the text. A click in a text field moves the keyboard into that field.
The tags and the + buttons are drawn on the text, so the keyboard reaches the same settings through Ctrl+Shift+Enter and the strip.
Tooltips open when the pointer rests on a control for about a second and a half, and when a control gets the focus from the keyboard.
License
Demo mode
The plugin runs in demo mode until it has a license. The notes it writes (live MIDI output, drag export, saved files and the preview) cover the first 2 sections of your text in full. Sections after the second are grayed in the text and in the strip, carry a hint that asks for a license and get no notes. The demo also has these limits:
- The font is the default one, DejaVu Sans Bold. Picking another font is locked.
- The Layout drawer is visible but grayed and locked, and the notes use the default layout.
- Open text file… and Save text file… are locked.
Save as MIDI file… writes the first 2 sections. Every demo file and drag export also carries a text event "MIDI Text Display demo". It holds no notes and plays nothing. The limits come from the license state, so a project file or a setting from your DAW can't switch them off. While demo mode is on, a strip above the text area says so and has an Enter license key… button. A license key removes all of these limits.
No license key yet? Without a license the license window has a Buy a license key button under the key field, which opens the product page. The chapter "Activation" explains how.
License number
The license window of an activated computer shows the rows License number, Computer and Expires. The license number, for example LIC-7Q2M-K9XD, is the number to quote when you write to support, and it is not a key. Copy puts it on the clipboard. Expires shows Never because a license doesn't run out.
Removed or blocked
If this computer was removed on the license page, or we blocked the license (after a withdrawal, a refund or misuse), the plugin returns to demo mode at its next license check and tells you why, for example "Demo mode. This license was withdrawn." The message stays after a restart. The strip above the text then has License… and Manage licenses, and the license window has Manage licenses too. Manage licenses opens the license page, which lists your licenses and computers and shows the reason and date of a block. A removed computer works fully again once you enter the key.
Check license now
The plugin asks the license server about once a day, and once an hour while a check doesn't get through. A removal or an unblock reaches it with the next check. Check license now in the license window of an activated computer asks right away and tells you what it found. When the computer is offline the check can't reach the server, and the license stays as it is.
The license terms
The license terms set the rules for using the software. You'll find them in "License terms (English).txt" and "Lizenzbedingungen (Deutsch).txt" in the download and at https://irrvogel.com/products/midi-text-display/license, and the Windows installer shows them before it installs anything.
Computers and license keys
The license window shows this computer's name in the Computer row (for example LAPTOP-FLO). When you activate, the name field starts with the name your operating system gives the computer, and you can change it before you press Activate. The license page lists your computers under these names. A computer activated offline is listed as "Offline activation", because an activation code carries no name.
A key works on up to 2 computers at a time. Manage computers… in the license window opens the license page, where you can see your computers, remove one you no longer have, and get a replacement key if yours is lost. See the FAQ for moving to a new computer.
Deactivate a computer
To free a place for another computer, deactivate this one, as often as you like.
- Open ⋮ → License… and press Deactivate this computer.
- The plugin asks "Deactivate this computer? Needs internet." Remove takes the license off this computer so you can activate another one, and Keep leaves everything as it is.
- Activate the other computer as described in the chapter "Activation".
Remove a computer you no longer have
If a computer is lost, broken or sold and you can't deactivate it there, you can open the license page in one of two ways:
- On an activated computer, press Manage computers… in the license window, which opens the license page.
- Without an activated computer, open license.irrvogel.com/manage in a browser (German: license.irrvogel.com/de/manage) on any device, enter the email address you used for the purchase and request the sign-in link. The link in the email works for 15 minutes.
Then follow these steps:
- Remove the computer from the list on the license page.
- Activate the new computer as described in the chapter "Activation".
You can do a remote removal like this twice in any 30 days. If someone else activated a computer with your key, use That wasn't me next to it instead, which leaves your two removals untouched. The removed computer returns to demo mode at its next license check. You may not use the full version on it any more, even if it stays offline.
Replacement key
If your license key is lost or someone else has it, get a replacement key on the license page (Manage computers…). You can do this once every 30 days. The old key stops working, but computers you have already activated keep working.
Pass the license on
You can give your license as a whole to one other person:
- Deactivate the license on all your computers (see "Deactivate a computer").
- Write to support@irrvogel.com with the email address of the new owner. We transfer the license to them and send them a key, and the transfer doesn't need our consent.
After the transfer the license belongs to the new owner, so your own use of the software with it ends. You can't split the license, for example one computer for you and one for someone else, and you may not give the key to several people.
Online and offline
- When the computer is online, the software checks its license about once a day, and once an hour while a check doesn't get through. It also checks right after you install a new version and when you press Check license now in the license window. If a check fails, the license stays as it was.
- When online, the software checks for updates at most once a day and shows a notice with a link to the download, and you install the update yourself.
- A new version needs one contact with the license server before it accepts the license, which an online computer does automatically. On a computer that is never online, repeat the offline activation after you install a new version, unless the switch-on file is published by then.
- If the license server is out of service for more than 60 days in a row, we publish a signed file, the switch-on file. It turns on a second way to activate, using only your own license key. The software then uses the key that was valid on the license server's last working day and stops contacting the license server. It can't count computers any more, but the limit of two still applies. Until we publish that file, this second way is off.
- If you block the software in your firewall, it keeps working, but activation then needs the offline route (see "Activate without internet") and you get no update notices. Blocking the internet doesn't extend your right to use the full version, for example after a refund or a removal.
The software doesn't track how you use it, and the privacy notice for the software at https://irrvogel.com/privacy#software describes what it does send and to whom.
Updates
When the update notice appears, download the new version from the link in the notice or from https://irrvogel.com. Close your DAW and replace the old files with the new ones in the same folders. Your activation carries over. If you used the installer, run the installer of the new version and choose Update, which replaces the old files and keeps the folders you chose. The installer asks before it installs an older version over a newer one.
Each version gets updates, including security updates, until the date at the start of this manual. Changelog.txt lists what changed and which security fixes a version contains.
The plugin does not show up in my DAW
Check these points in this order.
- The DAW must be 64-bit, since the plugin can't load in a 32-bit one.
- The files must be in the folders the DAW scans:
| Format | Where it must be on Windows |
|---|---|
| CLAP | The file "MIDI Text Display.clap" in C:\Program Files\Common Files\CLAP |
| VST3 | The whole folder "MIDI Text Display.vst3" in C:\Program Files\Common Files\VST3, with everything inside it |
- If you chose other folders in the installer, add them to the plugin folders (search paths) in your DAW's settings.
- Scan for plugins again in your DAW, since many DAWs scan only when you ask them to.
- MIDI Text Display is an instrument. Look for it under instruments (generators) and insert it on an instrument or MIDI track.
In FL Studio, open the Plugin Manager under Options → File settings → Manage plugins, add your own folders in the Plugin search paths field and press Find installed plugins + Verify plugins. FL Studio then lists the plugin under Browser → Plugin database → Installed → Generators → New.
You can use the standalone program "MIDI Text Display.exe" while you sort out the folders, and save the notes as a MIDI file to bring them into your DAW.
On Linux the folders are ~/.clap and ~/.vst3 (see "Install on Linux").
If the plugin still doesn't show up, write to support@irrvogel.com with
the name and version of your DAW and the format you tried.
Support
Write to support@irrvogel.com with questions and problems.
Send feedback or an idea
⋮ → Send feedback or an idea… (also on the About page) opens the support form at https://irrvogel.com/support/write in your browser. The address carries only the product id and the version of the plugin, and you write and send the form on the website yourself.
Copy diagnostic info
⋮ → About → Copy diagnostic info copies a short report for an email to support@irrvogel.com. It holds the version, the operating system, the license state and license number, the last problem the plugin showed, and the last entries of the local license log. It leaves out your license key and the text you typed. You paste it into your email yourself.
Crash reports
If the plugin crashes, it writes a crash report on your computer. The report
holds the version, the operating system, the error message and a technical
trace, and it is built to leave out license keys, email addresses and the text
you typed. An error message can still name a file or folder on your computer.
Read a report before you send it. The reports are in
%APPDATA%\midi-lyrics-display\crash-reports (Linux:
~/.local/share/midi-lyrics-display/crash-reports), and the plugin keeps
the last 5. The next time it starts, it offers Copy report and Send
feedback or an idea…, and it sends nothing on its own.
The About page
⋮ → About shows the version and the copyright line "© 2026 Irrvogel Interactive". License terms, Privacy notice and Third-party notices open the documents that come with the plugin (installed by the installer, or in the ZIP), and Manual opens the PDF manual. If the manual opens in a program you don't want, Show in folder opens the folder with the PDF selected, and in it you right-click the file and choose Open with. Open program folder opens the folder the plugin is installed in. If you installed the manual, it is in the subfolder "Documents" (English) or "Dokumente" (German). Open user folder opens the folder with your settings and the crash reports. Your license is saved in the folder named irrvogel next to it. The plugin first looks in the subfolders "Documents" and "Dokumente" of the program folder, then in the folder itself, where the ZIP keeps them. If both languages are there, it shows the English one.
Security
Report security problems to security@irrvogel.com or by post to the address in the Impressum at https://irrvogel.com/impressum. How we handle reports is described at https://irrvogel.com/security.
Known limitations
- Screen readers can't read the plugin window yet, as the chapter "Accessibility" explains.
- On Linux, Copy, Cut and Paste use the X11 clipboard. The plugin window is an X11 window, so on Wayland it uses the clipboard of XWayland. A text you copied stays available while a plugin window is open. After you close the last one, the text stays only if a clipboard manager is running. When the clipboard fails, Copy says "Could not copy because the clipboard is not available." Cut says the same with "cut" and keeps the text. Paste says it with "paste". If the program that holds the clipboard has stopped answering, Copy, Cut and Paste can fail for up to about half a minute. Without an X display the Copy and Paste buttons and the Copy, Cut and Paste menu items are hidden. Then you type the license key, copy the activation code from the screen by hand, and use Load file… for the activation file.
Accessibility
You can operate the whole plugin with the keyboard (see "Keyboard"). Text has a contrast of at least 4.5:1 against its background, which is WCAG 2.2 level AA, and buttons you can't use right now are drawn dimmer.
Screen readers aren't supported yet because the plugin window is drawn with the iced toolkit, which doesn't pass its controls on to them. When iced adds that, we will add it to the plugin.
Uninstall
If you used the installer, open Settings → Apps → Installed apps → Irrvogel's MIDI Text Display → Uninstall, or start the installer again and choose Uninstall. The uninstaller removes the files the installer copied. Before that it shows a page with two boxes, both off, so your settings and your activation stay on this computer unless you tick them.
- Also delete my settings deletes the folder
%APPDATA%\midi-lyrics-displayof your Windows account, which holds the saved settings and the crash reports. - Also remove the activation from this computer does the same as Deactivate this computer in the license window. It frees this computer on your license page without counting as a remote removal. It needs an internet connection. If it fails, the uninstaller says why and asks whether to try again. If you skip it, the activation stays on this computer and still counts as one of your 2 computers. You can remove it later on the license page, but that counts as a remote removal.
If you didn't use the installer, follow these steps.
- If you want to use the license key on another computer, open the license window and press Deactivate this computer first.
- Close your DAW.
- Delete "MIDI Text Display.clap" and the folder "MIDI Text Display.vst3" from the folders you copied them to.
- Delete the standalone program.
- To remove the activation and the settings stored on this computer,
delete
%APPDATA%\irrvogel\ivi-midi-text-display(the activation) and%APPDATA%\midi-lyrics-display(settings and crash reports).
On Linux, delete the files from ~/.clap and ~/.vst3 (or the system
folders) and the standalone program, then the folders
~/.config/irrvogel/ivi-midi-text-display and
~/.local/share/midi-lyrics-display. If you set XDG_CONFIG_HOME or
XDG_DATA_HOME, the folders are inside those instead.
Note: If you delete these folders without deactivating first, this computer still counts as one of your 2 computers, and you can remove it later on the license management page.
Legal
Your use of the software is governed by the license terms in "License terms (English).txt", and the German version is in "Lizenzbedingungen (Deutsch).txt". If you bought a license key, the terms of sale at https://irrvogel.com/terms also apply.
The software contains open-source components. Their notices are in "Third-party licenses.txt" and "DejaVu font license.txt" in the folder "Licenses". The PDF version of this manual uses the fonts Atkinson Hyperlegible Next (SIL Open Font License 1.1), DejaVu Sans Mono and DejaVu Sans Bold. Their notices are in "Third-party licenses.txt".
VST is a registered trademark of Steinberg Media Technologies GmbH.