LRC (short for <u>l</u>y<u>r</u>i<u>c</u>s) is a computer file format that synchronizes song lyrics with an audio file, such as MP3, AAC, or MIDI. It allows for compatible media player software (including digital audio players) to display song lyrics synchronously with a playing song. The lyrics file has the same name as the audio file, just with a different filename extension, and operates as a sidecar file. For example, if a song's main file is <code>song.mp3</code>, its LRC file would be <code>song.lrc</code>. The LRC format is text-based and similar in form to subtitle files. It can be manually created and written in a text editor but purpose-made software has been made to ease and automate the creation of lyrics files. Various websites operate providing ready-made LRC files for songs to be downloaded. There also exist software that mass-download LRC files from song lyrics databases, automating the process to the user.
The original LRC format (sometimes called the Simple LRC format) is formed of two types of tags (time tags and optional ID tags), with one tag per line. Time tags have the format <code>[mm:ss.xx]lyric</code> , where <code>mm</code> is minutes, <code>ss</code> is seconds, <code>xx</code> is hundredths of a second, and <code>lyric</code> is the lyric to be played at that time. A basic example with just time tags is below.
[00:12.00]Line 1 lyrics [00:17.20]Line 2 lyrics
[00:21.10][00:45.10]Repeating lyrics (e.g. chorus) ... [mm:ss.xx]Last lyrics line
ID tags may optionally appear before the lyrics, although some players may not recognize or simply ignore this. The format of an ID tag is <code>[type:value]</code>, where <code>type</code> is the tag type and <code>value</code> its value (most often some text). The different possible tag types are tabulated below.
A more comprehensive example with both ID and time tags is given below. [ar:Chubby Checker oppure Beatles, The] [al:Hits Of The 60's - Vol. 2 â Oldies] [ti:Let's Twist Again] [au:Written by Kal Mann / Dave Appell, 1961] [length: 2:23]
[00:12.00]Naku Penda Piya-Naku Taka Piya-Mpenziwe [00:15.30]Some more lyrics ... ...
Several extensions to the format have been created to introduce new functionality.
The Walaoke extension, available only in Walaoke from Walasoft, allows the specification of parts for a male-female duet. This is done through the use of <code>M:</code> , <code>F:</code> , and <code>D:</code> at the start of a line for male, female, and duet lines respectively. This allows them to be displayed in different colours. This is illustrated with an example below. [00:12.00]Line 1 lyrics [00:17.20]F: Line 2 lyrics [00:21.10]M: Line 3 lyrics [00:24.00]Line 4 lyrics [00:28.25]D: Line 5 lyrics [00:29.02]Line 6 lyrics
Using blue for male, red for female, and pink for duet, the lines will have the following colours:
The A2 extension to the LRC format (also called the Enhanced LRC format) was introduced by the A2 Media Player, and adds the ability to specify the time individual words are sung. These word time tags are identical to the standard line time tags, but use angle brackets instead of square ones (i.e. <code><mm:ss.xx></code>). This allows the player to highlight each word when it needs to be sung, for example. An example is given below. [ti: Somebody to Love] [ar: Jefferson Airplane] [al: Surrealistic Pillow] [lr: Lyricists of that song] [length: 2:58]
[00:00.00] <00:00.04> When <00:00.16> the <00:00.82> truth <00:01.29> is <00:01.63> found <00:03.09> to <00:03.37> be <00:05.92> lies [00:06.47] <00:07.67> And <00:07.94> all <00:08.36> the <00:08.63> joy <00:10.28> within <00:10.53> you <00:13.09> dies [00:13.34] <00:14.32> Don't <00:14.73> you <00:15.14> want <00:15.57> somebody <00:16.09> to <00:16.46> love
LRC was first introduced by Taiwan-based Kuo (Djohan) Shiang-shiang's Lyrics Displayer in 1998, with an accompanying plug-in for Winamp. Over the years many devices and software started supporting the LRC format, including:
Below is a table of various LRC software available for PCs or smartphones that may support playing music using LRC, that can create and edit LRC files, and that can search and download LRC data: