MP3ファイルの曲目とかを設定
僕のMP3ファイル生成環境は、上のような状況でabcdeが最有力候補なんだけど、ここしばらくは以下のスクリプトでMP3ファイルに曲名とかを入れていた。このまま埋もらせるのも何なので日記に貼っておこうと思う。
id3lib(の中に入っているid3tag)が必要なので事前にインストールしておく。CDDBで勝手に情報を持ってこないので自分でリストを作成しなきゃダメ。
mp3tag
#!/usr/bin/env ruby # -*- ruby -*- # $Id: mp3tag,v 1.2 2005/04/24 10:09:48 s-tanaka Exp $ # require 'kconv' if ARGV.size < 1 puts 'mp3tag [list filename] [mp3 files...]' exit end lines = nil open(ARGV.shift, 'r') do |file| lines = Kconv.tosjis(file.read).split(/\r?\n/) lines.reject! {|line| line =~ /^#/ } lines.collect! {|line| line.chomp } end album = lines.shift artist = lines.shift titles = lines i = 0 ARGV.each do |arg| pid = fork do exec('id3tag', '-a' + artist, '-A' + album, '-s' + titles[i], arg) end Process.waitpid(pid) i += 1 end
設定ファイル(ファイル名をlistとする)をこんな感じで用意して、
# Album 口笛とウクレレ # Artist 関口和之 featuring 竹中直人 # Titles BITTERSWEET SAMBA 雨にぬれても MOON RIVER LOVE 私の青空 慕情
実行する。MP3ファイルは、曲順に並べて指定する必要がある。
$ ls kutibue_to_ukulele_01.mp3 kutibue_to_ukulele_05.mp3 kutibue_to_ukulele_02.mp3 kutibue_to_ukulele_06.mp3 kutibue_to_ukulele_03.mp3 list kutibue_to_ukulele_04.mp3 $ mp3tag list *.mp3
これまた手抜きスクリプトだ。ろくにエラー処理してないし、設定ファイルの解析まわりのコードもださすぎ。
折角の紹介 & 日本語対応なのに、こんなことしててすみません…‥ > いわたさん