mp3file 1.0.2 → 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2119f169063ee7fef524f73f5f33d48364613fe3
4
- data.tar.gz: 578a75f86e87cbed2c70aac6d07c280dbea44521
3
+ metadata.gz: fe6010e6463c0bfe01c34dcc53081a9cd3ff0dd7
4
+ data.tar.gz: 88bcc7293fd8702980fb2344ef8d6e50457e7441
5
5
  SHA512:
6
- metadata.gz: 06fcdf71088ba3f8a05770983526abd1747253e13f71b2bcb903cb06096a705a53e25e1383c163a379c2ace0d3b666d547a4f20486c60c62e2578d0d33cb9d70
7
- data.tar.gz: 65c0862bc8457c720e44b9367b340d62ddb42b34e78f4cfb54a4274acc5c2701964cc99fa9b0741c414b9b62b63f5dc5f2e4d601c85834ad7699776f3aa5bf80
6
+ metadata.gz: b37617a0dabcc81bd28b4b1ee5c09bd472270792737fdc5298d20970063236a4afc635344a69730665085d518c0d8d42cfaefb211eb1dc73a20a5395301e1447
7
+ data.tar.gz: 76330c2fc6d7654a634732f88652d46309dbefd5a92ad354e7dcc9dc9595e4017d6f014314852d754fbcf28b321577184e173205f90ec7e77fbac1f94aec443d
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mp3file (1.0.2)
4
+ mp3file (1.0.3)
5
5
  bindata (~> 1.5.0)
6
6
 
7
7
  GEM
data/bin/mp3info CHANGED
@@ -72,6 +72,19 @@ ARGV.each do |file|
72
72
  end
73
73
  end
74
74
 
75
+ # frames = 0
76
+ # mp3.each_header do |offset, header2|
77
+ # frames += 1
78
+ # puts(" MPEG frame at #{offset} bytes:")
79
+ # puts(" #{header2.version} #{header2.layer}")
80
+ # puts(" Bitrate: #{header2.bitrate} bps Samplerate: #{header2.samplerate} Hz")
81
+ # puts(" Mode: #{header2.mode} Mode Extension: #{header2.mode_extension} Emphasis: #{header2.emphasis}")
82
+ # puts(" CRC: #{header2.has_crc} Padding: #{header2.has_padding}")
83
+ # puts(" Copyright: #{header2.copyright} Original: #{header2.original}")
84
+ # puts(" Samples: #{header2.samples} Frame size: #{header2.frame_size} Side bytes: #{header2.side_bytes}")
85
+ # end
86
+ # puts " Total Frames: #{frames}"
87
+
75
88
  puts
76
89
  rescue
77
90
  $stderr.puts("Exception reading MP3 file %s: %s (%p)\n\t%s" %
@@ -56,6 +56,22 @@ module Mp3file
56
56
  value_from_tags(:genre)
57
57
  end
58
58
 
59
+ def each_header
60
+ file = File.open(@file.path, "rb")
61
+ offset = @first_header_offset
62
+
63
+ file.seek(offset, IO::SEEK_SET)
64
+ while !file.eof?
65
+ header = MP3Header.new(file)
66
+ yield offset, header
67
+
68
+ offset = offset + header.frame_size
69
+ file.seek(offset, IO::SEEK_SET)
70
+ end
71
+
72
+ file.close
73
+ end
74
+
59
75
  private
60
76
 
61
77
  def value_from_tags(v1_field)
@@ -155,7 +171,7 @@ module Mp3file
155
171
  if @xing_header.frames && @xing_header.bytes
156
172
  @num_frames = @xing_header.frames
157
173
  @total_samples = @xing_header.frames * @first_header.samples
158
- @length = total_samples / @samplerate
174
+ @length = total_samples.to_f / @samplerate.to_f
159
175
  @bitrate = ((@xing_header.bytes.to_f / @length.to_f) * 8 / 1000).to_i
160
176
  end
161
177
  else
@@ -1,3 +1,3 @@
1
1
  module Mp3file
2
- VERSION = "1.0.2"
2
+ VERSION = "1.0.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mp3file
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Watts
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-19 00:00:00.000000000 Z
11
+ date: 2015-01-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec