Class: Flacky::FlacMetadataImporter
- Inherits:
-
Object
- Object
- Flacky::FlacMetadataImporter
- Defined in:
- lib/flacky/flac_metadata_importer.rb
Defined Under Namespace
Classes: Response
Instance Method Summary collapse
- #import! ⇒ Object
-
#initialize(file) ⇒ FlacMetadataImporter
constructor
A new instance of FlacMetadataImporter.
Constructor Details
#initialize(file) ⇒ FlacMetadataImporter
Returns a new instance of FlacMetadataImporter.
9 10 11 |
# File 'lib/flacky/flac_metadata_importer.rb', line 9 def initialize(file) @file = file end |
Instance Method Details
#import! ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/flacky/flac_metadata_importer.rb', line 13 def import! return Resonse.new(nil, 0) if ! File.exists?() md = JSON.parse(IO.read()) elapsed = Benchmark.measure do FlacTagger.update(@file) do trackn_good = self["TRACKNUMBER"] && self["TRACKNUMBER"].to_i > 0 discn_good = self["DISCNUMBER"] && self["DISCNUMBER"].to_i > 0 md_good = md["flac"] && md["flac"]["totaltracks"] \ && md["flac"]["totaltracks"].is_a?(Array) totaltracks = md["flac"]["totaltracks"][self["DISCNUMBER"].to_i - 1] %w{artist album genre style mood fileowner}.each do |t| tag(t, md["flac"][t]) if md["flac"] && md["flac"][t] end tag "DATE", md["flac"]["year"] if md["flac"]["year"] if trackn_good && discn_good && md_good tag('TOTALTRACKS', totaltracks.to_s) tag('TOTALDISCS', md["flac"]["totaltracks"].size.to_s) end end end Response.new(, elapsed.real) end |