A command-line utility built in Go for managing audio metadata. Lyric Embedder allows you to search, view, and embed both synced (LRC) and plain text lyrics directly into your music files. It supports MP3, FLAC, and M4A formats using native bit-stream manipulation.
- Download the .exe from the releases, PASTE IT IN YOUR MUSIC FOLDER.
- It is IMPORTANT that the .exe is in your music folder(where you have the files you want to embed lyrics in).
- When you launch the program, it scans your current directory and opens an interactive command loop. Simply type a command and press Enter.
| Command | Description | Example |
|---|---|---|
search <term> |
Finds all files in the current context containing the keyword. | search linkin |
info <file> |
Displays full metadata (Title, Artist, Format, Duration, etc.). | info "in the end" |
get <file> |
Fetches lyrics from the API and lets you choose what to embed. | get "numb" |
bulk <folder> |
Automatically embeds lyrics for every file in a folder. | bulk "C:/MyMusic" |
bulk current |
Runs the automated bulk process on your starting directory. | bulk current |
help |
Displays the command reference guide. | help |
exit |
Safely closes the application. | exit |
- Type
get <song name>. - The app reads your local tags and queries the LRCLIB API.
- If a match is found, you choose between Synced (time-stamped) or Plain lyrics.
- BOOM the metadata is edited and you lyrics are embedded :)
The bulk command is designed for speed. It prioritizes Synced lyrics; if those aren't found, it falls back to Plain text. If the API has no record of the song, it skips the file and provides a summary report at the end.
If you want to compile the project yourself, follow these steps:
- Go 1.20+ installed.
- rsrc tool for Windows resource embedding:
go install github.com/akavel/rsrc@latest
- Generate the Windows Resource File:
Ensure
icon.icoandmain.manifestare in the root directory, then run:rsrc -manifest main.manifest -ico icon.ico -o rsrc.syso
- Download Dependencies:
go mod tidy
- Compile the Executable:
go build -o lyric-tool.exe
- Corrupt Files: If the program encounters an extremely corrupted MP3 header, it may throw a "Critical Error." Please ensure your files play correctly in a standard media player.
- API Limits: When using
bulkmode on more than 100 files, you may encounter temporary rate limitingThisREADME.mdis designed to look professional while clearly explaining the transition from a standard "wizard" flow to your new, powerful command-based interface.
- API Limits: When using
bulkmode on more than 100 files, you may encounter temporary rate limiting from the API provider. - Issues: Found a bug? Open an issue on the GitHub repository or contact the maintainer.
Just give it a ⭐ or share if you found it useful :)
Uses LRCLIB API to fetch lyrics. These guys the goats for providing lyrics in the first place :)
Created with ❤️ & Personal Need 👀