VBR mp3s handled correctly.
[amarok_sonynw.git] / walkgirl / walkgirl.rb
blob1490b478e9fd463aac3f13865bfe43b1f3ea5f28
1 #!/usr/bin/env ruby
3 require 'Walkman'
5 device = ARGV[0]
7 db = Walkman::Db.new
9 IMPORTANT_TAGS = [ 'ARTIST', 'TITLE', 'ALBUM', 'CONTENTTYPE' ]
11 Dir[File.join([device, "omgaudio", "10f*"])].sort.each do |dir|
12   Dir[File.join([dir, "*.oma"])].sort.each do |file|
13     slot = file.match("1([0-9a-f]{7})\.")[1].hex
14     oma = begin
15       Walkman::Oma.new(slot).read(file)
16     rescue
17       nil
18     end
19     db << oma if oma
20   end
21 end
23 File.new(File.join([device, "omgaudio", "04cntinf.dat"]), 'w+') << db.cnt
24 db.collections.each do |_, col|
25   col.files.each do |filename, file|
26     File.new(File.join([device, "omgaudio", filename]), 'w+') << file
27   end
28 end