Method: AudioStream::Buffer#initialize

Defined in:
lib/audio_stream/buffer.rb

#initialize(stream0, stream1 = nil) ⇒ Buffer

Returns a new instance of Buffer.



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/audio_stream/buffer.rb', line 8

def initialize(stream0, stream1=nil)
  if Array===stream0
    stream0 = Vdsp::DoubleArray.create(stream0)
  end
  if Array===stream1
    stream1 = Vdsp::DoubleArray.create(stream1)
  end

  @stream0 = stream0
  @stream1 = stream1

  if !stream1
    @streams = [stream0]
    @channels = 1
    @window_size = stream0.size
  else
    @streams = [stream0, stream1]
    @channels = 2
    @window_size = stream0.size

    if stream0.size!=stream1.size
      raise Error, "stream size is not match: stream0.size=#{stream0.size}, stream1.size=#{stream1.size}"
    end
  end
end