-
-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
You possibly have the knowhow, hence I dare to ask here
Concrete Question
- What exact metadata format must synced lyrics comply to in MP3 and AAC (M4A) files so that Apple Music on macOS shows them indeed as synced lyrics?
- ID3 in MP3?
- XMP in M4A container with AAC audio codec?
- What text character encoding? (I'd prefer UTF-8)
- What timecode: Milliseconds or MPEG frames?
My failed experiments
With Kid3 I added this metadata to the ID3 metadata of a WAV file
- Lyrics Nr.1, Language: "ger" (German), Title "Viennese German", as audible in the song, UTF8
- Lyrics Nr.2, Language: "ger" (German), Title "High German" (the translation for those not familiar with the Viennese dialect), UTF8
- Synchronized Lyrics, Language: "ger" (German), Title "Viennese German", milliseconds as time units, UTF8
- During playback in Kid3 the editor/preview windows jumps to the corresponding timestamped lines, so the timing is correct.
- I also managed to export those synced lyrics as a .LYR file, should that be needed.
Convert WAV to MP3 and AAC and preserve all metadata
- The basic
ffmpeg -i input.wav output.mp3 || output.m4acarries over most metadata (Artist, Title, Album) but not all:- .mp3 (MP3 file with metadata in ID3 which ideally is preserved from the WAV file as-is)
- Lyrics "Viennese German" and "High German" are copied over, but the synced lyrics not.
- .m4a (MP4 container with AAC audio + metadata as XMP)
- No Lyrics copied at all.
- .mp3 (MP3 file with metadata in ID3 which ideally is preserved from the WAV file as-is)
Also manual postprocessing attempts with Kid3 failed
- Copy tag from WAV and paste to MP3 or M4A file
- Inspecting this mediainfo frontend "InvisorLite" on macOS shows me this:
- M4A
Lyrics: Shows the Viennese German version, the High German version is dropped.- Those M4A/XMP allow only one lyric record possibly?
- In the source I had two lyric tags, both using language code "ger", only differing in the titles
- So overall: In ID3 this seems to work, but in M4A/XMP only one seems to "make it"
SYLT - Synchronized lyric/text: Viennese German, whether only the title makes it, or also the content, I tried to determine by also inspecting with a Hex editor- Certain unique text phrases which are identical in German and Viennese German, occured only once. So this is a strong proof that this file has no 2 static lyrics + 1 synced lyrics., but rather only 1 static lyric. Unless ofc the "atomization" of the lyrics makes even ASCII text hard to find.
- MP3
- Contains a Field
LyricsWhich shows: "High German: all High German lines // Viennese German: all Viennese German lines".- Seems like a complete representation
- Shows no
Synced Lyricsat all
- Contains a Field
- M4A
Thanks for any directions!
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels