lame 0.0.4 → 0.0.5
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 +5 -5
- data/.github/workflows/ci.yml +47 -0
- data/README.md +1 -3
- data/docs/lame-3.101.h +1357 -0
- data/lame.gemspec +2 -1
- data/lib/lame/encoding/interleaved_int_buffer_encoder.rb +15 -0
- data/lib/lame/ffi/functions.rb +99 -38
- data/lib/lame/version.rb +1 -1
- data/lib/lame.rb +1 -0
- data/spec/encoding/interleaved_buffer_encoder_spec.rb +7 -0
- data/spec/ffi/global_flags_spec.rb +13 -9
- data/spec/ffi/id3tag_spec.rb +2 -2
- data/spec/spec_helper.rb +14 -9
- metadata +43 -30
data/lame.gemspec
CHANGED
|
@@ -24,5 +24,6 @@ Gem::Specification.new do |gem|
|
|
|
24
24
|
gem.add_development_dependency "pry"
|
|
25
25
|
gem.add_development_dependency "wavefile"
|
|
26
26
|
gem.add_development_dependency "ruby-mp3info"
|
|
27
|
-
gem.add_development_dependency "
|
|
27
|
+
gem.add_development_dependency "simplecov", "~> 0.22"
|
|
28
|
+
gem.add_development_dependency "simplecov-lcov", "~> 0.8"
|
|
28
29
|
end
|
data/lib/lame/ffi/functions.rb
CHANGED
|
@@ -75,22 +75,22 @@ module LAME
|
|
|
75
75
|
attach_function :lame_get_strict_ISO, [:global_flags], :int
|
|
76
76
|
|
|
77
77
|
# quantization/noise shaping
|
|
78
|
-
attach_function :lame_set_disable_reservoir,
|
|
79
|
-
attach_function :lame_get_disable_reservoir,
|
|
80
|
-
attach_function :lame_set_quant_comp,
|
|
81
|
-
attach_function :lame_get_quant_comp,
|
|
82
|
-
attach_function :lame_set_quant_comp_short,
|
|
83
|
-
attach_function :lame_get_quant_comp_short,
|
|
84
|
-
attach_function :lame_set_experimentalX,
|
|
85
|
-
attach_function :lame_get_experimentalX,
|
|
86
|
-
attach_function :lame_set_experimentalY,
|
|
87
|
-
attach_function :lame_get_experimentalY,
|
|
88
|
-
attach_function :lame_set_experimentalZ,
|
|
89
|
-
attach_function :lame_get_experimentalZ,
|
|
90
|
-
attach_function :lame_set_exp_nspsytune,
|
|
91
|
-
attach_function :lame_get_exp_nspsytune,
|
|
92
|
-
attach_function :lame_set_msfix,
|
|
93
|
-
attach_function :lame_get_msfix,
|
|
78
|
+
attach_function :lame_set_disable_reservoir, [:global_flags, :int], :int
|
|
79
|
+
attach_function :lame_get_disable_reservoir, [:global_flags], :int
|
|
80
|
+
attach_function :lame_set_quant_comp, [:global_flags, :int], :int
|
|
81
|
+
attach_function :lame_get_quant_comp, [:global_flags], :int
|
|
82
|
+
attach_function :lame_set_quant_comp_short, [:global_flags, :int], :int
|
|
83
|
+
attach_function :lame_get_quant_comp_short, [:global_flags], :int
|
|
84
|
+
attach_function :lame_set_experimentalX, [:global_flags, :int], :int
|
|
85
|
+
attach_function :lame_get_experimentalX, [:global_flags], :int
|
|
86
|
+
attach_function :lame_set_experimentalY, [:global_flags, :int], :int
|
|
87
|
+
attach_function :lame_get_experimentalY, [:global_flags], :int
|
|
88
|
+
attach_function :lame_set_experimentalZ, [:global_flags, :int], :int
|
|
89
|
+
attach_function :lame_get_experimentalZ, [:global_flags], :int
|
|
90
|
+
attach_function :lame_set_exp_nspsytune, [:global_flags, :int], :int
|
|
91
|
+
attach_function :lame_get_exp_nspsytune, [:global_flags], :int
|
|
92
|
+
attach_function :native_lame_set_msfix, :lame_set_msfix, [:global_flags, :double], :void
|
|
93
|
+
attach_function :lame_get_msfix, [:global_flags], :float
|
|
94
94
|
|
|
95
95
|
# VBR
|
|
96
96
|
attach_function :lame_set_VBR, [:global_flags, :vbr_mode], :int
|
|
@@ -174,7 +174,7 @@ module LAME
|
|
|
174
174
|
attach_function :get_lame_url, [], :string
|
|
175
175
|
attach_function :get_lame_os_bitness, [], :string
|
|
176
176
|
|
|
177
|
-
attach_function :get_lame_version_numerical, [:global_flags],
|
|
177
|
+
attach_function :get_lame_version_numerical, [:global_flags], :void
|
|
178
178
|
|
|
179
179
|
# TODO: test when we have implemented lame_set_msgf
|
|
180
180
|
attach_function :lame_print_config, [:global_flags], :void
|
|
@@ -191,6 +191,7 @@ module LAME
|
|
|
191
191
|
attach_function :lame_encode_buffer_long, [:global_flags, :buffer_in, :buffer_in, :int, :buffer_out, :int], :int
|
|
192
192
|
attach_function :lame_encode_buffer_long2, [:global_flags, :buffer_in, :buffer_in, :int, :buffer_out, :int], :int
|
|
193
193
|
attach_function :lame_encode_buffer_int, [:global_flags, :buffer_in, :buffer_in, :int, :buffer_out, :int], :int
|
|
194
|
+
attach_function :lame_encode_buffer_interleaved_int, [:global_flags, :buffer_in, :int, :buffer_out, :int], :int
|
|
194
195
|
|
|
195
196
|
# flushing
|
|
196
197
|
attach_function :lame_encode_flush, [:global_flags, :pointer, :int], :int
|
|
@@ -233,27 +234,27 @@ module LAME
|
|
|
233
234
|
|
|
234
235
|
# id3
|
|
235
236
|
callback :genre_callback, [:int, :string, :pointer], :void
|
|
236
|
-
attach_function :id3tag_genre_list,
|
|
237
|
-
attach_function :id3tag_init,
|
|
238
|
-
attach_function :id3tag_add_v2,
|
|
239
|
-
attach_function :id3tag_v1_only,
|
|
240
|
-
attach_function :id3tag_v2_only,
|
|
241
|
-
attach_function :id3tag_space_v1,
|
|
242
|
-
attach_function :id3tag_pad_v2,
|
|
243
|
-
attach_function :id3tag_set_pad,
|
|
244
|
-
attach_function :id3tag_set_title,
|
|
245
|
-
attach_function :id3tag_set_artist,
|
|
246
|
-
attach_function :id3tag_set_album,
|
|
247
|
-
attach_function :id3tag_set_year,
|
|
248
|
-
attach_function :id3tag_set_comment,
|
|
249
|
-
attach_function :id3tag_set_track,
|
|
250
|
-
attach_function :id3tag_set_genre,
|
|
251
|
-
attach_function :id3tag_set_fieldvalue,
|
|
252
|
-
attach_function :id3tag_set_albumart,
|
|
253
|
-
attach_function :lame_get_id3v1_tag,
|
|
254
|
-
attach_function :lame_get_id3v2_tag,
|
|
255
|
-
attach_function :lame_set_write_id3tag_automatic, [:global_flags, :int], :void
|
|
256
|
-
attach_function :lame_get_write_id3tag_automatic,
|
|
237
|
+
attach_function :id3tag_genre_list, [:genre_callback, :pointer], :void
|
|
238
|
+
attach_function :native_id3tag_init, :id3tag_init, [:global_flags], :void
|
|
239
|
+
attach_function :native_id3tag_add_v2, :id3tag_add_v2, [:global_flags], :void
|
|
240
|
+
attach_function :native_id3tag_v1_only, :id3tag_v1_only, [:global_flags], :void
|
|
241
|
+
attach_function :native_id3tag_v2_only, :id3tag_v2_only, [:global_flags], :void
|
|
242
|
+
attach_function :native_id3tag_space_v1, :id3tag_space_v1, [:global_flags], :void
|
|
243
|
+
attach_function :native_id3tag_pad_v2, :id3tag_pad_v2, [:global_flags], :void
|
|
244
|
+
attach_function :native_id3tag_set_pad, :id3tag_set_pad, [:global_flags, :size_t], :void
|
|
245
|
+
attach_function :native_id3tag_set_title, :id3tag_set_title, [:global_flags, :pointer], :void
|
|
246
|
+
attach_function :native_id3tag_set_artist, :id3tag_set_artist, [:global_flags, :pointer], :void
|
|
247
|
+
attach_function :native_id3tag_set_album, :id3tag_set_album, [:global_flags, :pointer], :void
|
|
248
|
+
attach_function :native_id3tag_set_year, :id3tag_set_year, [:global_flags, :pointer], :void
|
|
249
|
+
attach_function :native_id3tag_set_comment, :id3tag_set_comment, [:global_flags, :pointer], :void
|
|
250
|
+
attach_function :id3tag_set_track, [:global_flags, :pointer], :int
|
|
251
|
+
attach_function :id3tag_set_genre, [:global_flags, :pointer], :int
|
|
252
|
+
attach_function :id3tag_set_fieldvalue, [:global_flags, :pointer], :int
|
|
253
|
+
attach_function :id3tag_set_albumart, [:global_flags, :buffer_in, :size_t], :int
|
|
254
|
+
attach_function :lame_get_id3v1_tag, [:global_flags, :buffer_out, :size_t], :size_t
|
|
255
|
+
attach_function :lame_get_id3v2_tag, [:global_flags, :buffer_out, :size_t], :size_t
|
|
256
|
+
attach_function :native_lame_set_write_id3tag_automatic, :lame_set_write_id3tag_automatic, [:global_flags, :int], :void
|
|
257
|
+
attach_function :lame_get_write_id3tag_automatic, [:global_flags], :int
|
|
257
258
|
# experimental id3:
|
|
258
259
|
# attach_function :id3tag_set_textinfo_latin1, [:global_flags, :string, :string], :int
|
|
259
260
|
# attach_function :id3tag_set_comment_latin1, [:global_flags, :string, :string, :string], :int
|
|
@@ -264,6 +265,66 @@ module LAME
|
|
|
264
265
|
# tables
|
|
265
266
|
attach_function :lame_get_bitrate, [:int, :int], :int
|
|
266
267
|
attach_function :lame_get_samplerate, [:int, :int], :int
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
# for truffleruby compatibility, return nil explicitly
|
|
271
|
+
base.singleton_class.class_eval do
|
|
272
|
+
def lame_set_msfix(global_flags, double)
|
|
273
|
+
native_lame_set_msfix(global_flags, double)
|
|
274
|
+
nil
|
|
275
|
+
end
|
|
276
|
+
def id3tag_init(global_flags)
|
|
277
|
+
native_id3tag_init(global_flags)
|
|
278
|
+
nil
|
|
279
|
+
end
|
|
280
|
+
def id3tag_add_v2(global_flags)
|
|
281
|
+
native_id3tag_add_v2(global_flags)
|
|
282
|
+
nil
|
|
283
|
+
end
|
|
284
|
+
def id3tag_v1_only(global_flags)
|
|
285
|
+
native_id3tag_v1_only(global_flags)
|
|
286
|
+
nil
|
|
287
|
+
end
|
|
288
|
+
def id3tag_v2_only(global_flags)
|
|
289
|
+
native_id3tag_v2_only(global_flags)
|
|
290
|
+
nil
|
|
291
|
+
end
|
|
292
|
+
def id3tag_space_v1(global_flags)
|
|
293
|
+
native_id3tag_space_v1(global_flags)
|
|
294
|
+
nil
|
|
295
|
+
end
|
|
296
|
+
def id3tag_pad_v2(global_flags)
|
|
297
|
+
native_id3tag_pad_v2(global_flags)
|
|
298
|
+
nil
|
|
299
|
+
end
|
|
300
|
+
def id3tag_set_pad(global_flags, size_t)
|
|
301
|
+
native_id3tag_set_pad(global_flags, size_t)
|
|
302
|
+
nil
|
|
303
|
+
end
|
|
304
|
+
def id3tag_set_title(global_flags, pointer)
|
|
305
|
+
native_id3tag_set_title(global_flags, pointer)
|
|
306
|
+
nil
|
|
307
|
+
end
|
|
308
|
+
def id3tag_set_artist(global_flags, pointer)
|
|
309
|
+
native_id3tag_set_artist(global_flags, pointer)
|
|
310
|
+
nil
|
|
311
|
+
end
|
|
312
|
+
def id3tag_set_album(global_flags, pointer)
|
|
313
|
+
native_id3tag_set_album(global_flags, pointer)
|
|
314
|
+
nil
|
|
315
|
+
end
|
|
316
|
+
def id3tag_set_year(global_flags, pointer)
|
|
317
|
+
native_id3tag_set_year(global_flags, pointer)
|
|
318
|
+
nil
|
|
319
|
+
end
|
|
320
|
+
def id3tag_set_comment(global_flags, pointer)
|
|
321
|
+
native_id3tag_set_comment(global_flags, pointer)
|
|
322
|
+
nil
|
|
323
|
+
end
|
|
324
|
+
def lame_set_write_id3tag_automatic(global_flags, int)
|
|
325
|
+
native_lame_set_write_id3tag_automatic(global_flags, int)
|
|
326
|
+
nil
|
|
327
|
+
end
|
|
267
328
|
|
|
268
329
|
end
|
|
269
330
|
end
|
data/lib/lame/version.rb
CHANGED
data/lib/lame.rb
CHANGED
|
@@ -14,6 +14,7 @@ require "lame/encoding/long_buffer_encoder"
|
|
|
14
14
|
require "lame/encoding/interleaved_buffer_encoder"
|
|
15
15
|
require "lame/encoding/interleaved_short_buffer_encoder"
|
|
16
16
|
require "lame/encoding/interleaved_float_buffer_encoder"
|
|
17
|
+
require "lame/encoding/interleaved_int_buffer_encoder"
|
|
17
18
|
require "lame/encoding/flusher"
|
|
18
19
|
require "lame/encoding/id3"
|
|
19
20
|
require "lame/encoding/vbr_info"
|
|
@@ -77,5 +77,12 @@ module LAME
|
|
|
77
77
|
let(:lame_function) { :lame_encode_buffer_interleaved_ieee_float }
|
|
78
78
|
end
|
|
79
79
|
end
|
|
80
|
+
|
|
81
|
+
describe InterleavedIntBufferEncoder do
|
|
82
|
+
it_should_behave_like "a interleaved buffer encoder" do
|
|
83
|
+
let(:data_type) { :int }
|
|
84
|
+
let(:lame_function) { :lame_encode_buffer_interleaved_int }
|
|
85
|
+
end
|
|
86
|
+
end
|
|
80
87
|
end
|
|
81
88
|
end
|
|
@@ -97,7 +97,7 @@ module LAME
|
|
|
97
97
|
expect(LAME).to be_able_to_set(:decode_only).to(1).for(@flags_pointer)
|
|
98
98
|
end
|
|
99
99
|
|
|
100
|
-
it "has a quality" do
|
|
100
|
+
it "has a quality", skip: "setting quality should now be done with lame_set_quality" do
|
|
101
101
|
expect(LAME).to have_flag(:quality).with_value(3).for(@flags_pointer)
|
|
102
102
|
expect(LAME).to be_able_to_set(:quality).to(1).for(@flags_pointer)
|
|
103
103
|
end
|
|
@@ -146,7 +146,7 @@ module LAME
|
|
|
146
146
|
expect(LAME).to be_able_to_set(:brate).to(192).for(@flags_pointer)
|
|
147
147
|
end
|
|
148
148
|
|
|
149
|
-
it "has a compression ratio" do
|
|
149
|
+
it "has a compression ratio", skip: "setting compression ratio should now be done ewith lame_set_compression_ratio" do
|
|
150
150
|
expect(LAME).to have_flag(:compression_ratio).with_value(1).for(@flags_pointer)
|
|
151
151
|
#expect(LAME).to be_able_to_set(:compression_ratio).to(11.025).for(@flags_pointer) # can't set it..?
|
|
152
152
|
end
|
|
@@ -411,15 +411,15 @@ module LAME
|
|
|
411
411
|
|
|
412
412
|
context "version" do
|
|
413
413
|
it "has a version" do
|
|
414
|
-
expect(LAME.get_lame_version).to match /3\.\d\d
|
|
414
|
+
expect(LAME.get_lame_version).to match /3\.\d{2,3}( \(beta \d, [^)]+\))?/
|
|
415
415
|
end
|
|
416
416
|
|
|
417
417
|
it "has a short version" do
|
|
418
|
-
expect(LAME.get_lame_short_version).to match /3\.\d\d
|
|
418
|
+
expect(LAME.get_lame_short_version).to match /3\.\d{2,3}( beta \d\(\))?/
|
|
419
419
|
end
|
|
420
420
|
|
|
421
421
|
it "has a very short version" do
|
|
422
|
-
expect(LAME.get_lame_very_short_version).to match /LAME3\.\d\
|
|
422
|
+
expect(LAME.get_lame_very_short_version).to match /LAME3\.\d{2,3}[rb]\d/
|
|
423
423
|
end
|
|
424
424
|
|
|
425
425
|
it "has a psy version" do
|
|
@@ -427,7 +427,7 @@ module LAME
|
|
|
427
427
|
end
|
|
428
428
|
|
|
429
429
|
it "has a url" do
|
|
430
|
-
expect(LAME.get_lame_url).to eql "
|
|
430
|
+
expect(LAME.get_lame_url).to eql "https://lame.sourceforge.io"
|
|
431
431
|
end
|
|
432
432
|
|
|
433
433
|
it "has os bitness" do
|
|
@@ -436,13 +436,17 @@ module LAME
|
|
|
436
436
|
|
|
437
437
|
context "numerical version" do
|
|
438
438
|
|
|
439
|
-
let(:version) {
|
|
439
|
+
let(:version) {
|
|
440
|
+
version = LAME::FFI::Version.new
|
|
441
|
+
LAME.get_lame_version_numerical(version)
|
|
442
|
+
version
|
|
443
|
+
}
|
|
440
444
|
it "has a major version" do
|
|
441
445
|
expect(version[:major]).to eql 3
|
|
442
446
|
end
|
|
443
447
|
|
|
444
448
|
it "has a minor version" do
|
|
445
|
-
expect(version[:minor]).to eql
|
|
449
|
+
expect(version[:minor]).to eql 101
|
|
446
450
|
end
|
|
447
451
|
|
|
448
452
|
it "has a alpha version" do
|
|
@@ -450,7 +454,7 @@ module LAME
|
|
|
450
454
|
end
|
|
451
455
|
|
|
452
456
|
it "has a beta version" do
|
|
453
|
-
expect(version[:beta]).to eql
|
|
457
|
+
expect(version[:beta]).to eql 3
|
|
454
458
|
end
|
|
455
459
|
|
|
456
460
|
it "has a psy_major version" do
|
data/spec/ffi/id3tag_spec.rb
CHANGED
|
@@ -100,8 +100,8 @@ module LAME
|
|
|
100
100
|
|
|
101
101
|
# fake JPG image
|
|
102
102
|
buffer = ::FFI::MemoryPointer.new(:char, buffer_size)
|
|
103
|
-
buffer.
|
|
104
|
-
buffer.
|
|
103
|
+
buffer.put_uint8(0, 0xff)
|
|
104
|
+
buffer.put_uint8(1, 0xd8)
|
|
105
105
|
|
|
106
106
|
expect(LAME.id3tag_set_albumart(@flags_pointer, buffer, buffer_size)).to eql 0
|
|
107
107
|
end
|
data/spec/spec_helper.rb
CHANGED
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
if RUBY_DESCRIPTION =~ /\Aruby
|
|
1
|
+
if RUBY_DESCRIPTION =~ /\Aruby 3.4/
|
|
2
2
|
require 'simplecov'
|
|
3
|
-
require '
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
3
|
+
require 'simplecov-lcov'
|
|
4
|
+
|
|
5
|
+
# Configure simplecov-lcov to generate a single lcov.info file
|
|
6
|
+
SimpleCov::Formatter::LcovFormatter.config do |config|
|
|
7
|
+
config.report_with_single_file = true
|
|
8
|
+
config.single_report_path = 'coverage/lcov.info'
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Set SimpleCov to use the LCOV formatter
|
|
12
|
+
SimpleCov.formatter = SimpleCov::Formatter::LcovFormatter
|
|
13
|
+
|
|
14
|
+
SimpleCov.start do "test"
|
|
15
|
+
add_filter '/spec/' # Exclude spec files from coverage statistics
|
|
11
16
|
end
|
|
12
17
|
end
|
|
13
18
|
|
metadata
CHANGED
|
@@ -1,113 +1,126 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lame
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Roel van Dijk
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: ffi
|
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
|
16
15
|
requirements:
|
|
17
|
-
- -
|
|
16
|
+
- - ">="
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
18
|
version: '0'
|
|
20
19
|
type: :runtime
|
|
21
20
|
prerelease: false
|
|
22
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
22
|
requirements:
|
|
24
|
-
- -
|
|
23
|
+
- - ">="
|
|
25
24
|
- !ruby/object:Gem::Version
|
|
26
25
|
version: '0'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
27
|
name: rake
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
30
29
|
requirements:
|
|
31
|
-
- -
|
|
30
|
+
- - ">="
|
|
32
31
|
- !ruby/object:Gem::Version
|
|
33
32
|
version: '0'
|
|
34
33
|
type: :development
|
|
35
34
|
prerelease: false
|
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
36
|
requirements:
|
|
38
|
-
- -
|
|
37
|
+
- - ">="
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
39
|
version: '0'
|
|
41
40
|
- !ruby/object:Gem::Dependency
|
|
42
41
|
name: rspec
|
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
|
44
43
|
requirements:
|
|
45
|
-
- -
|
|
44
|
+
- - ">="
|
|
46
45
|
- !ruby/object:Gem::Version
|
|
47
46
|
version: '0'
|
|
48
47
|
type: :development
|
|
49
48
|
prerelease: false
|
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
50
|
requirements:
|
|
52
|
-
- -
|
|
51
|
+
- - ">="
|
|
53
52
|
- !ruby/object:Gem::Version
|
|
54
53
|
version: '0'
|
|
55
54
|
- !ruby/object:Gem::Dependency
|
|
56
55
|
name: pry
|
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
|
58
57
|
requirements:
|
|
59
|
-
- -
|
|
58
|
+
- - ">="
|
|
60
59
|
- !ruby/object:Gem::Version
|
|
61
60
|
version: '0'
|
|
62
61
|
type: :development
|
|
63
62
|
prerelease: false
|
|
64
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
64
|
requirements:
|
|
66
|
-
- -
|
|
65
|
+
- - ">="
|
|
67
66
|
- !ruby/object:Gem::Version
|
|
68
67
|
version: '0'
|
|
69
68
|
- !ruby/object:Gem::Dependency
|
|
70
69
|
name: wavefile
|
|
71
70
|
requirement: !ruby/object:Gem::Requirement
|
|
72
71
|
requirements:
|
|
73
|
-
- -
|
|
72
|
+
- - ">="
|
|
74
73
|
- !ruby/object:Gem::Version
|
|
75
74
|
version: '0'
|
|
76
75
|
type: :development
|
|
77
76
|
prerelease: false
|
|
78
77
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
78
|
requirements:
|
|
80
|
-
- -
|
|
79
|
+
- - ">="
|
|
81
80
|
- !ruby/object:Gem::Version
|
|
82
81
|
version: '0'
|
|
83
82
|
- !ruby/object:Gem::Dependency
|
|
84
83
|
name: ruby-mp3info
|
|
85
84
|
requirement: !ruby/object:Gem::Requirement
|
|
86
85
|
requirements:
|
|
87
|
-
- -
|
|
86
|
+
- - ">="
|
|
88
87
|
- !ruby/object:Gem::Version
|
|
89
88
|
version: '0'
|
|
90
89
|
type: :development
|
|
91
90
|
prerelease: false
|
|
92
91
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
92
|
requirements:
|
|
94
|
-
- -
|
|
93
|
+
- - ">="
|
|
95
94
|
- !ruby/object:Gem::Version
|
|
96
95
|
version: '0'
|
|
97
96
|
- !ruby/object:Gem::Dependency
|
|
98
|
-
name:
|
|
97
|
+
name: simplecov
|
|
99
98
|
requirement: !ruby/object:Gem::Requirement
|
|
100
99
|
requirements:
|
|
101
|
-
- -
|
|
100
|
+
- - "~>"
|
|
102
101
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '0'
|
|
102
|
+
version: '0.22'
|
|
104
103
|
type: :development
|
|
105
104
|
prerelease: false
|
|
106
105
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
106
|
requirements:
|
|
108
|
-
- -
|
|
107
|
+
- - "~>"
|
|
109
108
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '0'
|
|
109
|
+
version: '0.22'
|
|
110
|
+
- !ruby/object:Gem::Dependency
|
|
111
|
+
name: simplecov-lcov
|
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
|
113
|
+
requirements:
|
|
114
|
+
- - "~>"
|
|
115
|
+
- !ruby/object:Gem::Version
|
|
116
|
+
version: '0.8'
|
|
117
|
+
type: :development
|
|
118
|
+
prerelease: false
|
|
119
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
120
|
+
requirements:
|
|
121
|
+
- - "~>"
|
|
122
|
+
- !ruby/object:Gem::Version
|
|
123
|
+
version: '0.8'
|
|
111
124
|
description: FFI powered library for the LAME MP3 encoder.
|
|
112
125
|
email:
|
|
113
126
|
- roel@rustradio.org
|
|
@@ -115,15 +128,17 @@ executables: []
|
|
|
115
128
|
extensions: []
|
|
116
129
|
extra_rdoc_files: []
|
|
117
130
|
files:
|
|
118
|
-
- .
|
|
119
|
-
- .
|
|
120
|
-
- .
|
|
121
|
-
- .
|
|
131
|
+
- ".github/workflows/ci.yml"
|
|
132
|
+
- ".gitignore"
|
|
133
|
+
- ".rspec"
|
|
134
|
+
- ".rvmrc"
|
|
135
|
+
- ".travis.yml"
|
|
122
136
|
- Gemfile
|
|
123
137
|
- LICENSE.txt
|
|
124
138
|
- README.md
|
|
125
139
|
- Rakefile
|
|
126
140
|
- docs/id3v2.4.0-structure.txt
|
|
141
|
+
- docs/lame-3.101.h
|
|
127
142
|
- docs/lame-3.99.5.h
|
|
128
143
|
- lame.gemspec
|
|
129
144
|
- lib/lame.rb
|
|
@@ -144,6 +159,7 @@ files:
|
|
|
144
159
|
- lib/lame/encoding/id3.rb
|
|
145
160
|
- lib/lame/encoding/interleaved_buffer_encoder.rb
|
|
146
161
|
- lib/lame/encoding/interleaved_float_buffer_encoder.rb
|
|
162
|
+
- lib/lame/encoding/interleaved_int_buffer_encoder.rb
|
|
147
163
|
- lib/lame/encoding/interleaved_short_buffer_encoder.rb
|
|
148
164
|
- lib/lame/encoding/long_buffer_encoder.rb
|
|
149
165
|
- lib/lame/encoding/short_buffer_encoder.rb
|
|
@@ -191,24 +207,21 @@ files:
|
|
|
191
207
|
homepage: http://github.com/rdvdijk/lame
|
|
192
208
|
licenses: []
|
|
193
209
|
metadata: {}
|
|
194
|
-
post_install_message:
|
|
195
210
|
rdoc_options: []
|
|
196
211
|
require_paths:
|
|
197
212
|
- lib
|
|
198
213
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
199
214
|
requirements:
|
|
200
|
-
- -
|
|
215
|
+
- - ">="
|
|
201
216
|
- !ruby/object:Gem::Version
|
|
202
217
|
version: '0'
|
|
203
218
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
204
219
|
requirements:
|
|
205
|
-
- -
|
|
220
|
+
- - ">="
|
|
206
221
|
- !ruby/object:Gem::Version
|
|
207
222
|
version: '0'
|
|
208
223
|
requirements: []
|
|
209
|
-
|
|
210
|
-
rubygems_version: 2.0.14
|
|
211
|
-
signing_key:
|
|
224
|
+
rubygems_version: 3.6.9
|
|
212
225
|
specification_version: 4
|
|
213
226
|
summary: Easily encode MP3 files using the LAME MP3 encoder.
|
|
214
227
|
test_files:
|