Forum: Ruby id3lib-ruby 0.1.0 (first release)

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Robin S. (Guest)
on 2006-04-25 00:07
(Received via mailing list)
Hi,

I'm glad to announce the first release of id3lib-ruby. It's a project I
started some time ago and thought someone else may find useful, so here
it is :)

http://id3lib-ruby.rubyforge.org/

== Description

id3lib-ruby provides a Ruby interface to the id3lib C++ library for
easily editing ID3 tags (v1 and v2) like with pyid3lib. Because the
extension is based on SWIG, already most of the features of id3lib are
implemented.

== Features

* Read and write ID3v1 or ID3v2 tags
* Simple interface for adding, changing and removing frames
* Quick access to common text frames like title and performer
* Custom data frames like attached picture (APIC)
* Pretty complete coverage of id3lib's features
* UTF-16 support

== Installation

Installation through Rubygems:

   gem install id3lib-ruby

Note that you need to have id3lib installed as id3lib-ruby is only a
wrapper library.

== Usage

   require 'rubygems'
   require 'id3lib'

   # Load a tag from a file
   tag = ID3Lib::Tag.new('talk.mp3')

   # Get and set text frames with convenience methods
   tag.title  #=> "Talk"
   tag.album = 'X&Y'
   tag.track = '5/13'

   # Tag is a subclass of Array and each frame is a Hash
   tag[0]
   #=> { :id => :TPE1, :textenc => 0, :text => "Coldplay" }

   # Get the number of frames
   tag.length  #=> 7

   # Remove all comment frames
   tag.delete_if{ |frame| frame[:id] == :COMM }

   # Add an attached picture frame
   cover = {
     :id          => :APIC,
     :mimetype    => 'image/jpeg',
     :picturetype => 3,
     :description => 'A pretty picture',
     :textenc     => 0,
     :data        => File.read('cover.jpg')
   }
   tag << cover

   # Last but not least, apply changes
   tag.update!

== Planned

* win32 binary gem (with id3lib included)


Cheers,
   Robin S.
Daniel S. (Guest)
on 2006-04-25 20:45
(Received via mailing list)
Thanks Robin, it looks great!


Cheers,
Daniel
This topic is locked and can not be replied to.