wahwah 1.6.2 → 1.6.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b3a02fc03d0532cd3083005e42d0609cc56cec7648027367ba56fa13054538a7
4
- data.tar.gz: df4d540b3bd4a721e99efc02ba19e19f369c1ba58ac6e29c6ad84a22fa6adf34
3
+ metadata.gz: 6fed1451a524177200ca3ccdb13b6cc809fdc9f4913ed613f5cceb29ac316380
4
+ data.tar.gz: ab6aac50fa7b73c55843a722ac0e34cd77da57f5a2b968a4ccf9491c53196743
5
5
  SHA512:
6
- metadata.gz: 2ce069bbe3e5c1db3735f0aa5cb7de9be1de9f0755b8fdce90a163473039041da63351457149e674a61181840fbe0066032fc03b270c6fca030a3c39ee80b64b
7
- data.tar.gz: c7edf5a8987c8e54e46b521d3650fe84524dda3911e801ba85eb64ab4df4802e6ff43267b2fbca237924cf9eecc2948bd695e3f339cf48cf0f30eef213ee771c
6
+ metadata.gz: 70edb86e41aad8f729d186d6f90c54c2e834528b6a0b3570f8ff3b15270d87e12df906a9d2e14d57f70349efe975cb61074591d2f8787f64285b06b7eb1a3a2e
7
+ data.tar.gz: 1629bb5729a89dd1088d1b4601e549ed5b53a45fa5d25fe286b24aab760bb7b81da8f56476a90d39a66e6b883200d504a2c4c0270f170e7df89999fd20d3770d
@@ -44,7 +44,6 @@ module WahWah
44
44
  # This can often be usefully treated as a four-character field with a mnemonic value .
45
45
  def initialize
46
46
  @size, @type = @file_io.read(HEADER_SIZE)&.unpack("Na4")
47
- return unless valid?
48
47
 
49
48
  # If the size field of an atom is set to 1, the type field is followed by a 64-bit extended size field,
50
49
  # which contains the actual size of the atom as a 64-bit unsigned integer.
@@ -53,6 +52,8 @@ module WahWah
53
52
  # If the size field of an atom is set to 0, which is allowed only for a top-level atom,
54
53
  # designates the last atom in the file and indicates that the atom extends to the end of the file.
55
54
  @size = @file_io.size if @size == 0
55
+ return unless valid?
56
+
56
57
  @size -= HEADER_SIZE
57
58
  end
58
59
 
data/lib/wahwah/tag.rb CHANGED
@@ -3,29 +3,28 @@
3
3
  module WahWah
4
4
  class Tag
5
5
  INTEGER_ATTRIBUTES = %i[disc disc_total track track_total]
6
- INSPECT_ATTRIBUTES = %i[title artist album albumartist composer track track_total genre year disc disc_total]
6
+ INSPECT_ATTRIBUTES = %i[
7
+ title
8
+ artist
9
+ album
10
+ albumartist
11
+ composer
12
+ comments
13
+ track
14
+ track_total
15
+ genre
16
+ year
17
+ disc
18
+ disc_total
19
+ lyrics
20
+ duration
21
+ bitrate
22
+ sample_rate
23
+ bit_depth
24
+ file_size
25
+ ]
7
26
 
8
- attr_reader(
9
- :title,
10
- :artist,
11
- :album,
12
- :albumartist,
13
- :composer,
14
- :comments,
15
- :track,
16
- :track_total,
17
- :genre,
18
- :year,
19
- :disc,
20
- :disc_total,
21
- :lyrics,
22
- :duration,
23
- :bitrate,
24
- :sample_rate,
25
- :bit_depth,
26
- :file_size,
27
- :from_path
28
- )
27
+ attr_reader(*INSPECT_ATTRIBUTES)
29
28
 
30
29
  def initialize(io, from_path: false)
31
30
  @from_path = from_path
@@ -45,7 +44,7 @@ module WahWah
45
44
 
46
45
  def inspect
47
46
  inspect_id = ::Kernel.format "%x", (object_id * 2)
48
- inspect_attributes_values = INSPECT_ATTRIBUTES.map { |attr_name| "#{attr_name}=#{send(attr_name)}" }.join(" ")
47
+ inspect_attributes_values = INSPECT_ATTRIBUTES.map { |attr_name| "#{attr_name}: #{send(attr_name).inspect}" }.join(", ")
49
48
 
50
49
  "<#{self.class.name}:0x#{inspect_id} #{inspect_attributes_values}>"
51
50
  end
@@ -60,6 +59,8 @@ module WahWah
60
59
 
61
60
  private
62
61
 
62
+ attr_accessor :from_path
63
+
63
64
  def parse
64
65
  raise WahWahNotImplementedError, "The parse method is not implemented"
65
66
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module WahWah
4
- VERSION = "1.6.2"
4
+ VERSION = "1.6.3"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wahwah
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.2
4
+ version: 1.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - aidewoode
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-06-11 00:00:00.000000000 Z
11
+ date: 2024-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -175,7 +175,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
175
175
  - !ruby/object:Gem::Version
176
176
  version: '0'
177
177
  requirements: []
178
- rubygems_version: 3.3.27
178
+ rubygems_version: 3.4.19
179
179
  signing_key:
180
180
  specification_version: 4
181
181
  summary: Audio metadata reader ruby gem