audio_stream 1.2.3 → 1.2.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/audio_stream/audio_input.rb +3 -1
- data/lib/audio_stream/audio_input_device.rb +6 -1
- data/lib/audio_stream/audio_input_file.rb +6 -2
- data/lib/audio_stream/audio_output_file.rb +3 -1
- data/lib/audio_stream/fx/delay.rb +1 -1
- data/lib/audio_stream/sound_info.rb +4 -0
- data/lib/audio_stream/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '00808bca83da43c81bd03e94f420f7ecce53b9211450c76a09d6d1856edf8be2'
|
4
|
+
data.tar.gz: 64d161eedf393c991fe2692aa7328afceed56e926fed3101f92dbc862b820446
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4665c0f70102e40057ec0f799f21a8d422bd9ce395f74b7075f22cad0d7024ed8701e682cf644df55822055cf6720dacbb499de0766958dfa17bc46d6d0039b3
|
7
|
+
data.tar.gz: 0be2c27573b1918ac6a01ffaa0b678c44338630415c28a3b13c06b432888c8b467f9443ad26b1e326aab9b4d2277eecb5268b8d541189f5827c35109443a93c9
|
@@ -22,12 +22,17 @@ module AudioStream
|
|
22
22
|
def disconnect
|
23
23
|
if @inbuf
|
24
24
|
@inbuf.stop
|
25
|
-
|
25
|
+
@inbuf = nil
|
26
26
|
end
|
27
|
+
super
|
27
28
|
end
|
28
29
|
|
29
30
|
def each(&block)
|
30
31
|
Enumerator.new do |y|
|
32
|
+
if !@inbuf
|
33
|
+
raise Error, "Device is not connected. You need to exec #{self.class.name}.connect: #{name}"
|
34
|
+
end
|
35
|
+
|
31
36
|
channels = @dev.input_stream.channels
|
32
37
|
buf = Buffer.float(@soundinfo.window_size, channels)
|
33
38
|
|
@@ -17,8 +17,8 @@ module AudioStream
|
|
17
17
|
def disconnect
|
18
18
|
if @sound && !@sound.closed?
|
19
19
|
@sound.close
|
20
|
-
super
|
21
20
|
end
|
21
|
+
super
|
22
22
|
end
|
23
23
|
|
24
24
|
def seek(frames, whence=IO::SEEK_SET)
|
@@ -28,7 +28,11 @@ module AudioStream
|
|
28
28
|
|
29
29
|
def each(&block)
|
30
30
|
Enumerator.new do |y|
|
31
|
-
|
31
|
+
if !@sound || @sound.closed?
|
32
|
+
raise Error, "File is not opened. You need to exec #{self.class.name}.connect: #{@path}"
|
33
|
+
end
|
34
|
+
|
35
|
+
buf = Buffer.float(@soundinfo.window_size, @soundinfo.channels)
|
32
36
|
while @sound.read(buf)!=0
|
33
37
|
buf.real_size = buf.size
|
34
38
|
y << buf.clone
|
@@ -8,7 +8,7 @@ module AudioStream
|
|
8
8
|
@level = level
|
9
9
|
@feedback = feedback
|
10
10
|
|
11
|
-
@delaysample = soundinfo.samplerate * time
|
11
|
+
@delaysample = (soundinfo.samplerate * time).round
|
12
12
|
@delaybuf0 = Array.new(@delaysample, 0.0)
|
13
13
|
@delaybuf1 = Array.new(@delaysample, 0.0)
|
14
14
|
@seek = 0
|
@@ -2,6 +2,10 @@ module AudioStream
|
|
2
2
|
class SoundInfo < RubyAudio::SoundInfo
|
3
3
|
attr_accessor :window_size
|
4
4
|
|
5
|
+
def framerate
|
6
|
+
self.samplerate.to_f / self.window_size
|
7
|
+
end
|
8
|
+
|
5
9
|
def clone
|
6
10
|
SoundInfo.new(channels: channels, samplerate: samplerate, format: format, window_size: window_size)
|
7
11
|
end
|
data/lib/audio_stream/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: audio_stream
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Yoshida Tetsuya
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-07-
|
11
|
+
date: 2019-07-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|