Source

cl-taglib / README.md

CL-Taglib

Simple CFFI bindings to (taglib)[http://taglib.github.com/]

Quick Examples

Reading file tags

(use-package :taglib)
(with-tag-file (file "07 - 17.mp3")
  (let ((tag (file-tag file))
        (audio (file-audioproperties file)))
    (values (list (tag-title tag)
                  (tag-artist tag)
                  (tag-album tag)
                  (tag-comment tag)
                  (tag-genre tag)
                  (tag-track tag)
                  (tag-year tag))
            (list (audio-length audio)
                  (audio-bitrate audio)
                  (audio-samplerate audio)
                  (audio-channels audio)))))
;;; result
("17" "Kings Of Leon" "Only By The Night" "Sample Commment"
      "Alternative Rock" 7 2008)
(185 247 44100 2)

Setting tags

(use-package :taglib)
(with-tag-file (file "turtles.mp3")
       (let ((tag (file-tag file)))
         (setf (tag-comment tag) "turtles all the way down")
         (file-save file)))