The taglib Reference Manual

This is the taglib Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 08 19:41:39 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 taglib

Pure Lisp implementation to read (and write, perhaps, one day) tags

Author

Mark VandenBrink

License

UNLICENSE <http://unlicense.org/>

Dependencies
  • optima (system).
  • optima.ppcre (system).
  • flexi-streams (system).
  • bordeaux-threads (system).
Source

taglib.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 taglib/taglib.asd

Source

taglib.asd.

Parent Component

taglib (system).

ASDF Systems

taglib.


3.1.2 taglib/packages.lisp

Source

taglib.asd.

Parent Component

taglib (system).

Packages

3.1.3 taglib/profile.lisp

Dependency

packages.lisp (file).

Source

taglib.asd.

Parent Component

taglib (system).

Public Interface

3.1.4 taglib/utils.lisp

Dependency

packages.lisp (file).

Source

taglib.asd.

Parent Component

taglib (system).

Public Interface
Internals

3.1.5 taglib/tree.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface

3.1.6 taglib/audio-streams.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface
Internals

3.1.7 taglib/mpeg.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface
Internals

3.1.8 taglib/iso-639-2.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface

get-iso-639-2-language (function).

Internals

*langs* (special variable).


3.1.9 taglib/id3.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface
Internals

3.1.10 taglib/flac.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface
Internals

3.1.11 taglib/abstract-tag.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface
Internals

3.1.12 taglib/m4a.lisp

Dependencies
Source

taglib.asd.

Parent Component

