mp3file 1.0.2 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/bin/mp3info +13 -0
- data/lib/mp3file/mp3_file.rb +17 -1
- data/lib/mp3file/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe6010e6463c0bfe01c34dcc53081a9cd3ff0dd7
|
4
|
+
data.tar.gz: 88bcc7293fd8702980fb2344ef8d6e50457e7441
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b37617a0dabcc81bd28b4b1ee5c09bd472270792737fdc5298d20970063236a4afc635344a69730665085d518c0d8d42cfaefb211eb1dc73a20a5395301e1447
|
7
|
+
data.tar.gz: 76330c2fc6d7654a634732f88652d46309dbefd5a92ad354e7dcc9dc9595e4017d6f014314852d754fbcf28b321577184e173205f90ec7e77fbac1f94aec443d
|
data/Gemfile.lock
CHANGED
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" %
|
data/lib/mp3file/mp3_file.rb
CHANGED
@@ -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
|
data/lib/mp3file/version.rb
CHANGED
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.
|
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:
|
11
|
+
date: 2015-01-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|