jennifer registry

@deckyard/mp3

Read and edit MP3 metadata - ID3v2.2/2.3/2.4 and ID3v1.1 tags, embedded artwork, MPEG audio frame and Xing/VBRI stream analysis - and build M3U/M3U8 playlists

mp3id3id3v2id3v1mpeg

Depend on it

[decks]
"@deckyard/mp3" = "^0.1.0"

Versions

VersionStatusKindPinRequiresEnginesCapabilities
0.1.0livegit39f4b6993fa2-jennifer >=0.25.0 jennifer-tiny >=0.25.0-

License

LGPL-3.0-only

Source

Released from
0.1.0
Published under
@deckyard mplx
Repository owner
deckyard

Resolutions

Times a client asked this registry where to find this deck. Not downloads: the registry only stores metadata, and the code is fetched from its repository directly, so we never see an install and cannot count one. Repeated builds inflate these numbers; installs from an existing lockfile do not appear at all. Counted in UTC.

Readme

@deckyard/mp3

test Documentation release

A Jennifer deck that reads and writes MP3 metadata and M3U playlists, in pure Jennifer: ID3v2.2, 2.3 and 2.4 tags (unsynchronisation, compressed frames, all four text encodings, artwork), ID3v1 and ID3v1.1 with the 192-entry genre table, MPEG frame headers with Xing, Info and VBRI stream headers, and M3U / M3U8 playlists. One Tag struct covers every tag version, for reading and for writing.

Install

jvc add @deckyard/mp3

jvc vendors the src/ subtree to vendor/deckyard/mp3/. Without jvc, copy src/ (the entry module mp3.j and topics/) from a checkout or a deckyard-mp3-<version>.tar.gz release archive into that directory.

Requires Jennifer 0.25.0 or newer, and runs on jennifer-tiny. No network, subprocess or database; only open, save, writeFile, openPlaylist and savePlaylist touch the disk, through fs.

Example

use io;
import "@deckyard/mp3/" as mp3;

def track as mp3.Track init mp3.open("song.mp3");
io.printf("%s\n", mp3.describe($track));
# Maike Vandervaart - Ich war müde leer nicht mehr da  4:18  160 kbit/s VBR  44100 Hz  stereo

def tag as mp3.Tag init $track.tag;
$tag.genre = "Ambient";
mp3.save(mp3.withTag($track, $tag), "song.mp3");

Documentation

The book: guides, the on-disk formats, and a cheatsheet of every export. Runnable programs are in examples/. Contributors: the gate is tools/check-all.sh.

Licence

LGPL-3.0-only, see LICENSE. Copyright (C) 2026 mplx <[email protected]>.

This deck as JSON