voicemeeter_api_ruby 4.1.5 → 4.3.1

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.
data/lib/strip.rb DELETED
@@ -1,135 +0,0 @@
1
- require_relative "iremote"
2
-
3
- class Strip < IRemote
4
- "
5
- Concrete Strip class
6
- "
7
- include Channel_Meta_Functions
8
-
9
- attr_accessor :gainlayer, :levels
10
-
11
- def self.make(remote, layout_strip)
12
- "
13
- Factory function for Strip classes.
14
- "
15
- p_in, v_in = layout_strip.values
16
- (0...(p_in + v_in)).map do |i|
17
- i < p_in ? PhysicalStrip.new(remote, i) : VirtualStrip.new(remote, i)
18
- end
19
- end
20
-
21
- def initialize(remote, i)
22
- super
23
- self.make_accessor_bool :solo, :mute, :mono
24
- self.make_accessor_float :gain
25
- self.make_accessor_int :limit
26
- self.make_accessor_string :label
27
-
28
- num_A, num_B = remote.kind.layout[:bus].values
29
- self.make_accessor_bool *make_channel_props(num_A, num_B)
30
-
31
- @gainlayer = (0...8).map { |j| GainLayer.new(remote, i, j) }
32
- @levels = StripLevels.new(remote, i)
33
- end
34
-
35
- def identifier
36
- "strip[#{@index}]"
37
- end
38
-
39
- def fadeto(target, time)
40
- self.setter("FadeTo", "(#{target}, #{time})")
41
- sleep(@remote.delay)
42
- end
43
-
44
- def fadeby(change, time)
45
- self.setter("FadeBy", "(#{change}, #{time})")
46
- sleep(@remote.delay)
47
- end
48
- end
49
-
50
- class PhysicalStrip < Strip
51
- def initialize(remote, i)
52
- super
53
- self.make_accessor_float :comp, :gate, :audibility
54
- self.make_reader_only :device, :sr
55
- end
56
- end
57
-
58
- class VirtualStrip < Strip
59
- def initialize(remote, i)
60
- super
61
- self.make_accessor_bool :mc
62
- self.make_accessor_int :k
63
- self.make_accessor_float :bass, :mid, :treble
64
- end
65
-
66
- def appgain(name, gain)
67
- self.setter("AppGain", "(\"#{name}\", #{gain})")
68
- end
69
-
70
- def appmute(name, mute)
71
- self.setter("AppMute", "(\"#{name}\", #{mute ? 1 : 0})")
72
- end
73
- end
74
-
75
- class GainLayer < IRemote
76
- def initialize(remote, i, j)
77
- super(remote, i)
78
- @j = j
79
- end
80
-
81
- def identifier
82
- "strip[#{@index}]"
83
- end
84
-
85
- def gain
86
- self.getter("gainlayer[#{@j}]")
87
- end
88
-
89
- def gain=(value)
90
- self.setter("gainlayer[#{@j}]", value)
91
- end
92
- end
93
-
94
- class StripLevels < IRemote
95
- def initialize(remote, i)
96
- super
97
- if i < @remote.p_in
98
- @init = i * 2
99
- @offset = 2
100
- else
101
- @init = (@remote.p_in * 2) + ((i - @remote.p_in) * 8)
102
- @offset = 8
103
- end
104
- end
105
-
106
- def identifier
107
- "strip[#{@index}]"
108
- end
109
-
110
- def get_level(mode)
111
- if @remote.running
112
- vals = @remote.cache["strip_level"][@init, @offset]
113
- else
114
- vals = (@init...@offset).map { |i| get_level(mode, i) }
115
- end
116
- vals.map { |x| x > 0 ? (20 * Math.log(x, 10)).round(1) : -200.0 }
117
- end
118
-
119
- def prefader
120
- @remote.strip_mode = 0
121
- get_level(0)
122
- end
123
-
124
- def postfader
125
- @remote.strip_mode = 1
126
- get_level(1)
127
- end
128
-
129
- def postmute
130
- @remote.strip_mode = 2
131
- get_level(2)
132
- end
133
-
134
- def isdirty? = @remote._strip_comp[@init, @offset].any?
135
- end
data/lib/vban.rb DELETED
@@ -1,78 +0,0 @@
1
- require_relative "iremote"
2
- require_relative "meta"
3
- require_relative "errors"
4
-
5
- class VbanStream < IRemote
6
- "
7
- A class representing a VBAN stream
8
- "
9
- include Vban_Meta_Functions
10
-
11
- def initialize(remote, i)
12
- super
13
- self.make_accessor_bool :on
14
- self.make_accessor_string :name, :ip
15
- self.make_accessor_int :quality, :route
16
- end
17
-
18
- def identifier
19
- "vban.#{self.direction}stream[#{@index}]"
20
- end
21
-
22
- def direction
23
- raise "Called abstract mehod: direction"
24
- end
25
- end
26
-
27
- class VbanInstream < VbanStream
28
- "
29
- A subclass representing a VBAN Instream
30
- "
31
- def initialize(remote, i)
32
- super
33
- self.make_reader_int :sr, :channel, :bit
34
- end
35
-
36
- def direction
37
- :in
38
- end
39
- end
40
-
41
- class VbanOutstream < VbanStream
42
- "
43
- A subclass representing a VBAN Outstream
44
- "
45
- def initialize(remote, i)
46
- super
47
- self.make_accessor_int :sr, :channel, :bit
48
- end
49
-
50
- def direction
51
- :out
52
- end
53
- end
54
-
55
- class Vban
56
- attr_accessor :instream, :outstream
57
-
58
- def initialize(remote, vban_streams)
59
- "
60
- Initializes a Vban class
61
-
62
- Creates an array for each in/out stream
63
- "
64
- vban_in, vban_out = vban_streams.values
65
- self.instream = (0...vban_in).map { |i| VbanInstream.new(remote, i) }
66
- self.outstream = (0...vban_out).map { |i| VbanOutstream.new(remote, i) }
67
-
68
- @remote = remote
69
- end
70
-
71
- def enable
72
- @remote.set_parameter("vban.enable", 1)
73
- end
74
-
75
- def disable
76
- @remote.set_parameter("vban.enable", 0)
77
- end
78
- end
data/lib/version.rb DELETED
@@ -1,3 +0,0 @@
1
- module Voicemeeter_API_Ruby
2
- VERSION = "4.1.5"
3
- end