LRC 檔案是一個純粹的 UTF-8 文字檔,其中每一行歌詞前都會加上一個以方括號標示的時間戳記,格式為 [mm:ss.xx],例如 [01:23.45]Example line,如此一來音樂播放器就能在歌曲播到對應時間點時顯示該行歌詞。從原始歌詞製作一個 LRC 檔案需要一個百分秒精度(centisecond)的起始時間、每行之間的固定間隔、選擇性的標題、演出者與專輯標籤,以及一個把最終產生的 .lrc 檔案存到音訊檔旁邊的方法。LRC 檔案產生器能在你的瀏覽器中處理這個工作流程:它會解析起始時間戳、把間隔轉換成整數百分秒,並產生一個與下載檔案完全一致的預覽。由於這個格式是一個事實上的格式家族而非正式標準,各播放器在解析同一個檔案時行為不盡相同,因此本產生器堅持使用這個簡單的子集合。

LRC 檔案實際上包含什麼內容
每個 LRC 檔案都是一份單一的文字檔,前段有一小段標頭用於存放後設資料,中段較大的主體中每一行歌詞前都會有一個方括號包起來的時間戳記。一行的時間戳記包含兩位或三位數的分鐘數字、剛好兩位數的秒數字(範圍從 00 到 59)、一個小數點,以及剛好兩位數的百分秒數字,可達到百分之一秒的解析度。根據QuickLRC 的 LRC 檔案格式參考資料,這個「方括號後接文字」的形式就是事實上的簡單 LRC 子集合。一個典型的行會寫成 [02:14.67]Every road leads back to you,其中分鐘值、秒值與兩位百分秒數字合起來就能精確描述該行應該出現的時間點。
後設資料是選擇性的,位於檔案頂端,使用 [tag:value] 格式的方括號標籤。常見的標籤包括 [ti:] 代表歌曲標題、[ar:] 代表演出者、[al:] 代表專輯,不同的播放器能識別的標籤也各不相同。空白的後設資料欄位通常會從輸出中省略,而且一行空白行通常會用來分隔標頭與有時間標記的歌詞,以提升可讀性。
這個格式刻意設計得很精簡。檔案內部不會嵌入音訊、沒有樣式設定、也不需要各家播放器專屬的擴充功能;播放器的工作就是比對每個時間戳記與當前播放位置,並顯示對應的那行歌詞。
LRC 檔案產生器接受的輸入欄位
本產生器接收四組輸入,並對它們套用一條確定性的規則。這些輸入不會被上傳到任何地方;頁面只會讀取它們、進行格式化,然後讓你下載到本地端。
首先,你需要提供歌詞行數。欄位接受介於 1 到 500 行之間的非空行,總字元數上限為 50,000 字元,且單一行最多 500 字元。每一列在最終檔案中會成為一個顯示事件。Windows(CRLF)、舊版 Mac(CR)與 Unix(LF)三種行尾符號都會被統一處理,空白列會在任何時間戳記計算之前被移除。每行內部的文字會完全保留你輸入的樣貌:拼字、標點、大小寫、語言以及任何內嵌的版權聲明都不會被更動。
其次,請以 [MM:SS.xx] 格式設定起始時間戳記。分鐘欄位使用兩位或三位數字,秒數欄位使用剛好兩位數字(介於 00 到 59 之間),百分秒欄位使用剛好兩位數字。有效的範例包括 00:00.00、09:59.99、10:00.00 和 123:45.67;本工具支援最高達 999:59.99 的時間戳記。
第三,請選擇一個介於 0.01 到 600.00 秒之間的間隔,最多兩位小數。該數值會在產生任何列之前先轉換為整數百分秒,因此即使經過數百行的累加,也不會產生二進位浮點數的累積誤差。
第四,你可以選擇性地加入標題、演出者與專輯的值。每個欄位都會經過去前後空白處理、長度上限為 120 字元,且不能包含方括號或控制字元,以避免某個欄位意外注入一個錯誤的 LRC 標籤或行。空白欄位會整個省略。
在產生器中建立 LRC 檔案
- 在瀏覽器中開啟 LRC 檔案產生器。
- 在歌詞欄位中以每列一行歌詞的方式貼上或輸入內容。為最終檔案中想呈現的每個顯示事件使用獨立的一行,無論是單字、片語、一句歌詞,還是合唱句。請不要加上編號、裝飾符或說話者標籤;你所輸入的內容會成為播放器顯示的逐字文字。
- 以 [MM:SS.xx] 格式輸入起始時間戳記,例如 00:12.34 代表你想要在歌曲播放到 12 又 34 百分之一秒時顯示的第一行。
- 將間隔設定為你預期連續歌詞行之間的平均間距,以秒為單位,最多兩位小數。設定為 2.50 這類數值時,每一行都會比前一行晚 250 百分秒。
- 只有在想要在輸出中加入 [ti:]、[ar:] 與 [al:] 後設資料標籤時,才填寫標題、演出者與專輯欄位。將任一欄位留白即可整個省略該標籤。
- 產生預覽。此時產生器會逐行走訪所有保留下來的歌詞,為每一步加上以整數百分秒表示的間隔,並把整份檔案渲染為單一文字區塊。此時若再編輯任何輸入,先前的預覽會被清除。
- 檢查預覽中的第一個與最後一個時間戳記。若最後一個時間戳記會超出 999:59.99,產生作業會直接失敗,且不會默默截斷;請減少行數、降低起始時間,或縮短間隔,直到最後一個值符合範圍為止。
- 下載 .lrc 檔案。下載的內容就是把預覽文字以不含位元組順序標記的 UTF-8 編碼儲存起來,檔名依據你輸入的標題衍生(不安全的標點符號會變成連字號),若未設定標題則使用 synced-lyrics.lrc。
- 把下載的檔案與錄音一同開啟,並在你的音樂播放器或專門的歌詞編輯器中重新調整個別行的時間。固定的間隔只是一個起點草案,極少能對上實際演唱的時間。
讀懂預覽並檢查時間戳記計算
由於間隔會在任何時間戳記相加之前先轉換為整數百分秒,預覽結果是可重現的:相同的起始時間、間隔與行數永遠會產生相同的序列。一個實際算過的例子有助於釐清這點。
若你的起始時間戳記為 00:12.34(1234 百分秒),間隔為 2.50 秒(250 百分秒),則前三行保留下來的歌詞會分別標記為 00:12.34、00:14.84 與 00:17.34。整個運算是以百分秒進行的:1234 + 250 = 1484 百分秒為第二行,1484 + 250 = 1734 百分秒為第三行,產生器再把結果換算回 [mm:ss.xx] 格式。由於加法運算以整數進行,因此即使經過數百行也不會累積二進位浮點數誤差。
下表列出對本工具而言哪些起始時間戳記算有效。任何不符合這些樣式的輸入都會在任何歌詞列被處理之前先被拒絕。
| 輸入 | 是否接受 | 原因 |
|---|---|---|
| 00:00.00 | 是 | 兩位分鐘數字、兩位秒數字、兩位百分秒數字 |
| 09:59.99 | 是 | 最後一個合法秒數為 59 |
| 10:00.00 | 是 | 允許兩位分鐘數字,秒數重設為 00 |
| 123:45.67 | 是 | 三位分鐘數字,未超出 999:59.99 上限 |
| 1:02.30 | 否 | 分鐘必須為兩位或三位數字,不可為一位 |
| 12:60.00 | 否 | 秒數必須介於 00 到 59 之間 |
| 00:12.3 | 否 | 百分秒必須剛好兩位數字 |
若最後一個計算出來的時間戳記會超過 999:59.99,產生作業會直接失敗而非默默截斷,這也是為什麼在下載前檢查預覽很重要。
產生器刻意省略的功能
本工具實作了被廣泛使用的簡單 LRC 子集合,而非宣稱採用某個正式通用標準。了解哪些功能被刻意省略,有助於你在投入時間進行手動編輯之前,先判斷輸出是否符合目標播放器。獨立的Subforge LRC 時間實作證實了這裡使用的百分秒運算方式,下表則摘要列出產生器會輸出與不會輸出的功能。
| 功能 | 是否輸出 | 備註 |
|---|---|---|
| 簡單的 [mm:ss.xx] 行時間戳記 | 是 | 兩位或三位數的分鐘數字,兩位百分秒數字 |
| 選擇性的 [ti:]、[ar:]、[al:] 標籤 | 是 | 僅在對應後設資料欄位非空時輸出 |
| 不含位元組順序標記的 UTF-8 編碼 | 是 | 與預覽文字完全一致 |
| 小時欄位([hh:mm:ss.xx]) | 否 | 全程僅使用分鐘形式 |
| 冒號分隔的格數數字 | 否 | 百分秒欄位固定為兩位數字 |
| 三位數毫秒精度 | 否 | 僅使用兩位小數 |
| 增強型的逐字時間戳記 | 否 | 每行一個時間戳記,不含行內標記 |
| Karaoke 對唱標記 | 否 | 不提供雙聲道時間控制 |
| 播放器專屬擴充功能 | 否 | 僅限通用的簡單 LRC |
本產生器同樣不會聆聽音訊、不會偵測語音、不會轉錄歌詞、不會對齊音素、不會識別節拍,也不會估算演出時間。無論演唱者實際怎麼唱,每一行都會被加上相同的間隔。請把輸出視為一份確定性的草案,並在發布或分享檔案之前,於專屬編輯器中依據錄音逐一調整個別行的時間。
下載、檔名與編碼細節
當你按下「下載」時,頁面會把預覽中所顯示的逐字內容,以 UTF-8 編碼並加上 .lrc 副檔名儲存起來。不會加入位元組順序標記,以避免某些播放器會拒絕帶有 BOM 前綴的檔案。
當標題欄位有填寫時,檔名會依據該標題衍生。斜線、冒號、星號、問號等不安全的檔名標點符號會被替換為連字號;若標題為空,則會回退使用 synced-lyrics.lrc。暫時性的下載物件 URL 會在下載觸發後以及元件卸載時被撤銷,因此較舊的檔案不會被誤當成較新預覽文字的結果持續呈現。
預覽與下載內容保證為同一段字串。編輯任何輸入都會清除先前的預覽,且暫時性的下載物件 URL 會被撤銷,因此較舊的檔案不會被誤當成較新文字的結果持續呈現。
調整時間戳以符合實際錄音
固定間隔能產出數學上精準的草稿,但真實的人聲極少以完全等距的間隔開始。請在專用的編輯器或您音樂播放器的歌詞面板中開啟下載的 .lrc 檔案,播放錄音,並將每個時間戳前後微調,直到歌手唱到該字詞時歌詞行正好切換。這一步是把草稿變成可用歌詞檔的關鍵。
不同的播放器支援不同的中繼資料標籤、時間戳精確度、編碼、長分鐘值,以及增強型 LRC 擴充功能。請務必在您實際使用的播放器中測試該檔案。如果某行無法顯示、某個標籤被忽略,或長分鐘值被誤判,問題出在播放器,而不是產生器輸出的簡易 LRC 子集。如果您打算將該檔案與同一台裝置上的 MP3 搭配使用,請參考這篇關於讓 LRC 檔案隨您的本機 MP3 載入的指南,其中涵蓋了命名、放置位置與播放器的辨識方式。
本產生器不提供受版權保護的歌詞、不搜尋資料庫、不辨識歌曲、不確認著作權,也不授予同步授權。您必須自行負責確保有權重製並散佈您貼到欄位中的任何文字。本頁面只是在您的瀏覽器中格式化使用者提供的文字,不涉及歌詞上傳、帳號儲存,也沒有使用任何人工智慧服務。
若想深入了解,請參閱可設定任何拍號的線上節拍器。