taglib (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 abstract-tag

Source

packages.lisp.

Use List
Public Interface
Internals

4.2 audio-streams

Source

packages.lisp.

Use List
Used By List
Public Interface
Internals

4.3 iso-639-2

Source

packages.lisp.

Use List
Used By List

id3.

Public Interface

get-iso-639-2-language (function).

Internals

*langs* (special variable).


4.4 tree

Source

packages.lisp.

Use List

common-lisp.

Public Interface

4.5 mpeg

Source

packages.lisp.

Use List
Public Interface
Internals

4.6 utils

Source

packages.lisp.

Use List

common-lisp.

Used By List
Public Interface
Internals

4.7 profile

Source

packages.lisp.

Use List

common-lisp.

Public Interface

4.8 id3

Source

packages.lisp.

Use List
Public Interface
Internals

4.9 m4a

Source

packages.lisp.

Use List
Public Interface
Internals

4.10 flac

Source

packages.lisp.

Use List
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Constants

Constant: +itunes-account-type+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-album+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-album-artist+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-artist+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-at-id+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-atom-handler+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-cn-id+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-comment+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-compilation+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-composer+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-composer-id+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-content-rating+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-copyright+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-cover-art+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-data-info+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-data-ref-alis+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-data-ref-rsrc+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-data-ref-url+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-disk+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-edit-atom+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-elementary-stream-descriptor+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-encoder+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-file-type+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-flavor+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-free+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-free-form+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-gapless-playback+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-ge-id+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-genre+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-genre-x+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-groups+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-ilst-data+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-item-list+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-lyrics+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-mean+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-media+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-media-data-atom+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-media-header+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-media-info+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-media-type+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-metadata+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-movie+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-movie-header+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-mp4a-codec+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-name-atom+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-play-list-id+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-purchase-account+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-purchased-date+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-root+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-group-description+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-table+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-table-chunk-offset+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-table-desc+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-table-sample+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-table-size+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-table-time+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sample-to-group+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sort-album+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sort-album-artist+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sort-artist+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sort-composer+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sort-name+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-sound-media-header+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-store+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-tempo+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-title+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-tool+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-track+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-track-header+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-track-n+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-trak-header+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-unique-id+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-unk-drm+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-unk-iods+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-unk-pinf+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-unk-sbtd+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-user-data+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-writer+
Package

m4a.

Source

m4a.lisp.

Constant: +itunes-year+
Package

m4a.

Source

m4a.lisp.


5.1.2 Special variables

Special Variable: *break-on-warn-user*

set to T if you’d like to stop in warn-user

Package

utils.

Source

utils.lisp.

Special Variable: *current-file*

The file currently being worked on by OPEN-AUDIO-FILE

Package

audio-streams.

Source

audio-streams.lisp.

Special Variable: *get-audio-info*

Controls whether the parsing functions parse audio info like bit-rate, etc

Package

audio-streams.

Source

audio-streams.lisp.

Special Variable: *raw-tags*

Controls whether or not we print ’raw’ tags (aka frames) or textual representation of tags

Package

abstract-tag.

Source

abstract-tag.lisp.

Special Variable: *standard-optimize-settings*
Package

utils.

Source

utils.lisp.


5.1.3 Macros

Macro: aif (test-form then-form &optional else-form)
Package

utils.

Source

utils.lisp.

Macro: awhen (test-form &body body)
Package

utils.

Source

utils.lisp.

Macro: dbg (tag &rest exprs)

debug macro for print-debugging:
TAG is typically a constant string or keyword to identify who is printing, but can be an arbitrary expression returning a tag to be princ’ed first;
if the expression returns NIL, nothing is printed.
EXPRS are expressions, which when the TAG was not NIL are evaluated in order, with their source code then their return values being printed each time. The last expression is *always* evaluated and its multiple values are returned, but its source and return values are only printed if TAG was not NIL; previous expressions are not evaluated at all if TAG returned NIL.
The macro expansion has relatively low overhead in space or time.

Package

utils.

Source

utils.lisp.

Macro: defconstant* (name value &optional doc)

Make sure VALUE is evaluated only once (to appease SBCL).

Package

utils.

Source

utils.lisp.

Macro: get-bitfield (int start width)

Extract WIDTH bits from INT starting at START
Example: (get-bitfield #xFFFBB240 31 11) –>> #x7ff.
The above will expand to (ash (logand #xFFFBB240 #xFFE00000) -21) at COMPILE time.

Package

utils.

Source

utils.lisp.

Macro: make-octets (len)
Package

utils.

Source

utils.lisp.

Macro: memoize (func-name)

Memoize function associated with FUNC-NAME. Simplified version

Package

utils.

Source

utils.lisp.

Macro: redirect (filename &rest body)

Temporarily set *STANDARD-OUTPUT* to FILENAME and execute BODY.

Package

utils.

Source

utils.lisp.

Macro: while (test &body body)
Package

utils.

Source

utils.lisp.

Macro: with-gensyms (syms &body body)
Package

utils.

Source

utils.lisp.


5.1.4 Ordinary functions

Function: add-child (node child)

Takes two nodes created with MAKE-NODE and adds CHILD

Package

tree.

Source

tree.lisp.

Function: at-path (tree path cmp)

Return node from TREE located at PATH

Package

tree.

Source

tree.lisp.

Function: data (node)

Returns the information in NODE

Package

tree.

Source

tree.lisp.

Function: dbg-helper (tag expressions-thunks last-expression last-thunk)
Package

utils.

Source

utils.lisp.

Function: dump-data (file-name data)
Package

utils.

Source

utils.lisp.

Function: find-tree (tree test)

Find all nodes in TREE where TEST returns T

Package

tree.

Source

tree.lisp.

Function: first-child (node)

Returns a reference to the first child of NODE

Package

tree.

Source

tree.lisp.

Function: flac-show-raw-tag (flac-file-stream out-stream)

Spit out the raw form of comments we found

Package

flac.

Source

flac.lisp.

Function: get-flac-audio-info (flac-stream)

Read in the the audio properties from current file position.

Package

flac.

Source

flac.lisp.

Function: get-frames (mp3 names)

Given a MP3 file’s info, search its frames for NAMES. Return file-order list of matching frames

Package

id3.

Source

id3.lisp.

Function: get-id3v1-genre (n)

Given N, a supposed ID3 genre, range check it to make sure it is > 0 and < (sizeof *ID3V1-GENRES*)

Package

abstract-tag.

Source

abstract-tag.lisp.

Function: get-iso-639-2-language (l)

Convert an ISO-639-2 language tag into a readable language.

Package

iso-639-2.

Source

iso-639-2.lisp.

Function: get-mp4-audio-info (mp4-file)

Find and parse the audio information in MP4-FILE

Package

m4a.

Source

m4a.lisp.

Function: get-mpeg-audio-info (instream mp3-file)

Get MPEG Layer 3 audio information.
If the first MPEG frame we find is a Xing/Info header, return that as info. Else, we assume CBR and calculate the duration, etc.

Package

mpeg.

Source

mpeg.lisp.

Function: is-valid-flac-file (flac-file)

Make sure this is a FLAC file. Look for FLAC header at begining

Package

flac.

Source

flac.lisp.

Function: is-valid-m4-file (mp4-file)

Make sure this is an MP4 file. Quick check: is first atom type (at file-offset 4) == ’FSTYP’?

Package

m4a.

Source

m4a.lisp.

Function: is-valid-mp3-file (instream)

Make sure this is an MP3 file. Look for ID3 header at begining (versions 2, 3, 4) and/or end (version 2.1) Written in this fashion so as to be ’crash-proof’ when passed an arbitrary file.

Package

id3.

Source

id3.lisp.

Function: make-audio-stream (arg)

Creates a stream for ARG

Package

audio-streams.

Source

audio-streams.lisp.

Function: make-keyword (name)
Package

utils.

Source

utils.lisp.

Function: make-node (data)

Creates a new node with DATA as contents

Package

tree.

Source

tree.lisp.

Function: map-id3-frames (mp3 &key func)

Iterates through the ID3 frames found in an MP3 file

Package

id3.

Source

id3.lisp.

Function: map-mp4-atoms (m4a &key func)

Visit each atom we found in M4A

Package

m4a.

Source

m4a.lisp.

Function: mkstr (&rest args)

Suprise! Makes a string from ARGS.

Package

utils.

Source

utils.lisp.

Function: mksym (ansi &rest args)

Intern a symbol in current package. If ANSI is true, then up-case symbol, else, leave args as is.

Package

utils.

Source

utils.lisp.

Function: mp4-show-raw-tag-atoms (mp4-file-stream out-stream)

Show all the iTunes data atoms

Package

m4a.

Source

m4a.lisp.

Function: next-sibling (node)

Returns next SIBLING of NODE

Package

tree.

Source

tree.lisp.

Function: off ()
Package

profile.

Source

profile.lisp.

Function: on ()
Package

profile.

Source

profile.lisp.

Function: open-audio-file (filename &optional get-audio-info)

Open and parse FILENAME for tag and optionally audio info. Closes underlying file upon return.

Package

audio-streams.

Source

audio-streams.lisp.

Function: parse-audio-file (instream &optional get-audio-info)

Parse an MP3 file

Package

id3.

Source

id3.lisp.

Function: parse-audio-file (instream &optional get-audio-info)

Given a valid MP4 file, look for the ’right’ atoms and return them.

Package

m4a.

Source

m4a.lisp.

Function: parse-audio-file (instream &optional get-audio-info)

Loop through file and find all FLAC headers. If we find comment or audio-info headers, go ahead and parse them too.

Package

flac.

Source

flac.lisp.

Function: print-tree (tree)

Print the nodes of TREE

Package

tree.

Source

tree.lisp.

Function: printable-array (array &optional max-len)

Given an array, return a string of the first *MAX-RAW-BYTES-PRINT-LEN* bytes

Package

utils.

Source

utils.lisp.

Function: report ()
Package

profile.

Source

profile.lisp.

Function: reset ()
Package

profile.

Source

profile.lisp.

Function: stream-read-iso-string (instream &optional len)

Read an ISO-8859-1 string of &OPTIONAL LEN. When len is NIL, read in null-terminated ISO string w/o null at end

Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-sequence (stream size &key bits-per-byte)

Read in a sequence of octets at BITS-PER-BYTE

Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-u128 (stream &key bits-per-byte endian)
Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-u16 (stream &key bits-per-byte endian)
Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-u24 (stream &key bits-per-byte endian)
Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-u32 (stream &key bits-per-byte endian)
Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-u64 (stream &key bits-per-byte endian)
Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-u8 (stream)
Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-ucs-string (instream &key len kind)

Read a UCS-2 string of length ’len’. If len is nil read until we get null. KIND is :ucs-2, :ucs-2be or :ucs-2le. flexi-streams doesn’t appear to handle byte-order marks, so we have to do that here before calling.

Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-read-utf-8-string (instream &optional len)

Read an UTF-8 string of length LEN. If LEN is nil, read until we get a null.

Package

audio-streams.

Source

audio-streams.lisp.

Function: stream-seek (stream &optional offset from)

Move the FILE-POSITION of a stream

Package

audio-streams.

Source

audio-streams.lisp.

Function: tag-get-value (mp4-file atom-type)

Helper function to extract text from ILST atom’s data atom

Package

m4a.

Source

m4a.lisp.

Function: timings (function)

Time a function.

Package

utils.

Source

utils.lisp.

Function: traverse (tree func &optional depth)

Depth-first traversal of TREE calling FUNC for each node

Package

tree.

Source

tree.lisp.

Function: upto-null (string)

Trim STRING to end at first NULL found

Package

utils.

Source

utils.lisp.

Function: warn-user (format-string &rest args)

Print a warning error to *ERROR-OUTPUT* and continue

Package

utils.

Source

utils.lisp.


5.1.5 Generic functions

Generic Function: album (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: album ((me flac-file))
Method: album ((me mp4-file))
Method: album ((me mp3-file))
Generic Reader: album (object)
Package

id3.

Methods
Reader Method: album ((v21-tag-header v21-tag-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

album.

Generic Writer: (setf album) (object)
Package

id3.

Methods
Writer Method: (setf album) ((v21-tag-header v21-tag-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

album.

Generic Function: album-artist (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: album-artist ((me flac-file))
Method: album-artist ((me mp4-file))
Method: album-artist ((me mp3-file))
Generic Function: artist (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: artist ((me flac-file))
Method: artist ((me mp4-file))
Method: artist ((me mp3-file))
Generic Reader: artist (object)
Package

id3.

Methods
Reader Method: artist ((v21-tag-header v21-tag-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

artist.

Generic Writer: (setf artist) (object)
Package

id3.

Methods
Writer Method: (setf artist) ((v21-tag-header v21-tag-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

artist.

Generic Reader: atom-file-pos (object)
Package

m4a.

Methods
Reader Method: atom-file-pos ((mp4-atom mp4-atom))

automatically generated reader method

Source

m4a.lisp.

Target Slot

atom-file-pos.

Generic Writer: (setf atom-file-pos) (object)
Package

m4a.

Methods
Writer Method: (setf atom-file-pos) ((mp4-atom mp4-atom))

automatically generated writer method

Source

m4a.lisp.

Target Slot

atom-file-pos.

Generic Reader: atom-size (object)
Package

m4a.

Methods
Reader Method: atom-size ((mp4-atom mp4-atom))

automatically generated reader method

Source

m4a.lisp.

Target Slot

atom-size.

Generic Writer: (setf atom-size) (object)
Package

m4a.

Methods
Writer Method: (setf atom-size) ((mp4-atom mp4-atom))

automatically generated writer method

Source

m4a.lisp.

Target Slot

atom-size.

Generic Reader: atom-type (object)
Package

m4a.

Methods
Reader Method: atom-type ((mp4-atom mp4-atom))

automatically generated reader method

Source

m4a.lisp.

Target Slot

atom-type.

Generic Writer: (setf atom-type) (object)
Package

m4a.

Methods
Writer Method: (setf atom-type) ((mp4-atom mp4-atom))

automatically generated writer method

Source

m4a.lisp.

Target Slot

atom-type.

Generic Reader: audio-info (object)
Generic Writer: (setf audio-info) (object)
Package

id3.

Methods
Reader Method: audio-info ((mp3-file mp3-file))
Writer Method: (setf audio-info) ((mp3-file mp3-file))

holds the bit-rate, etc info

Source

id3.lisp.

Target Slot

audio-info.

Generic Reader: audio-info (object)
Generic Writer: (setf audio-info) (object)
Package

m4a.

Methods
Reader Method: audio-info ((mp4-file mp4-file))
Writer Method: (setf audio-info) ((mp4-file mp4-file))

holds the bit-rate, etc info

Source

m4a.lisp.

Target Slot

audio-info.

Generic Reader: audio-info (object)
Generic Writer: (setf audio-info) (object)
Package

flac.

Methods
Reader Method: audio-info ((flac-file flac-file))
Writer Method: (setf audio-info) ((flac-file flac-file))

parsed audio info

Source

flac.lisp.

Target Slot

audio-info.

Generic Function: comment (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: comment ((me flac-file))
Method: comment ((me mp4-file))
Method: comment ((me mp3-file))
Generic Reader: comment (object)
Package

id3.

Methods
Reader Method: comment ((v21-tag-header v21-tag-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

comment.

Generic Writer: (setf comment) (object)
Package

id3.

Methods
Writer Method: (setf comment) ((v21-tag-header v21-tag-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

comment.

Generic Function: composer (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: composer ((me flac-file))
Method: composer ((me mp4-file))
Method: composer ((me mp3-file))
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Generic Reader: desc (object)
Package

id3.

Methods
Reader Method: desc ((frame-txxx frame-txxx))

automatically generated reader method

Source

id3.lisp.

Target Slot

desc.

Reader Method: desc ((frame-comm frame-comm))

automatically generated reader method

Source

id3.lisp.

Target Slot

desc.

Reader Method: desc ((frame-apic frame-apic))

automatically generated reader method

Source

id3.lisp.

Target Slot

desc.

Reader Method: desc ((frame-txx frame-txx))

automatically generated reader method

Source

id3.lisp.

Target Slot

desc.

Reader Method: desc ((frame-pic frame-pic))

automatically generated reader method

Source

id3.lisp.

Target Slot

desc.

Reader Method: desc ((frame-com frame-com))

automatically generated reader method

Source

id3.lisp.

Target Slot

desc.

Generic Writer: (setf desc) (object)
Package

id3.

Methods
Writer Method: (setf desc) ((frame-txxx frame-txxx))

automatically generated writer method

Source

id3.lisp.

Target Slot

desc.

Writer Method: (setf desc) ((frame-comm frame-comm))

automatically generated writer method

Source

id3.lisp.

Target Slot

desc.

Writer Method: (setf desc) ((frame-apic frame-apic))

automatically generated writer method

Source

id3.lisp.

Target Slot

desc.

Writer Method: (setf desc) ((frame-txx frame-txx))

automatically generated writer method

Source

id3.lisp.

Target Slot

desc.

Writer Method: (setf desc) ((frame-pic frame-pic))

automatically generated writer method

Source

id3.lisp.

Target Slot

desc.

Writer Method: (setf desc) ((frame-com frame-com))

automatically generated writer method

Source

id3.lisp.

Target Slot

desc.

Generic Function: encoder (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: encoder ((me flac-file))
Method: encoder ((me mp4-file))
Method: encoder ((me mp3-file))
Generic Reader: encoding (object)
Package

id3.

Methods
Reader Method: encoding ((frame-txxx frame-txxx))

automatically generated reader method

Source

id3.lisp.

Target Slot

encoding.

Reader Method: encoding ((frame-comm frame-comm))

automatically generated reader method

Source

id3.lisp.

Target Slot

encoding.

Reader Method: encoding ((frame-apic frame-apic))

automatically generated reader method

Source

id3.lisp.

Target Slot

encoding.

Reader Method: encoding ((frame-txx frame-txx))

automatically generated reader method

Source

id3.lisp.

Target Slot

encoding.

Reader Method: encoding ((frame-text-info frame-text-info))

automatically generated reader method

Source

id3.lisp.

Target Slot

encoding.

Reader Method: encoding ((frame-pic frame-pic))

automatically generated reader method

Source

id3.lisp.

Target Slot

encoding.

Reader Method: encoding ((frame-com frame-com))

automatically generated reader method

Source

id3.lisp.

Target Slot

encoding.

Generic Writer: (setf encoding) (object)
Package

id3.

Methods
Writer Method: (setf encoding) ((frame-txxx frame-txxx))

automatically generated writer method

Source

id3.lisp.

Target Slot

encoding.

Writer Method: (setf encoding) ((frame-comm frame-comm))

automatically generated writer method

Source

id3.lisp.

Target Slot

encoding.

Writer Method: (setf encoding) ((frame-apic frame-apic))

automatically generated writer method

Source

id3.lisp.

Target Slot

encoding.

Writer Method: (setf encoding) ((frame-txx frame-txx))

automatically generated writer method

Source

id3.lisp.

Target Slot

encoding.

Writer Method: (setf encoding) ((frame-text-info frame-text-info))

automatically generated writer method

Source

id3.lisp.

Target Slot

encoding.

Writer Method: (setf encoding) ((frame-pic frame-pic))

automatically generated writer method

Source

id3.lisp.

Target Slot

encoding.

Writer Method: (setf encoding) ((frame-com frame-com))

automatically generated writer method

Source

id3.lisp.

Target Slot

encoding.

Generic Reader: filename (object)
Generic Writer: (setf filename) (object)
Package

id3.

Methods
Reader Method: filename ((mp3-file mp3-file))
Writer Method: (setf filename) ((mp3-file mp3-file))

filename that was parsed

Source

id3.lisp.

Target Slot

filename.

Generic Reader: filename (object)
Generic Writer: (setf filename) (object)
Package

m4a.

Methods
Reader Method: filename ((mp4-file mp4-file))
Writer Method: (setf filename) ((mp4-file mp4-file))

filename that was parsed

Source

m4a.lisp.

Target Slot

filename.

Generic Reader: filename (object)
Generic Writer: (setf filename) (object)
Package

flac.

Methods
Reader Method: filename ((flac-file flac-file))
Writer Method: (setf filename) ((flac-file flac-file))

filename that was parsed

Source

flac.lisp.

Target Slot

filename.

Generic Function: flac-get-tag (me key)
Package

flac.

Methods
Method: flac-get-tag ((me flac-tags) key)
Source

flac.lisp.

Generic Reader: flac-headers (object)
Generic Writer: (setf flac-headers) (object)
Package

flac.

Methods
Reader Method: flac-headers ((flac-file flac-file))
Writer Method: (setf flac-headers) ((flac-file flac-file))

holds all the flac headers in file

Source

flac.lisp.

Target Slot

flac-headers.

Generic Reader: flac-tags (object)
Generic Writer: (setf flac-tags) (object)
Package

flac.

Methods
Reader Method: flac-tags ((flac-file flac-file))
Writer Method: (setf flac-tags) ((flac-file flac-file))

parsed comment tags.

Source

flac.lisp.

Target Slot

flac-tags.

Generic Reader: frames (object)
Generic Writer: (setf frames) (object)
Package

id3.

Methods
Reader Method: frames ((id3-header id3-header))
Writer Method: (setf frames) ((id3-header id3-header))

holds ID3 frames

Source

id3.lisp.

Target Slot

frames.

Generic Reader: genre (object)
Package

id3.

Methods
Reader Method: genre ((v21-tag-header v21-tag-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

genre.

Generic Writer: (setf genre) (object)
Package

id3.

Methods
Writer Method: (setf genre) ((v21-tag-header v21-tag-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

genre.

Generic Function: groups (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: groups ((me mp4-file))
Method: groups ((me mp3-file))
Generic Reader: id (object)
Generic Writer: (setf id) (object)
Package

id3.

Methods
Reader Method: id ((id3-frame id3-frame))
Writer Method: (setf id) ((id3-frame id3-frame))

the 3-4 character name of this frame

Source

id3.lisp.

Target Slot

id.

Generic Reader: id3-header (object)
Generic Writer: (setf id3-header) (object)
Package

id3.

Methods
Reader Method: id3-header ((mp3-file mp3-file))
Writer Method: (setf id3-header) ((mp3-file mp3-file))

holds all the ID3 info

Source

id3.lisp.

Target Slot

id3-header.

Generic Reader: info (object)
Package

id3.

Methods
Reader Method: info ((frame-itunes-compilation frame-itunes-compilation))

automatically generated reader method

Source

id3.lisp.

Target Slot

info.

Reader Method: info ((frame-text-info frame-text-info))

automatically generated reader method

Source

id3.lisp.

Target Slot

info.

Generic Writer: (setf info) (object)
Package

id3.

Methods
Writer Method: (setf info) ((frame-itunes-compilation frame-itunes-compilation))

automatically generated writer method

Source

id3.lisp.

Target Slot

info.

Writer Method: (setf info) ((frame-text-info frame-text-info))

automatically generated writer method

Source

id3.lisp.

Target Slot

info.

Generic Reader: lang (object)
Package

id3.

Methods
Reader Method: lang ((frame-comm frame-comm))

automatically generated reader method

Source

id3.lisp.

Target Slot

lang.

Reader Method: lang ((frame-com frame-com))

automatically generated reader method

Source

id3.lisp.

Target Slot

lang.

Generic Writer: (setf lang) (object)
Package

id3.

Methods
Writer Method: (setf lang) ((frame-comm frame-comm))

automatically generated writer method

Source

id3.lisp.

Target Slot

lang.

Writer Method: (setf lang) ((frame-com frame-com))

automatically generated writer method

Source

id3.lisp.

Target Slot

lang.

Generic Function: lyrics (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: lyrics ((me mp4-file))
Method: lyrics ((me mp3-file))
Generic Reader: mp4-atoms (object)
Generic Writer: (setf mp4-atoms) (object)
Package

m4a.

Methods
Reader Method: mp4-atoms ((mp4-file mp4-file))
Writer Method: (setf mp4-atoms) ((mp4-file mp4-file))

holds tree of parsed MP4 atoms/boxes

Source

m4a.lisp.

Target Slot

mp4-atoms.

Generic Reader: octets (object)
Package

utils.

Methods
Reader Method: octets ((frame-raw frame-raw))

automatically generated reader method

Source

id3.lisp.

Target Slot

octets.

Generic Writer: (setf octets) (object)
Package

utils.

Methods
Writer Method: (setf octets) ((frame-raw frame-raw))

automatically generated writer method

Source

id3.lisp.

Target Slot

octets.

Generic Function: picture-info (me)
Package

id3.

Methods
Method: picture-info ((me frame-apic))

Used by ABSTRACT-TAG interface to report data about V2.3/4 cover art

Source

id3.lisp.

Method: picture-info ((me frame-pic))

Used by ABSTRACT-TAG interface to report data about V2.2 cover art

Source

id3.lisp.

Generic Function: show-tags (file &key raw &allow-other-keys)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: show-tags ((me flac-file) &key raw)

Show the tags for a FLAC-FILE.

Method: show-tags ((me mp4-file) &key raw)

Show the tags for an MP4-FILE. If RAW is non-nil, dump the DATA atoms; else show subset of DATA atoms

Method: show-tags ((me mp3-file) &key raw)

Show the tags for an MP3. If RAW is non-nil, dump all the frames; else, print out a subset.

Generic Function: stream-filename (stream)
Package

audio-streams.

Source

audio-streams.lisp.

Methods
Method: stream-filename ((stream flexi-stream))
Generic Function: stream-size (stream)
Package

audio-streams.

Source

audio-streams.lisp.

Methods
Method: stream-size ((stream in-memory-stream))
Method: stream-size ((stream flexi-input-stream))
Generic Function: title (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: title ((me flac-file))
Method: title ((me mp4-file))
Method: title ((me mp3-file))
Generic Reader: title (object)
Package

id3.

Methods
Reader Method: title ((v21-tag-header v21-tag-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

title.

Generic Writer: (setf title) (object)
Package

id3.

Methods
Writer Method: (setf title) ((v21-tag-header v21-tag-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

title.

Generic Reader: v21-tag-header (object)
Generic Writer: (setf v21-tag-header) (object)
Package

id3.

Methods
Reader Method: v21-tag-header ((id3-header id3-header))
Writer Method: (setf v21-tag-header) ((id3-header id3-header))

old-style v2.1 header (if present)

Source

id3.lisp.

Target Slot

v21-tag-header.

Generic Reader: val (object)
Package

id3.

Methods
Reader Method: val ((frame-txxx frame-txxx))

automatically generated reader method

Source

id3.lisp.

Target Slot

val.

Reader Method: val ((frame-comm frame-comm))

automatically generated reader method

Source

id3.lisp.

Target Slot

val.

Reader Method: val ((frame-txx frame-txx))

automatically generated reader method

Source

id3.lisp.

Target Slot

val.

Reader Method: val ((frame-com frame-com))

automatically generated reader method

Source

id3.lisp.

Target Slot

val.

Generic Writer: (setf val) (object)
Package

id3.

Methods
Writer Method: (setf val) ((frame-txxx frame-txxx))

automatically generated writer method

Source

id3.lisp.

Target Slot

val.

Writer Method: (setf val) ((frame-comm frame-comm))

automatically generated writer method

Source

id3.lisp.

Target Slot

val.

Writer Method: (setf val) ((frame-txx frame-txx))

automatically generated writer method

Source

id3.lisp.

Target Slot

val.

Writer Method: (setf val) ((frame-com frame-com))

automatically generated writer method

Source

id3.lisp.

Target Slot

val.

Generic Reader: version (object)
Generic Writer: (setf version) (object)
Package

id3.

Methods
Reader Method: version ((id3-frame id3-frame))
Writer Method: (setf version) ((id3-frame id3-frame))

the ID3-HEADER version number stored here for convenience

Source

id3.lisp.

Target Slot

version.

Reader Method: version ((id3-header id3-header))
Writer Method: (setf version) ((id3-header id3-header))

ID3 version: 2, 3, or 4

Source

id3.lisp.

Target Slot

version.

Generic Function: vpprint (me stream)
Package

mpeg.

Methods
Method: vpprint ((me mpeg-audio-info) stream)
Source

mpeg.lisp.

Method: vpprint ((me vbr-info) stream)
Source

mpeg.lisp.

Method: vpprint ((me frame) stream)
Source

mpeg.lisp.

Generic Function: vpprint (me stream)
Package

id3.

Methods
Method: vpprint ((me frame-url-link) stream)
Source

id3.lisp.

Method: vpprint ((me frame-ufid) stream)
Source

id3.lisp.

Method: vpprint ((me frame-txxx) stream)
Source

id3.lisp.

Method: vpprint ((me frame-priv) stream)
Source

id3.lisp.

Method: vpprint ((me frame-pcnt) stream)
Source

id3.lisp.

Method: vpprint ((me frame-comm) stream)
Source

id3.lisp.

Method: vpprint ((me frame-apic) stream)
Source

id3.lisp.

Method: vpprint ((me frame-ufi) stream)
Source

id3.lisp.

Method: vpprint ((me frame-txx) stream)
Source

id3.lisp.

Method: vpprint ((me frame-itunes-compilation) stream)
Source

id3.lisp.

Method: vpprint ((me frame-text-info) stream)
Source

id3.lisp.

Method: vpprint ((me frame-pic) stream)
Source

id3.lisp.

Method: vpprint ((me frame-com) stream)
Source

id3.lisp.

Method: vpprint ((me frame-raw) stream)
Source

id3.lisp.

Method: vpprint ((me id3-header) stream)
Source

id3.lisp.

Method: vpprint ((me id3-ext-header) stream)
Source

id3.lisp.

Method: vpprint ((me v21-tag-header) stream)
Source

id3.lisp.

Generic Function: vpprint (me stream)
Package

m4a.

Methods
Method: vpprint ((me audio-info) stream)

Pretty print audio information

Source

m4a.lisp.

Method: vpprint ((me mp4-atom) stream)

Pretty print an atom

Source

m4a.lisp.

Generic Function: vpprint (me stream)
Package

flac.

Methods
Method: vpprint ((me flac-audio-properties) stream)
Source

flac.lisp.

Method: vpprint ((me flac-header) stream)
Source

flac.lisp.

Generic Function: writer (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: writer ((me mp4-file))
Method: writer ((me mp3-file))
Generic Reader: year (object)
Package

id3.

Methods
Reader Method: year ((v21-tag-header v21-tag-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

year.

Generic Writer: (setf year) (object)
Package

id3.

Methods
Writer Method: (setf year) ((v21-tag-header v21-tag-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

year.


5.1.6 Standalone methods

Method: initialize-instance ((me v21-tag-header) &key instream)

Read in a V2.1 tag. Caller will have stream-seek’ed file to correct location and ensured that TAG was present

Source

id3.lisp.

Method: initialize-instance :after ((me id3-header) &key instream &allow-other-keys)

Fill in an mp3-header from INSTREAM.

Source

id3.lisp.

Method: initialize-instance :after ((me frame-pic) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me id3-ext-header) &key instream version)

Read in the extended header. Caller will have stream-seek’ed to correct location in file. Note: extended headers are subject to unsynchronization, so make sure that INSTREAM has been made sync-safe. NB: 2.3 and 2.4 extended flags are different...

Source

id3.lisp.

Method: initialize-instance :after ((me frame-priv) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-comm) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-raw) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-apic) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-itunes-compilation) &key &allow-other-keys)

iTunes compilation weirdness: I have seen this encoded soooo many ways...

Source

id3.lisp.

Method: initialize-instance :after ((me frame-ufi) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-txx) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-pcnt) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-com) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-url-link) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-text-info) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-txxx) &key instream)
Source

id3.lisp.

Method: initialize-instance :after ((me frame-ufid) &key instream)
Source

id3.lisp.

Method: initialize-instance :around ((me mp4-atom) &key &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :around ((me atom-dref) &key mp4-file &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :after ((me atom-hdlr) &key mp4-file &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :after ((me atom-data) &key mp4-file parent &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :after ((me atom-stsd) &key mp4-file &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :after ((me atom-mdhd) &key mp4-file &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :after ((me atom-skip) &key mp4-file &allow-other-keys)

The ’skip’ atom. Used when we want to capture the header of atom, but don’t want/need to read the payload of an atom.

Source

m4a.lisp.

Method: initialize-instance :after ((me atom-container) &key mp4-file &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :around ((me atom-meta) &key mp4-file &allow-other-keys)
Source

m4a.lisp.

Method: initialize-instance :around ((me atom-mp4a) &key mp4-file &allow-other-keys)

Note: this MUST be an AROUND method so that the atom’s data can be read in before reading the container atoms

Source

m4a.lisp.

Method: initialize-instance :after ((me atom-esds) &key mp4-file &allow-other-keys)
Source

m4a.lisp.


5.1.7 Classes

Class: audio-info

Holds extracted audio information about an MP4 file.

Package

m4a.

Source

m4a.lisp.

Direct methods
Direct slots
Slot: seconds
Readers

seconds.

Writers

(setf seconds).

Slot: channels
Readers

channels.

Writers

(setf channels).

Slot: bits-per-sample
Readers

bits-per-sample.

Writers

(setf bits-per-sample).

Slot: sample-rate
Readers

sample-rate.

Writers

(setf sample-rate).

Slot: max-bit-rate
Readers

max-bit-rate.

Writers

(setf max-bit-rate).

Slot: avg-bit-rate
Readers

avg-bit-rate.

Writers

(setf avg-bit-rate).

Class: flac-file

Stream for parsing flac files

Package

flac.

Source

flac.lisp.

Direct methods
Direct slots
Slot: filename

filename that was parsed

Initargs

:filename

Readers

filename.

Writers

(setf filename).

Slot: flac-headers

holds all the flac headers in file

Readers

flac-headers.

Writers

(setf flac-headers).

Slot: audio-info

parsed audio info

Readers

audio-info.

Writers

(setf audio-info).

Slot: flac-tags

parsed comment tags.

Readers

flac-tags.

Writers

(setf flac-tags).

Class: flac-tags
Package

flac.

Source

flac.lisp.

Direct methods
Direct slots
Slot: vendor-str
Initargs

:vendor-str

Readers

vendor-str.

Writers

(setf vendor-str).

Slot: comments
Initargs

:comments

Readers

comments.

Writers

(setf comments).

Slot: tags
Initform

(make-hash-table :test (quote equal))

Readers

tags.

Writers

(setf tags).

Class: id3-frame

Base class for an ID3 frame. Used for versions 2.2, 2.3, and 2.4

Package

id3.

Source

id3.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: pos

the offset in the buffer were this frame was found

Initargs

:pos

Readers

pos.

Writers

(setf pos).

Slot: id

the 3-4 character name of this frame

Initargs

:id

Readers

id.

Writers

(setf id).

Slot: len

the length of this frame

Initargs

:len

Readers

len.

Writers

(setf len).

Slot: version

the ID3-HEADER version number stored here for convenience

Initargs

:version

Readers

version.

Writers

(setf version).

Slot: flags

the frame’s flags

Initargs

:flags

Readers

flags.

Writers

(setf flags).

Class: id3-header

The ID3 header, found at start of file

Package

id3.

Source

id3.lisp.

Direct methods
Direct slots
Slot: version

ID3 version: 2, 3, or 4

Initform

0

Initargs

:version

Readers

version.

Writers

(setf version).

Slot: revision

ID3 revision—is this ever non-zero?

Initform

0

Initargs

:revision

Readers

revision.

Writers

(setf revision).

Slot: flags

ID3 header flags

Initform

0

Initargs

:flags

Readers

flags.

Writers

(setf flags).

Slot: size

size of ID3 info

Initform

0

Initargs

:size

Readers

size.

Writers

(setf size).

Slot: padding-size

padding size in tags

Initform

0

Initargs

:padding-size

Readers

padding-size.

Writers

(setf padding-size).

Slot: ext-header

holds v2.3/4 extended header

Initargs

:ext-header

Readers

ext-header.

Writers

(setf ext-header).

Slot: frames

holds ID3 frames

Initargs

:frames

Readers

frames.

Writers

(setf frames).

Slot: v21-tag-header

old-style v2.1 header (if present)

Initargs

:v21-tag-header

Readers

v21-tag-header.

Writers

(setf v21-tag-header).

Class: mp3-file

Output of parsing MP3 files

Package

id3.

Source

id3.lisp.

Direct methods
Direct slots
Slot: filename

filename that was parsed

Initargs

:filename

Readers

filename.

Writers

(setf filename).

Slot: id3-header

holds all the ID3 info

Readers

id3-header.

Writers

(setf id3-header).

Slot: audio-info

holds the bit-rate, etc info

Readers

audio-info.

Writers

(setf audio-info).

Class: mp4-atom

The minimal mp4-atom.

Package

m4a.

Source

m4a.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: atom-file-pos
Initargs

:atom-file-pos

Readers

atom-file-pos.

Writers

(setf atom-file-pos).

Slot: atom-size
Initargs

:atom-size

Readers

atom-size.

Writers

(setf atom-size).

Slot: atom-type
Initargs

:atom-type

Readers

atom-type.

Writers

(setf atom-type).

Class: mp4-file

For parsing MP4 audio files

Package

m4a.

Source

m4a.lisp.

Direct methods
Direct slots
Slot: filename

filename that was parsed

Initargs

:filename

Readers

filename.

Writers

(setf filename).

Slot: mp4-atoms

holds tree of parsed MP4 atoms/boxes

Readers

mp4-atoms.

Writers

(setf mp4-atoms).

Slot: audio-info

holds the bit-rate, etc info

Readers

audio-info.

Writers

(setf audio-info).

Class: v21-tag-header

ID3 V2.1 old-style tag. If present, found in last 128 bytes of file.

Package

id3.

Source

id3.lisp.

Direct methods
Direct slots
Slot: title
Initargs

:title

Readers

title.

Writers

(setf title).

Slot: artist
Initargs

:artist

Readers

artist.

Writers

(setf artist).

Slot: album
Initargs

:album

Readers

album.

Writers

(setf album).

Slot: year
Initargs

:year

Readers

year.

Writers

(setf year).

Slot: comment
Initargs

:comment

Readers

comment.

Writers

(setf comment).

Slot: track

some taggers allow the last 2 bytes of comment to be used as track number

Initargs

:track

Readers

track.

Writers

(setf track).

Slot: genre
Initargs

:genre

Readers

genre.

Writers

(setf genre).


5.1.8 Types

Type: octet ()
Package

utils.

Source

utils.lisp.

Type: octets ()
Package

utils.

Source

utils.lisp.


5.2 Internals


5.2.1 Constants

Constant: +channel-mode-dual+
Package

mpeg.

Source

mpeg.lisp.

Constant: +channel-mode-joint+
Package

mpeg.

Source

mpeg.lisp.

Constant: +channel-mode-mono+
Package

mpeg.

Source

mpeg.lisp.

Constant: +channel-mode-stereo+
Package

mpeg.

Source

mpeg.lisp.

Constant: +emphasis-50-15+
Package

mpeg.

Source

mpeg.lisp.

Constant: +emphasis-ccit+
Package

mpeg.

Source

mpeg.lisp.

Constant: +emphasis-none+
Package

mpeg.

Source

mpeg.lisp.

Constant: +emphasis-reserved+
Package

mpeg.

Source

mpeg.lisp.

Constant: +layer-1+
Package

mpeg.

Source

mpeg.lisp.

Constant: +layer-2+
Package

mpeg.

Source

mpeg.lisp.

Constant: +layer-3+
Package

mpeg.

Source

mpeg.lisp.

Constant: +layer-reserved+
Package

mpeg.

Source

mpeg.lisp.

Constant: +metadata-application+
Package

flac.

Source

flac.lisp.

Constant: +metadata-comment+
Package

flac.

Source

flac.lisp.

Constant: +metadata-cuesheet+
Package

flac.

Source

flac.lisp.

Constant: +metadata-padding+
Package

flac.

Source

flac.lisp.

Constant: +metadata-picture+
Package

flac.

Source

flac.lisp.

Constant: +metadata-seektable+
Package

flac.

Source

flac.lisp.

Constant: +metadata-streaminfo+
Package

flac.

Source

flac.lisp.

Constant: +mode-extension-0+
Package

mpeg.

Source

mpeg.lisp.

Constant: +mode-extension-1+
Package

mpeg.

Source

mpeg.lisp.

Constant: +mode-extension-2+
Package

mpeg.

Source

mpeg.lisp.

Constant: +mode-extension-3+
Package

mpeg.

Source

mpeg.lisp.

Constant: +mp4-contentiddescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-decconfigdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-decspecificdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-esdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-esidincdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-esidrefdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-extdescrtagsend+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-extdescrtagsstart+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-extprofileleveldescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-fileiodescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-fileodescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-iodescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-ipiptrdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-ipmpdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-ipmpptrdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-odescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-registrationdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-slconfigdescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mp4-supplcontentiddescrtag+
Package

m4a.

Source

m4a.lisp.

Constant: +mpeg-1+
Package

mpeg.

Source

mpeg.lisp.

Constant: +mpeg-2+
Package

mpeg.

Source

mpeg.lisp.

Constant: +mpeg-2.5+
Package

mpeg.

Source

mpeg.lisp.

Constant: +sync-word+

NB: this is 11 bits so as to be able to recognize V2.5

Package

mpeg.

Source

mpeg.lisp.

Constant: +v-reserved+
Package

mpeg.

Source

mpeg.lisp.

Constant: +vbr-bytes+
Package

mpeg.

Source

mpeg.lisp.

Constant: +vbr-frames+
Package

mpeg.

Source

mpeg.lisp.

Constant: +vbr-scale+
Package

mpeg.

Source

mpeg.lisp.

Constant: +vbr-tocs+
Package

mpeg.

Source

mpeg.lisp.


5.2.2 Special variables

Special Variable: *flac-tag-pattern*

regex used to parse FLAC/ORBIS comments

Package

flac.

Source

flac.lisp.

Special Variable: *frame-db*
Package

id3.

Source

id3.lisp.

Special Variable: *handled-atoms*

This is the list of atoms we ’handle’, where ’handle’ may well indeed mean to skip or just define a constant. Each entry is constant-name/class-name. From this data structure we auto-generate (optionally) class-names
and (always) defconstants.

Package

m4a.

Source

m4a.lisp.

Special Variable: *id3v1-genres*
Package

abstract-tag.

Source

abstract-tag.lisp.

Special Variable: *ilst-data*

iTunes artist/album/etc path. The 5th element should be set to one of the +iTunes- constants

Package

m4a.

Source

m4a.lisp.

Special Variable: *in-progress*

the node currently being worked upon

Package

m4a.

Source

m4a.lisp.

Special Variable: *langs*
Package

iso-639-2.

Source

iso-639-2.lisp.

Special Variable: *max-frames-to-read*

when trying to determine bit-rate, etc, read at most this many frames

Package

mpeg.

Source

mpeg.lisp.

Special Variable: *max-raw-bytes-print-len*

Max number of octets to print from an array

Package

utils.

Source

utils.lisp.

Special Variable: *picture-type*
Package

id3.

Source

id3.lisp.

Special Variable: *stop-on-count*
Package

m4a.

Source

m4a.lisp.

Special Variable: *tree*

the root of the atom tree being constructed

Package

m4a.

Source

m4a.lisp.

Special Variable: *v22-frame-names*
Package

id3.

Source

id3.lisp.

Special Variable: *v23-frame-names*
Package

id3.

Source

id3.lisp.

Special Variable: *v24-frame-names*
Package

id3.

Source

id3.lisp.


5.2.3 Macros

Macro: cont-atom-entry (a b)
Package

m4a.

Source

m4a.lisp.

Macro: frame-23-alterfile-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-23-altertag-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-23-compress-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-23-encrypt-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-23-group-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-23-readonly-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-alterfile-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-altertag-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-compress-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-datalen-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-encrypt-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-groupid-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-readonly-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: frame-24-unsynch-p (frame-flags)
Package

id3.

Source

id3.lisp.

Macro: get-flac-tag-info (stream name)
Package

abstract-tag.

Source

abstract-tag.lisp.

Macro: header-experimental-p (flags)
Package

id3.

Source

id3.lisp.

Macro: header-extended-p (flags)
Package

id3.

Source

id3.lisp.

Macro: header-footer-p (flags)
Package

id3.

Source

id3.lisp.

Macro: header-unsynchronized-p (flags)
Package

id3.

Source

id3.lisp.

Macro: ilst-atom-entry (a b)
Package

m4a.

Source

m4a.lisp.

Macro: make-frame-db ()
Package

id3.

Source

id3.lisp.

Macro: make-lock ()
Package

utils.

Source

utils.lisp.

Macro: mk-handled-atoms-constants-and-classes ()
Package

m4a.

Source

m4a.lisp.

Macro: mk-mp4-atom-type (l1 l2 l3 l4)

Given 4 chars/ints, create a string for the name

Package

m4a.

Source

m4a.lisp.

Macro: ncls-atom-entry (a b)
Package

m4a.

Source

m4a.lisp.

Macro: print-header-flags (stream flags)
Package

id3.

Source

id3.lisp.

Macro: skip-atom-entry (a b)
Package

m4a.

Source

m4a.lisp.

Macro: with-flac-slots ((instance) &body body)
Package

flac.

Source

flac.lisp.

Macro: with-frame-slots ((instance) &body body)
Package

mpeg.

Source

mpeg.lisp.

Macro: with-lock ((l) &body body)
Package

utils.

Source

utils.lisp.

Macro: with-mp4-atom-slots ((instance) &body body)
Package

m4a.

Source

m4a.lisp.

Macro: with-vbr-info-slots ((instance) &body body)
Package

mpeg.

Source

mpeg.lisp.


5.2.4 Ordinary functions

Function: as-octet (c)

Used below so that we can create atom ’types’ from char/ints

Package

m4a.

Source

m4a.lisp.

Function: as-octets (str)
Package

m4a.

Source

m4a.lisp.

Function: as-string (atom-type)

Given an integer, return the string representation

Package

m4a.

Source

m4a.lisp.

Function: calc-bit-rate-exhaustive (instream start info)

Map every MPEG frame in INSTREAM and calculate the bit-rate

Package

mpeg.

Source

mpeg.lisp.

Function: copy-frame-db-entry (instance)
Package

id3.

Source

id3.lisp.

Function: copy-locked-hash-table (instance)
Package

utils.

Source

utils.lisp.

Function: ext-header-restrictions-grok (r)

Return a string that shows what restrictions are in an ext-header

Package

id3.

Source

id3.lisp.

Function: find-atom-class (arg)
Package

m4a.

Source

utils.lisp.

Function: find-first-sync (instream)

Scan the file looking for the first sync word.

Package

mpeg.

Source

mpeg.lisp.

Function: find-frame-class (arg)
Package

id3.

Source

utils.lisp.

Function: find-genre (name)

For debug purpose only: test function to return index of genre, given a name. Ignores case and returns first complete match

Package

abstract-tag.

Source

abstract-tag.lisp.

Function: flac-get-tags (stream)

Loop through file and find all comment tags.

Package

flac.

Source

flac.lisp.

Reader: frame-db-entry-is-v22 (instance)
Writer: (setf frame-db-entry-is-v22) (instance)
Package

id3.

Source

id3.lisp.

Target Slot

is-v22.

Reader: frame-db-entry-is-v23 (instance)
Writer: (setf frame-db-entry-is-v23) (instance)
Package

id3.

Source

id3.lisp.

Target Slot

is-v23.

Reader: frame-db-entry-is-v24 (instance)
Writer: (setf frame-db-entry-is-v24) (instance)
Package

id3.

Source

id3.lisp.

Target Slot

is-v24.

Function: frame-db-entry-p (object)
Package

id3.

Source

id3.lisp.

Reader: frame-db-entry-text (instance)
Writer: (setf frame-db-entry-text) (instance)
Package

id3.

Source

id3.lisp.

Target Slot

text.

Function: generate-it (name type super-class)
Package

m4a.

Source

m4a.lisp.

Function: get-audio-properties-atoms (mp4-file)

Get the audio property atoms from MP4-FILE.
MP4A audio info is held in under root.moov.trak.mdia.mdhd, root.moov.trak.mdia.minf.stbl.mp4a, and root.moov.trak.mdia.minf.stbl.mp4a.esds

Package

m4a.

Source

m4a.lisp.

Function: get-bit-rate (version layer bit-rate-index)
Package

mpeg.

Source

mpeg.lisp.

Function: get-bitmask (start width)

Create a bit mask that begins at bit START (31 is MSB) and is WIDTH bits wide. Example: (get-bitmask 31 11) –>> #xffe00000

Package

utils.

Source

utils.lisp.

Function: get-byte-order-mark (octets)

Get the BOM from octets

Package

audio-streams.

Source

audio-streams.lisp.

Function: get-channel-mode-string (mode)
Package

mpeg.

Source

mpeg.lisp.

Function: get-emphasis-string (e)
Package

mpeg.

Source

mpeg.lisp.

Function: get-frame-db-entry (id)

Given a frame id/name, return the associated FRAME-DB-ENTRY

Package

id3.

Source

id3.lisp.

Function: get-frame-size (version layer bit-rate sample-rate padded)
Package

mpeg.

Source

mpeg.lisp.

Function: get-layer-string (layer)
Package

mpeg.

Source

mpeg.lisp.

Function: get-mode-extension-string (channel-mode layer mode-extension)
Package

mpeg.

Source

mpeg.lisp.

Function: get-mpeg-version-string (version)
Package

mpeg.

Source

mpeg.lisp.

Function: get-name-value-pair (instream len name-encoding value-encoding)
Package

id3.

Source

id3.lisp.

Function: get-picture-type (n)

Function to return picture types for APIC frames

Package

id3.

Source

id3.lisp.

Function: get-sample-rate (version sr-index)
Package

mpeg.

Source

mpeg.lisp.

Function: get-samples-per-frame (version layer)
Package

mpeg.

Source

mpeg.lisp.

Function: get-side-info-size (version channel-mode)
Package

mpeg.

Source

mpeg.lisp.

Function: id3-decode-string (octets &key encoding start end)

Decode a string of a given encoding of length ’len’. Encoding is from the ID3 ’spec’

Package

id3.

Source

id3.lisp.

Function: id3-read-string (instream &key len encoding)

Read in a string of a given encoding of length ’len’. Encoding is from the ID3 ’spec’

Package

id3.

Source

id3.lisp.

Reader: locked-hash-table-hash-table (instance)
Writer: (setf locked-hash-table-hash-table) (instance)
Package

utils.

Source

utils.lisp.

Target Slot

hash-table.

Reader: locked-hash-table-lock (instance)
Writer: (setf locked-hash-table-lock) (instance)
Package

utils.

Source

utils.lisp.

Target Slot

lock.

Function: locked-hash-table-p (object)
Package

utils.

Source

utils.lisp.

Function: make-flac-header (stream)

Make a flac header from current position in stream

Package

flac.

Source

flac.lisp.

Function: make-frame (version instream fn)

Create an appropriate mp3 frame by reading data from INSTREAM.

Package

id3.

Source

id3.lisp.

Function: make-frame-db-entry (&key text is-v22 is-v23 is-v24)
Package

id3.

Source

id3.lisp.

Function: make-locked-hash-table (&key lock hash-table)
Package

utils.

Source

utils.lisp.

Function: make-mp4-atom (mp4-file parent)

Get current file position, read in size/type, then construct the correct atom.

Package

m4a.

Source

m4a.lisp.

Function: map-frames (in func &key start-pos read-payload max)

Loop through the MPEG audio frames in a file. If *MAX-FRAMES-TO-READ* is set, return after reading that many frames.

Package

mpeg.

Source

mpeg.lisp.

Function: mk-atom-class-name (arg)
Package

m4a.

Source

utils.lisp.

Function: mk-frame-class-name (arg)
Package

id3.

Source

utils.lisp.

Function: mk-lst (str)

Transform ’N/M’ to (N M)

Package

abstract-tag.

Source

abstract-tag.lisp.

Function: mk-memoize (func-name)

Takes a normal function object and returns a memoized one

Package

utils.

Source

utils.lisp.

Function: possibly-valid-frame-id? (arg)
Package

id3.

Source

utils.lisp.

Function: print-frame-flags (version flags stream)
Package

id3.

Source

id3.lisp.

Function: read-descriptor-len (instream)

Get the ES descriptor’s length.

Package

m4a.

Source

m4a.lisp.

Function: read-n-bytes (stream n-bytes &key bits-per-byte endian)

Returns a FIXNUM constructed by reading N-BYTES. BITS-PER-BYTE controls how many bits should be used from each read byte.

Package

audio-streams.

Source

audio-streams.lisp.

Function: valid-bit-rate-index (br-index)
Package

mpeg.

Source

mpeg.lisp.

Function: valid-emphasis (e)
Package

mpeg.

Source

mpeg.lisp.

Function: valid-frame-flags (header-version frame-flags)
Package

id3.

Source

id3.lisp.

Function: valid-layer (layer)
Package

mpeg.

Source

mpeg.lisp.

Function: valid-sample-rate-index (sr-index)
Package

mpeg.

Source

mpeg.lisp.

Function: valid-version (version)
Package

mpeg.

Source

mpeg.lisp.

Function: vpprint-frame-header (id3-frame)
Package

id3.

Source

id3.lisp.


5.2.5 Generic functions

Generic Reader: atom-flags (object)
Package

m4a.

Methods
Reader Method: atom-flags ((atom-data atom-data))

automatically generated reader method

Source

m4a.lisp.

Target Slot

atom-flags.

Generic Writer: (setf atom-flags) (object)
Package

m4a.

Methods
Writer Method: (setf atom-flags) ((atom-data atom-data))

automatically generated writer method

Source

m4a.lisp.

Target Slot

atom-flags.

Generic Reader: atom-locale (object)
Package

m4a.

Methods
Reader Method: atom-locale ((atom-data atom-data))

automatically generated reader method

Source

m4a.lisp.

Target Slot

atom-locale.

Generic Writer: (setf atom-locale) (object)
Package

m4a.

Methods
Writer Method: (setf atom-locale) ((atom-data atom-data))

automatically generated writer method

Source

m4a.lisp.

Target Slot

atom-locale.

Generic Reader: atom-value (object)
Package

m4a.

Methods
Reader Method: atom-value ((atom-data atom-data))

automatically generated reader method

Source

m4a.lisp.

Target Slot

atom-value.

Generic Writer: (setf atom-value) (object)
Package

m4a.

Methods
Writer Method: (setf atom-value) ((atom-data atom-data))

automatically generated writer method

Source

m4a.lisp.

Target Slot

atom-value.

Generic Reader: atom-version (object)
Package

m4a.

Methods
Reader Method: atom-version ((atom-data atom-data))

automatically generated reader method

Source

m4a.lisp.

Target Slot

atom-version.

Generic Writer: (setf atom-version) (object)
Package

m4a.

Methods
Writer Method: (setf atom-version) ((atom-data atom-data))

automatically generated writer method

Source

m4a.lisp.

Target Slot

atom-version.

Generic Reader: avg-bit-rate (object)
Package

m4a.

Methods
Reader Method: avg-bit-rate ((audio-info audio-info))

automatically generated reader method

Source

m4a.lisp.

Target Slot

avg-bit-rate.

Reader Method: avg-bit-rate ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

avg-bit-rate.

Generic Writer: (setf avg-bit-rate) (object)
Package

m4a.

Methods
Writer Method: (setf avg-bit-rate) ((audio-info audio-info))

automatically generated writer method

Source

m4a.lisp.

Target Slot

avg-bit-rate.

Writer Method: (setf avg-bit-rate) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

avg-bit-rate.

Generic Reader: bit-rate (object)
Package

mpeg.

Methods
Reader Method: bit-rate ((mpeg-audio-info mpeg-audio-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

bit-rate.

Reader Method: bit-rate ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

bit-rate.

Generic Writer: (setf bit-rate) (object)
Package

mpeg.

Methods
Writer Method: (setf bit-rate) ((mpeg-audio-info mpeg-audio-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

bit-rate.

Writer Method: (setf bit-rate) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

bit-rate.

Generic Reader: bits-per-sample (object)
Package

m4a.

Methods
Reader Method: bits-per-sample ((audio-info audio-info))

automatically generated reader method

Source

m4a.lisp.

Target Slot

bits-per-sample.

Generic Writer: (setf bits-per-sample) (object)
Package

m4a.

Methods
Writer Method: (setf bits-per-sample) ((audio-info audio-info))

automatically generated writer method

Source

m4a.lisp.

Target Slot

bits-per-sample.

Generic Reader: bits-per-sample (object)
Package

flac.

Methods
Reader Method: bits-per-sample ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

bits-per-sample.

Generic Writer: (setf bits-per-sample) (object)
Package

flac.

Methods
Writer Method: (setf bits-per-sample) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

bits-per-sample.

Generic Reader: buf-size (object)
Package

m4a.

Methods
Reader Method: buf-size ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

buf-size.

Generic Writer: (setf buf-size) (object)
Package

m4a.

Methods
Writer Method: (setf buf-size) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

buf-size.

Generic Reader: bytes (object)
Package

mpeg.

Methods
Reader Method: bytes ((vbr-info vbr-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

bytes.

Generic Writer: (setf bytes) (object)
Package

mpeg.

Methods
Writer Method: (setf bytes) ((vbr-info vbr-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

bytes.

Generic Reader: c-time (object)
Package

m4a.

Methods
Reader Method: c-time ((atom-mdhd atom-mdhd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

c-time.

Generic Writer: (setf c-time) (object)
Package

m4a.

Methods
Writer Method: (setf c-time) ((atom-mdhd atom-mdhd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

c-time.

Generic Reader: channel-mode (object)
Package

mpeg.

Methods
Reader Method: channel-mode ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

channel-mode.

Generic Writer: (setf channel-mode) (object)
Package

mpeg.

Methods
Writer Method: (setf channel-mode) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

channel-mode.

Generic Reader: channels (object)
Package

m4a.

Methods
Reader Method: channels ((audio-info audio-info))

automatically generated reader method

Source

m4a.lisp.

Target Slot

channels.

Generic Writer: (setf channels) (object)
Package

m4a.

Methods
Writer Method: (setf channels) ((audio-info audio-info))

automatically generated writer method

Source

m4a.lisp.

Target Slot

channels.

Generic Function: check-vbr (me)
Package

mpeg.

Methods
Method: check-vbr ((me frame))
Source

mpeg.lisp.

Generic Reader: comments (object)
Package

flac.

Methods
Reader Method: comments ((flac-tags flac-tags))

automatically generated reader method

Source

flac.lisp.

Target Slot

comments.

Generic Writer: (setf comments) (object)
Package

flac.

Methods
Writer Method: (setf comments) ((flac-tags flac-tags))

automatically generated writer method

Source

flac.lisp.

Target Slot

comments.

Generic Reader: comp-id (object)
Package

m4a.

Methods
Reader Method: comp-id ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

comp-id.

Generic Writer: (setf comp-id) (object)
Package

m4a.

Methods
Writer Method: (setf comp-id) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

comp-id.

Generic Function: compilation (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: compilation ((me mp4-file))
Method: compilation ((me mp3-file))
Package

mpeg.

Methods

automatically generated reader method

Source

mpeg.lisp.

Target Slot

copyright.

Package

mpeg.

Methods

automatically generated writer method

Source

mpeg.lisp.

Target Slot

copyright.

Generic Function: cover (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: cover ((me mp4-file))
Method: cover ((me mp3-file))
Generic Reader: crc (object)
Package

id3.

Methods
Reader Method: crc ((id3-ext-header id3-ext-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

crc.

Generic Writer: (setf crc) (object)
Package

id3.

Methods
Writer Method: (setf crc) ((id3-ext-header id3-ext-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

crc.

Generic Reader: d-ref-idx (object)
Package

m4a.

Methods
Reader Method: d-ref-idx ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

d-ref-idx.

Generic Writer: (setf d-ref-idx) (object)
Package

m4a.

Methods
Writer Method: (setf d-ref-idx) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

d-ref-idx.

Generic Reader: data (object)
Package

id3.

Methods
Reader Method: data ((frame-apic frame-apic))

automatically generated reader method

Source

id3.lisp.

Target Slot

data.

Reader Method: data ((frame-pic frame-pic))

automatically generated reader method

Source

id3.lisp.

Target Slot

data.

Generic Writer: (setf data) (object)
Package

id3.

Methods
Writer Method: (setf data) ((frame-apic frame-apic))

automatically generated writer method

Source

id3.lisp.

Target Slot

data.

Writer Method: (setf data) ((frame-pic frame-pic))

automatically generated writer method

Source

id3.lisp.

Target Slot

data.

Generic Function: disk (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: disk ((me flac-file))
Method: disk ((me mp4-file))
Method: disk ((me mp3-file))
Generic Reader: duration (object)
Package

m4a.

Methods
Reader Method: duration ((atom-mdhd atom-mdhd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

duration.

Generic Writer: (setf duration) (object)
Package

m4a.

Methods
Writer Method: (setf duration) ((atom-mdhd atom-mdhd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

duration.

Generic Reader: emphasis (object)
Package

mpeg.

Methods
Reader Method: emphasis ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

emphasis.

Generic Writer: (setf emphasis) (object)
Package

mpeg.

Methods
Writer Method: (setf emphasis) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

emphasis.

Generic Reader: esid (object)
Package

m4a.

Methods
Reader Method: esid ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

esid.

Generic Writer: (setf esid) (object)
Package

m4a.

Methods
Writer Method: (setf esid) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

esid.

Generic Reader: ext-header (object)
Generic Writer: (setf ext-header) (object)
Package

id3.

Methods
Reader Method: ext-header ((id3-header id3-header))
Writer Method: (setf ext-header) ((id3-header id3-header))

holds v2.3/4 extended header

Source

id3.lisp.

Target Slot

ext-header.

Generic Function: flac-add-tag (me new-tag new-val)
Package

flac.

Methods
Method: flac-add-tag ((me flac-tags) new-tag new-val)
Source

flac.lisp.

Generic Reader: flags (object)
Package

mpeg.

Methods
Reader Method: flags ((vbr-info vbr-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

flags.

Generic Writer: (setf flags) (object)
Package

mpeg.

Methods
Writer Method: (setf flags) ((vbr-info vbr-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

flags.

Generic Reader: flags (object)
Package

id3.

Methods
Reader Method: flags ((id3-frame id3-frame))

the frame’s flags

Source

id3.lisp.

Target Slot

flags.

Reader Method: flags ((id3-ext-header id3-ext-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

flags.

Reader Method: flags ((id3-header id3-header))

ID3 header flags

Source

id3.lisp.

Target Slot

flags.

Generic Writer: (setf flags) (object)
Package

id3.

Methods
Writer Method: (setf flags) ((id3-frame id3-frame))

the frame’s flags

Source

id3.lisp.

Target Slot

flags.

Writer Method: (setf flags) ((id3-ext-header id3-ext-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

flags.

Writer Method: (setf flags) ((id3-header id3-header))

ID3 header flags

Source

id3.lisp.

Target Slot

flags.

Generic Reader: flags (object)
Package

m4a.

Methods
Reader Method: flags ((atom-meta atom-meta))

automatically generated reader method

Source

m4a.lisp.

Target Slot

flags.

Reader Method: flags ((atom-stsd atom-stsd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

flags.

Reader Method: flags ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

flags.

Reader Method: flags ((atom-mdhd atom-mdhd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

flags.

Reader Method: flags ((atom-hdlr atom-hdlr))

automatically generated reader method

Source

m4a.lisp.

Target Slot

flags.

Reader Method: flags ((atom-dref atom-dref))

automatically generated reader method

Source

m4a.lisp.

Target Slot

flags.

Generic Writer: (setf flags) (object)
Package

m4a.

Methods
Writer Method: (setf flags) ((atom-meta atom-meta))

automatically generated writer method

Source

m4a.lisp.

Target Slot

flags.

Writer Method: (setf flags) ((atom-stsd atom-stsd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

flags.

Writer Method: (setf flags) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

flags.

Writer Method: (setf flags) ((atom-mdhd atom-mdhd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

flags.

Writer Method: (setf flags) ((atom-hdlr atom-hdlr))

automatically generated writer method

Source

m4a.lisp.

Target Slot

flags.

Writer Method: (setf flags) ((atom-dref atom-dref))

automatically generated writer method

Source

m4a.lisp.

Target Slot

flags.

Generic Reader: frames (object)
Package

mpeg.

Methods
Reader Method: frames ((vbr-info vbr-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

frames.

Generic Writer: (setf frames) (object)
Package

mpeg.

Methods
Writer Method: (setf frames) ((vbr-info vbr-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

frames.

Generic Function: genre (stream)
Package

abstract-tag.

Source

abstract-tag.lisp.

Methods
Method: genre ((me flac-file))
Method: genre ((me mp4-file))
Method: genre ((me mp3-file))
Generic Reader: hdr-u32 (object)
Package

mpeg.

Methods
Reader Method: hdr-u32 ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

hdr-u32.

Generic Writer: (setf hdr-u32) (object)
Package

mpeg.

Methods
Writer Method: (setf hdr-u32) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

hdr-u32.

Generic Reader: header-len (object)
Generic Writer: (setf header-len) (object)
Package

flac.

Methods
Reader Method: header-len ((flac-header flac-header))
Writer Method: (setf header-len) ((flac-header flac-header))

how long the info associated w/header is

Source

flac.lisp.

Target Slot

header-len.

Generic Reader: header-type (object)
Generic Writer: (setf header-type) (object)
Package

flac.

Methods
Reader Method: header-type ((flac-header flac-header))
Writer Method: (setf header-type) ((flac-header flac-header))

one of the flac header types above

Source

flac.lisp.

Target Slot

header-type.

Generic Reader: img-format (object)
Package

id3.

Methods
Reader Method: img-format ((frame-pic frame-pic))

automatically generated reader method

Source

id3.lisp.

Target Slot

img-format.

Generic Writer: (setf img-format) (object)
Package

id3.

Methods
Writer Method: (setf img-format) ((frame-pic frame-pic))

automatically generated writer method

Source

id3.lisp.

Target Slot

img-format.

Generic Reader: is-update (object)
Package

id3.

Methods
Reader Method: is-update ((id3-ext-header id3-ext-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

is-update.

Generic Writer: (setf is-update) (object)
Package

id3.

Methods
Writer Method: (setf is-update) ((id3-ext-header id3-ext-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

is-update.

Generic Reader: is-vbr (object)
Package

mpeg.

Methods
Reader Method: is-vbr ((mpeg-audio-info mpeg-audio-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

is-vbr.

Generic Writer: (setf is-vbr) (object)
Package

mpeg.

Methods
Writer Method: (setf is-vbr) ((mpeg-audio-info mpeg-audio-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

is-vbr.

Generic Reader: lang (object)
Package

m4a.

Methods
Reader Method: lang ((atom-mdhd atom-mdhd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

lang.

Generic Writer: (setf lang) (object)
Package

m4a.

Methods
Writer Method: (setf lang) ((atom-mdhd atom-mdhd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

lang.

Generic Reader: last-bit (object)
Generic Writer: (setf last-bit) (object)
Package

flac.

Methods
Reader Method: last-bit ((flac-header flac-header))
Writer Method: (setf last-bit) ((flac-header flac-header))

if set, this is the last flac header in file

Source

flac.lisp.

Target Slot

last-bit.

Generic Reader: layer (object)
Package

mpeg.

Methods
Reader Method: layer ((mpeg-audio-info mpeg-audio-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

layer.

Reader Method: layer ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

layer.

Generic Writer: (setf layer) (object)
Package

mpeg.

Methods
Writer Method: (setf layer) ((mpeg-audio-info mpeg-audio-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

layer.

Writer Method: (setf layer) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

layer.

Generic Reader: len (object)
Package

mpeg.

Methods
Reader Method: len ((mpeg-audio-info mpeg-audio-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

len.

Generic Writer: (setf len) (object)
Package

mpeg.

Methods
Writer Method: (setf len) ((mpeg-audio-info mpeg-audio-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

len.

Generic Reader: len (object)
Generic Writer: (setf len) (object)
Package

id3.

Methods
Reader Method: len ((id3-frame id3-frame))
Writer Method: (setf len) ((id3-frame id3-frame))

the length of this frame

Source

id3.lisp.

Target Slot

len.

Generic Function: load-frame (me &key instream read-payload)
Package

mpeg.

Methods
Method: load-frame ((me frame) &key instream read-payload)

Load an MPEG frame from current file position. If READ-PAYLOAD is set, read in frame’s content.

Source

mpeg.lisp.

Generic Reader: m-time (object)
Package

m4a.

Methods
Reader Method: m-time ((atom-mdhd atom-mdhd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

m-time.

Generic Writer: (setf m-time) (object)
Package

m4a.

Methods
Writer Method: (setf m-time) ((atom-mdhd atom-mdhd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

m-time.

Generic Reader: max-bit-rate (object)
Package

m4a.

Methods
Reader Method: max-bit-rate ((audio-info audio-info))

automatically generated reader method

Source

m4a.lisp.

Target Slot

max-bit-rate.

Reader Method: max-bit-rate ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

max-bit-rate.

Generic Writer: (setf max-bit-rate) (object)
Package

m4a.

Methods
Writer Method: (setf max-bit-rate) ((audio-info audio-info))

automatically generated writer method

Source

m4a.lisp.

Target Slot

max-bit-rate.

Writer Method: (setf max-bit-rate) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

max-bit-rate.

Generic Reader: max-block-size (object)
Package

flac.

Methods
Reader Method: max-block-size ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

max-block-size.

Generic Writer: (setf max-block-size) (object)
Package

flac.

Methods
Writer Method: (setf max-block-size) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

max-block-size.

Generic Reader: max-frame-size (object)
Package

flac.

Methods
Reader Method: max-frame-size ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

max-frame-size.

Generic Writer: (setf max-frame-size) (object)
Package

flac.

Methods
Writer Method: (setf max-frame-size) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

max-frame-size.

Generic Reader: md5-sig (object)
Package

flac.

Methods
Reader Method: md5-sig ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

md5-sig.

Generic Writer: (setf md5-sig) (object)
Package

flac.

Methods
Writer Method: (setf md5-sig) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

md5-sig.

Generic Reader: mhdlr (object)
Package

m4a.

Methods
Reader Method: mhdlr ((atom-hdlr atom-hdlr))

automatically generated reader method

Source

m4a.lisp.

Target Slot

mhdlr.

Generic Writer: (setf mhdlr) (object)
Package

m4a.

Methods
Writer Method: (setf mhdlr) ((atom-hdlr atom-hdlr))

automatically generated writer method

Source

m4a.lisp.

Target Slot

mhdlr.

Generic Reader: mime (object)
Package

id3.

Methods
Reader Method: mime ((frame-apic frame-apic))

automatically generated reader method

Source

id3.lisp.

Target Slot

mime.

Generic Writer: (setf mime) (object)
Package

id3.

Methods
Writer Method: (setf mime) ((frame-apic frame-apic))

automatically generated writer method

Source

id3.lisp.

Target Slot

mime.

Generic Reader: min-block-size (object)
Package

flac.

Methods
Reader Method: min-block-size ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

min-block-size.

Generic Writer: (setf min-block-size) (object)
Package

flac.

Methods
Writer Method: (setf min-block-size) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

min-block-size.

Generic Reader: min-frame-size (object)
Package

flac.

Methods
Reader Method: min-frame-size ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

min-frame-size.

Generic Writer: (setf min-frame-size) (object)
Package

flac.

Methods
Writer Method: (setf min-frame-size) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

min-frame-size.

Generic Reader: mode-extension (object)
Package

mpeg.

Methods
Reader Method: mode-extension ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

mode-extension.

Generic Writer: (setf mode-extension) (object)
Package

mpeg.

Methods
Writer Method: (setf mode-extension) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

mode-extension.

Generic Reader: mtype (object)
Package

m4a.

Methods
Reader Method: mtype ((atom-hdlr atom-hdlr))

automatically generated reader method

Source

m4a.lisp.

Target Slot

mtype.

Generic Writer: (setf mtype) (object)
Package

m4a.

Methods
Writer Method: (setf mtype) ((atom-hdlr atom-hdlr))

automatically generated writer method

Source

m4a.lisp.

Target Slot

mtype.

Generic Reader: n-frames (object)
Package

mpeg.

Methods
Reader Method: n-frames ((mpeg-audio-info mpeg-audio-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

n-frames.

Generic Writer: (setf n-frames) (object)
Package

mpeg.

Methods
Writer Method: (setf n-frames) ((mpeg-audio-info mpeg-audio-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

n-frames.

Generic Reader: name (object)
Package

id3.

Methods
Reader Method: name ((frame-ufid frame-ufid))

automatically generated reader method

Source

id3.lisp.

Target Slot

name.

Reader Method: name ((frame-priv frame-priv))

automatically generated reader method

Source

id3.lisp.

Target Slot

name.

Reader Method: name ((frame-ufi frame-ufi))

automatically generated reader method

Source

id3.lisp.

Target Slot

name.

Generic Writer: (setf name) (object)
Package

id3.

Methods
Writer Method: (setf name) ((frame-ufid frame-ufid))

automatically generated writer method

Source

id3.lisp.

Target Slot

name.

Writer Method: (setf name) ((frame-priv frame-priv))

automatically generated writer method

Source

id3.lisp.

Target Slot

name.

Writer Method: (setf name) ((frame-ufi frame-ufi))

automatically generated writer method

Source

id3.lisp.

Target Slot

name.

Generic Function: next-frame (me &key instream read-payload)
Package

mpeg.

Methods
Method: next-frame ((me frame) &key instream read-payload)

Get next frame. If READ-PAYLOAD is true, read in contents for frame, else, seek to next frame header.

Source

mpeg.lisp.

Generic Reader: num-channels (object)
Package

flac.

Methods
Reader Method: num-channels ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

num-channels.

Generic Writer: (setf num-channels) (object)
Package

flac.

Methods
Writer Method: (setf num-channels) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

num-channels.

Generic Reader: num-chans (object)
Package

m4a.

Methods
Reader Method: num-chans ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

num-chans.

Generic Writer: (setf num-chans) (object)
Package

m4a.

Methods
Writer Method: (setf num-chans) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

num-chans.

Generic Reader: num-entries (object)
Package

m4a.

Methods
Reader Method: num-entries ((atom-stsd atom-stsd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

num-entries.

Reader Method: num-entries ((atom-dref atom-dref))

automatically generated reader method

Source

m4a.lisp.

Target Slot

num-entries.

Generic Writer: (setf num-entries) (object)
Package

m4a.

Methods
Writer Method: (setf num-entries) ((atom-stsd atom-stsd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

num-entries.

Writer Method: (setf num-entries) ((atom-dref atom-dref))

automatically generated writer method

Source

m4a.lisp.

Target Slot

num-entries.

Generic Reader: obj-id (object)
Package

m4a.

Methods
Reader Method: obj-id ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

obj-id.

Generic Writer: (setf obj-id) (object)
Package

m4a.

Methods
Writer Method: (setf obj-id) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

obj-id.

Generic Reader: original (object)
Package

mpeg.

Methods
Reader Method: original ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

original.

Generic Writer: (setf original) (object)
Package

mpeg.

Methods
Writer Method: (setf original) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

original.

Generic Reader: packet-size (object)
Package

m4a.

Methods
Reader Method: packet-size ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

packet-size.

Generic Writer: (setf packet-size) (object)
Package

m4a.

Methods
Writer Method: (setf packet-size) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

packet-size.

Generic Reader: padded (object)
Package

mpeg.

Methods
Reader Method: padded ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

padded.

Generic Writer: (setf padded) (object)
Package

mpeg.

Methods
Writer Method: (setf padded) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

padded.

Generic Reader: padding (object)
Package

id3.

Methods
Reader Method: padding ((id3-ext-header id3-ext-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

padding.

Generic Writer: (setf padding) (object)
Package

id3.

Methods
Writer Method: (setf padding) ((id3-ext-header id3-ext-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

padding.

Generic Reader: padding-size (object)
Generic Writer: (setf padding-size) (object)
Package

id3.

Methods
Reader Method: padding-size ((id3-header id3-header))
Writer Method: (setf padding-size) ((id3-header id3-header))

padding size in tags

Source

id3.lisp.

Target Slot

padding-size.

Generic Function: parse-header (me)
Package

mpeg.

Methods
Method: parse-header ((me frame))

Given a frame, verify that is a valid MPEG audio frame by examining the header. A header looks like this:
Bits 31-21 (11 bits): the sync word. Must be #xffe (NB version 2.5 standard) Bits 20-19 (2 bits): the version
Bits 18-17 (2 bits): the layer
Bit 16 (1 bit ): the protection bit
Bits 15-12 (4 bits): the bit-rate index
Bits 11-10 (2 bits): the sample-rate index
Bit 9 (1 bit ): the padding bit
Bit 8 (1 bit ): the private bit
Bits 7-6 (2 bits): the channel mode
Bits 5-4 (2 bits): the mode extension
Bit 3 (1 bit ): the copyright bit
Bit 2 (1 bit ): the original bit
Bits 1-0 (2 bits): the emphasis

Source

mpeg.lisp.

Generic Reader: payload (object)
Package

mpeg.

Methods
Reader Method: payload ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

payload.

Generic Writer: (setf payload) (object)
Package

mpeg.

Methods
Writer Method: (setf payload) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

payload.

Generic Reader: play-count (object)
Package

id3.

Methods
Reader Method: play-count ((frame-pcnt frame-pcnt))

automatically generated reader method

Source

id3.lisp.

Target Slot

play-count.

Generic Writer: (setf play-count) (object)
Package

id3.

Methods
Writer Method: (setf play-count) ((frame-pcnt frame-pcnt))

automatically generated writer method

Source

id3.lisp.

Target Slot

play-count.

Generic Reader: pos (object)
Package

mpeg.

Methods
Reader Method: pos ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

pos.

Generic Writer: (setf pos) (object)
Package

mpeg.

Methods
Writer Method: (setf pos) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

pos.

Generic Reader: pos (object)
Generic Writer: (setf pos) (object)
Package

id3.

Methods
Reader Method: pos ((id3-frame id3-frame))
Writer Method: (setf pos) ((id3-frame id3-frame))

the offset in the buffer were this frame was found

Source

id3.lisp.

Target Slot

pos.

Generic Reader: pos (object)
Generic Writer: (setf pos) (object)
Package

flac.

Methods
Reader Method: pos ((flac-header flac-header))
Writer Method: (setf pos) ((flac-header flac-header))

file location of this flac header

Source

flac.lisp.

Target Slot

pos.

Generic Reader: private (object)
Package

mpeg.

Methods
Reader Method: private ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

private.

Generic Writer: (setf private) (object)
Package

mpeg.

Methods
Writer Method: (setf private) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

private.

Generic Reader: protection (object)
Package

mpeg.

Methods
Reader Method: protection ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

protection.

Generic Writer: (setf protection) (object)
Package

mpeg.

Methods
Writer Method: (setf protection) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

protection.

Generic Reader: ptype (object)
Package

id3.

Methods
Reader Method: ptype ((frame-apic frame-apic))

automatically generated reader method

Source

id3.lisp.

Target Slot

ptype.

Reader Method: ptype ((frame-pic frame-pic))

automatically generated reader method

Source

id3.lisp.

Target Slot

ptype.

Generic Writer: (setf ptype) (object)
Package

id3.

Methods
Writer Method: (setf ptype) ((frame-apic frame-apic))

automatically generated writer method

Source

id3.lisp.

Target Slot

ptype.

Writer Method: (setf ptype) ((frame-pic frame-pic))

automatically generated writer method

Source

id3.lisp.

Target Slot

ptype.

Generic Reader: qtype (object)
Package

m4a.

Methods
Reader Method: qtype ((atom-hdlr atom-hdlr))

automatically generated reader method

Source

m4a.lisp.

Target Slot

qtype.

Generic Writer: (setf qtype) (object)
Package

m4a.

Methods
Writer Method: (setf qtype) ((atom-hdlr atom-hdlr))

automatically generated writer method

Source

m4a.lisp.

Target Slot

qtype.

Generic Reader: quality (object)
Package

m4a.

Methods
Reader Method: quality ((atom-mdhd atom-mdhd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

quality.

Generic Writer: (setf quality) (object)
Package

m4a.

Methods
Writer Method: (setf quality) ((atom-mdhd atom-mdhd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

quality.

Generic Reader: reserved (object)
Package

m4a.

Methods
Reader Method: reserved ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

reserved.

Generic Writer: (setf reserved) (object)
Package

m4a.

Methods
Writer Method: (setf reserved) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

reserved.

Generic Reader: restrictions (object)
Package

id3.

Methods
Reader Method: restrictions ((id3-ext-header id3-ext-header))

automatically generated reader method

Source

id3.lisp.

Target Slot

restrictions.

Generic Writer: (setf restrictions) (object)
Package

id3.

Methods
Writer Method: (setf restrictions) ((id3-ext-header id3-ext-header))

automatically generated writer method

Source

id3.lisp.

Target Slot

restrictions.

Generic Reader: resv (object)
Package

m4a.

Methods
Reader Method: resv ((atom-hdlr atom-hdlr))

automatically generated reader method

Source

m4a.lisp.

Target Slot

resv.

Generic Writer: (setf resv) (object)
Package

m4a.

Methods
Writer Method: (setf resv) ((atom-hdlr atom-hdlr))

automatically generated writer method

Source

m4a.lisp.

Target Slot

resv.

Generic Reader: revision (object)
Generic Writer: (setf revision) (object)
Package

id3.

Methods
Reader Method: revision ((id3-header id3-header))
Writer Method: (setf revision) ((id3-header id3-header))

ID3 revision—is this ever non-zero?

Source

id3.lisp.

Target Slot

revision.

Generic Reader: revision (object)
Package

m4a.

Methods
Reader Method: revision ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

revision.

Generic Writer: (setf revision) (object)
Package

m4a.

Methods
Writer Method: (setf revision) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

revision.

Generic Reader: rflag (object)
Package

m4a.

Methods
Reader Method: rflag ((atom-hdlr atom-hdlr))

automatically generated reader method

Source

m4a.lisp.

Target Slot

rflag.

Generic Writer: (setf rflag) (object)
Package

m4a.

Methods
Writer Method: (setf rflag) ((atom-hdlr atom-hdlr))

automatically generated writer method

Source

m4a.lisp.

Target Slot

rflag.

Generic Reader: rmask (object)
Package

m4a.

Methods
Reader Method: rmask ((atom-hdlr atom-hdlr))

automatically generated reader method

Source

m4a.lisp.

Target Slot

rmask.

Generic Writer: (setf rmask) (object)
Package

m4a.

Methods
Writer Method: (setf rmask) ((atom-hdlr atom-hdlr))

automatically generated writer method

Source

m4a.lisp.

Target Slot

rmask.

Generic Reader: s-priority (object)
Package

m4a.

Methods
Reader Method: s-priority ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

s-priority.

Generic Writer: (setf s-priority) (object)
Package

m4a.

Methods
Writer Method: (setf s-priority) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

s-priority.

Generic Reader: s-type (object)
Package

m4a.

Methods
Reader Method: s-type ((atom-esds atom-esds))

automatically generated reader method

Source

m4a.lisp.

Target Slot

s-type.

Generic Writer: (setf s-type) (object)
Package

m4a.

Methods
Writer Method: (setf s-type) ((atom-esds atom-esds))

automatically generated writer method

Source

m4a.lisp.

Target Slot

s-type.

Generic Reader: samp-rate (object)
Package

m4a.

Methods
Reader Method: samp-rate ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

samp-rate.

Generic Writer: (setf samp-rate) (object)
Package

m4a.

Methods
Writer Method: (setf samp-rate) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

samp-rate.

Generic Reader: samp-size (object)
Package

m4a.

Methods
Reader Method: samp-size ((atom-mp4a atom-mp4a))

automatically generated reader method

Source

m4a.lisp.

Target Slot

samp-size.

Generic Writer: (setf samp-size) (object)
Package

m4a.

Methods
Writer Method: (setf samp-size) ((atom-mp4a atom-mp4a))

automatically generated writer method

Source

m4a.lisp.

Target Slot

samp-size.

Generic Reader: sample-rate (object)
Package

mpeg.

Methods
Reader Method: sample-rate ((mpeg-audio-info mpeg-audio-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

sample-rate.

Reader Method: sample-rate ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

sample-rate.

Generic Writer: (setf sample-rate) (object)
Package

mpeg.

Methods
Writer Method: (setf sample-rate) ((mpeg-audio-info mpeg-audio-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

sample-rate.

Writer Method: (setf sample-rate) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

sample-rate.

Generic Reader: sample-rate (object)
Package

m4a.

Methods
Reader Method: sample-rate ((audio-info audio-info))

automatically generated reader method

Source

m4a.lisp.

Target Slot

sample-rate.

Generic Writer: (setf sample-rate) (object)
Package

m4a.

Methods
Writer Method: (setf sample-rate) ((audio-info audio-info))

automatically generated writer method

Source

m4a.lisp.

Target Slot

sample-rate.

Generic Reader: sample-rate (object)
Package

flac.

Methods
Reader Method: sample-rate ((flac-audio-properties flac-audio-properties))

automatically generated reader method

Source

flac.lisp.

Target Slot

sample-rate.

Generic Writer: (setf sample-rate) (object)
Package

flac.

Methods
Writer Method: (setf sample-rate) ((flac-audio-properties flac-audio-properties))

automatically generated writer method

Source

flac.lisp.

Target Slot

sample-rate.

Generic Reader: samples (object)
Package

mpeg.

Methods
Reader Method: samples ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

samples.

Generic Writer: (setf samples) (object)
Package

mpeg.

Methods
Writer Method: (setf samples) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

samples.

Generic Reader: scale (object)
Package

mpeg.

Methods
Reader Method: scale ((vbr-info vbr-info))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

scale.

Generic Writer: (setf scale) (object)
Package

mpeg.

Methods
Writer Method: (setf scale) ((vbr-info vbr-info))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

scale.

Generic Reader: scale (object)
Package

m4a.

Methods
Reader Method: scale ((atom-mdhd atom-mdhd))

automatically generated reader method

Source

m4a.lisp.

Target Slot

scale.

Generic Writer: (setf scale) (object)
Package

m4a.

Methods
Writer Method: (setf scale) ((atom-mdhd atom-mdhd))

automatically generated writer method

Source

m4a.lisp.

Target Slot

scale.

Generic Reader: seconds (object)
Package

m4a.

Methods
Reader Method: seconds ((audio-info audio-info))

automatically generated reader method

Source

m4a.lisp.

Target Slot

seconds.

Generic Writer: (setf seconds) (object)
Package

m4a.

Methods
Writer Method: (setf seconds) ((audio-info audio-info))

automatically generated writer method

Source

m4a.lisp.

Target Slot

seconds.

Generic Reader: size (object)
Package

mpeg.

Methods
Reader Method: size ((frame frame))

automatically generated reader method

Source

mpeg.lisp.

Target Slot

size.

Generic Writer: (setf size) (object)
Package

mpeg.

Methods
Writer Method: (setf size) ((frame frame))

automatically generated writer method

Source

mpeg.lisp.

Target Slot

size.