Class: Playa::Track

Inherits:
Object
  • Object
show all
Defined in:
lib/playa/models/track.rb

Instance Method Summary collapse

Constructor Details

#initialize(file) ⇒ Track

Returns a new instance of Track.



3
4
5
# File 'lib/playa/models/track.rb', line 3

def initialize(file)
  @file = file
end

Instance Method Details

#albumObject



31
32
33
# File 'lib/playa/models/track.rb', line 31

def album
  id_tags.tag.album || ''
end

#artistObject



27
28
29
# File 'lib/playa/models/track.rb', line 27

def artist
  id_tags.tag.artist || ''
end

#attributesObject



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/playa/models/track.rb', line 7

def attributes
  {
    filename:     filename,
    title:        title,
    artist:       artist,
    album:        album,
    track_number: track_number,
    duration:     duration,
    bitrate:      bitrate
  }
end

#bitrateObject



43
44
45
# File 'lib/playa/models/track.rb', line 43

def bitrate
  id_tags.bitrate || 0
end

#durationObject



39
40
41
# File 'lib/playa/models/track.rb', line 39

def duration
  id_tags.length || 0
end

#filenameObject



19
20
21
# File 'lib/playa/models/track.rb', line 19

def filename
  id_tags.filename
end

#titleObject



23
24
25
# File 'lib/playa/models/track.rb', line 23

def title
  id_tags.tag.title || filename # TODO: this will include the path
end

#track_numberObject



35
36
37
# File 'lib/playa/models/track.rb', line 35

def track_number
  id_tags.tag.tracknum || 0
end