require "musicbrainz"
require "yaml"
require "ostruct"
-#require "glib2"
+require 'iconv'
require "tempfile"
class Track
end
end
+def locale_from_utf8(s)
+ # FIXME: Encoding is only available in Ruby 1.9
+ to_charset = Encoding.locale_charmap
+ utf8 = 'UTF-8'.freeze
+
+ if to_charset == utf8
+ s.dup
+ else
+ Iconv.iconv to_charset, utf8, s
+ end
+end
+
cfg_file = ARGV.first || File.expand_path("~/.rbrip.yaml")
begin
Tracks:\n"
album.tracks.each_with_index do |t, i|
- #tmp = GLib.locale_from_utf8(t.name)
- tmp = t.name
+ tmp = locale_from_utf8 t.name
puts "%3s." % (i + 1) + " #{tmp}"
end
puts "Ripping: #{track_no}. #{t.name} => #{file + enc.suffix}"
`#{rip_cmd} | #{encode_cmd}`
- apltags = enc.apply_tags(file + enc.suffix, metadata)
puts "Applying tags..."
- `#{apltags} > /dev/null`
+ enc.apply_tags(file + enc.suffix, metadata)
end
rplgain_cmd = enc.compute_replaygain(files)