The lrcput.py script allows you to embed LRC (Lyrics) files into FLAC, MP3, and M4A audio files.
It now supports:
- Batch embedding (directory mode) from local
.lrcfiles. - Batch LRCLib mode (directory) that searches LRCLib online for lyrics based on file tags and embeds them automatically.
- Single file embedding (any supported format, with optional conversion) via a graphical interface, including a toggle to fetch lyrics directly from LRCLib without selecting a local
.lrcfile.
This script was designed to embed lyrics acquired from lrcget. It can also retrieve lyrics from LRCLib when enabled.
- Python 3.x
- Required Python libraries (install with
pip install):mutageneyed3tqdmrequests(for LRCLib API)
ffmpeg(only required for embedding lyrics into unsupported formats in Single mode, since they are converted to MP3)
You can install all dependencies with:
pip install -r requirements.txt-
Batch Mode (Directory)
Embed.lrcfiles into all.flac,.mp3, and.m4aaudio files in a directory.
Options:- Skip existing lyrics
- Delete
.lrcafter embedding (reduce) - Recursive directory search
-
Batch Mode: LRCLib (Directory)
Search LRCLib for lyrics using the audio file's tags (Artist/Title and optionally Duration) and embed them directly.
Options:- Skip existing lyrics
- Recursive directory search
Notes: - Works for
.flac,.mp3, and.m4afiles whose tags are present. - If Artist/Title tags are missing, the track will be skipped (no reliable search).
-
Single File Mode
Embed an.lrcfile into a chosen audio file.- Supports
.mp3,.flac,.m4adirectly - Other formats (
.wav,.ogg,.aac,.wma,.alac, etc.) are converted to MP3 usingffmpegbefore embedding - A checkbox labeled
Search LRCLiblets you fetch lyrics from LRCLib based on the audio file's tags. When checked, the LRC file selector is disabled (grayed out) and no local.lrcis required.
- Supports
-
GUI (Tkinter)
- Simple graphical interface
- File pickers for selecting directories, audio files, and LRC files
- Embedding progress and results shown in popup dialogs
-
Place your audio files and their corresponding
.lrcfiles in the same directory.
(Example:song.mp3andsong.lrc) -
Run the script:
python lrcput.py
-
In the GUI:
- Use
Batch Mode: Directoryto embed from local.lrcfiles. - Use
Batch Mode: LRCLibto automatically find and embed lyrics from LRCLib. Ensure your audio files have Artist/Title tags. - Use
Single File Modeto embed from a chosen.lrcfile, or tickSearch LRCLibto fetch lyrics online and disable the.lrcinput.
- Use