Audio Metadata

See what is really inside an audio file, and rewrite the ID3 tags a player puts on screen.

Runs on your deviceAudioWorkingNo account needed

What this tool does

Audio Metadata starts from the file's own bytes: the format is read from its signature, and the extension is consulted only when no signature is recognised. An MPEG file yields its layer, bitrate, sample rate and channel mode, plus an exact frame count where a Xing, Info or VBRI header is present. A FLAC file yields its sample rate, bit depth and an exact length from the total sample count in STREAMINFO, while a WAV yields the sample rate, channel count and bit depth held in its format chunk. Alongside that, an ID3v2.2, 2.3 or 2.4 tag block and any 128-byte ID3v1 block at the end are both read and merged, with the newer tag winning any field they disagree on.

All of it happens in this browser tab, and the file is not uploaded. Queue several files and each is examined in turn and produces its own JSON report, named after the original with -metadata on the end. A summary line names the format, the length, the bitrate where the stream declares one, and how many tag fields were found; the values listed under it cover codec, sample rate, channel count, title and artist. Text frames the tool has no friendly name for keep their raw identifiers in the report, and embedded artwork is listed by MIME type and the byte size of the frame carrying it — but frames that hold something other than text, such as lyrics, web addresses and private blocks, are counted and never shown.

The second mode writes tags instead of reading them. Type a title, artist, album, year, genre or track number and a fresh ID3v2.3 block is built and placed in front of the audio; a field left blank keeps whatever was already there, while Remove all existing tags first discards the old values so only what you typed survives. The audio frames themselves are copied byte for byte, so nothing is decoded or re-encoded — the same recording comes back with a different label on it, saved as the original name with -tagged. Text that will not fit into Latin-1 is written as UTF-16, so Greek, Cyrillic and CJK titles survive the round trip.

The limits are specific and worth knowing first. Writing is for MPEG audio only: an M4A, FLAC or Ogg file is refused with its detected format named, because those carry MP4 metadata atoms or Vorbis comments rather than ID3 — and reading has the same blind spot, so an M4A, AAC or Ogg file comes back with its detected format, its size and a duration alone: no stream facts and no tags. A rewrite keeps only the eight frames it knows how to write, which means cover art, composer, disc number, BPM, publisher and encoder settings are dropped, along with the trailing ID3v1 block. Durations are exact where a header states one and derived where it does not: a constant-bitrate MP3 with no Xing header is measured from its byte length, and formats the parsers do not cover fall back to asking the browser's own player, which gives up after eight seconds.

How to use it

  1. Add your audio. MP3, WAV, M4A, AAC, FLAC, OGG and Opus are accepted, as is anything else the browser reports as audio. Each file in the queue is handled separately.
  2. Choose reading or writing. Read the tags and stream facts inspects the file and changes nothing. Write new ID3 tags rebuilds the tag block, and works on MP3 files only.
  3. Reading: take the summary, or the JSON. The summary names the format, the length and, where the stream states one, the bitrate. The download holds everything parsed, including the ID3 version, the frame count and any artwork found.
  4. Writing: fill in only what you want changed. Title, artist, album, year, genre and track number, the last accepting forms like 3/12. Blank fields keep the existing value, and the run stops for want of input only when nothing would be left to write — every field empty on a file that carries no tags, or on one you have chosen to strip.
  5. Writing: decide whether to start clean. Remove all existing tags first throws away what the file carried, so the finished MP3 holds only the values you typed. Leave it off to edit what is there.

Processing & privacy

Runs on your device. Your file is processed directly in this browser.

Common use cases

A track that shows up as Unknown Artist

Reading it separates a file with no tags at all from one whose tags sit somewhere the player ignores, such as an ID3v1 block on its own.

Labelling exported stems, voice notes or mixes

A folder of files called take-01 onwards becomes a set carrying a title, an artist and an album — which is what a phone or a car stereo actually displays.

Checking what an encoder produced

The bitrate, the VBR flag and the frame count are read from the stream, so a file claiming 320 kbps in its filename can be held to that claim.

Auditing a library before importing it

One JSON report per file records the format, the length and every tag present, which makes the gaps countable now rather than obvious months later.

A genre that reads as a number

Older taggers store the numeric ID3v1 code instead of the name. The reader maps the original 80 codes back to their names; the later Winamp additions above 79 are left as Genre 92 and the like.

Questions

Does the audio ever leave this tab?
No. Both modes work on bytes held in memory here, so nothing is sent to a server, and the tagged MP3 is written back out by the same tab that read the original.
Which tags can it write?
Title, artist, album, year, genre and track number are the fields you type. An album artist or comment already in the file is carried across as well — eight frames in all, written into a fresh ID3v2.3 tag as text frames, apart from the comment, which goes into a COMM frame marked with an English language code.
Why can it not edit tags on an M4A, FLAC or Ogg file?
Those formats do not use ID3. MP4 keeps metadata in atoms inside the container, FLAC and Ogg use Vorbis comments, and the writer here builds an ID3 block that only MPEG audio expects. The job is refused rather than producing a file players would read incorrectly.
Does tagging change how the file sounds?
No. The old tag block is cut away, a new one is placed in front, and the audio frames between them are copied unchanged. Nothing is decoded, so there is no second pass of lossy encoding to lose quality to.
What happens to the cover art?
Reading lists each embedded picture with its MIME type and the byte size of the frame holding it, but does not extract the image itself. Writing does not carry it over, because the new tag holds only the eight text and comment frames it knows — so artwork is lost and would have to be restored with a full desktop tagger.
Are the durations exact?
It depends on the file. FLAC states its total sample count, and an MP3 with a Xing, Info or VBRI header states its frame count; both give an exact figure. A constant-bitrate MP3 without one is calculated from its byte length, which drifts if the stream is not truly constant, and other formats report whatever the browser's player measures.
Why do the tags differ from what my player shows?
When a file carries both an ID3v2 tag and a trailing ID3v1 block, the two are merged and ID3v2 wins the fields they share. A player reading only one of the two will show the other set of values.
Can I tag several files in one go?
Every queued file is processed with the settings on screen, which suits stamping one album name across a set, but each would also receive the same title. Run tracks individually when their titles differ, and keep non-MP3 files out of a writing queue: the first refusal ends the whole run, and the files already finished are not handed back.

Related tools