id3v2 v0.1.1 ID3v2

ID3v2

Basic ID3v2 tag parsing for Elixir. This is a work in progress.

Be prepared to Use the Source, Luke. Expect bugs.

Summary

Functions

extract_null_terminated(arg)
frames(filecontent)

Read all ID3 frames from the file.

Returns a Map of 4-character frame ID to frame content. For example:

%{
  "TIT2" => "Anesthetize"
  "TPE1" => "Porcupine Tree"
  "TALB" => "Fear of a Blank Planet"
  ...
}
header(filecontents)

Read the main ID3 header from the file. Extended header is not read nor allowed.

Returns version, flags and size in bytes, as a Map.

version is a {major, minor} tuple. flags is a HeaderFlags struct, see definition. Flags are only read, not recognized nor honored.

read_flags(byte)
read_payload(key, payload)
read_user_text(payload)
read_user_url(payload)
read_utf16(arg1)
read_utf16(bom, content)
strip_zero_bytes(arg)
unpacked_size(quadbyte)