class AudioStream::Fx::AGain

Public Class Methods

new(level:) click to toggle source

@param level [AudioStream::Decibel] Amplification level

# File lib/audio_stream/fx/a_gain.rb, line 5
def initialize(level:)
  if Decibel===level
    @level = level.mag
  else
    @level = Decibel.db(level).mag
  end
end

Public Instance Methods

process(input) click to toggle source
# File lib/audio_stream/fx/a_gain.rb, line 13
def process(input)
  return input if @level==1.0

  streams = input.streams.map {|stream|
    stream * @level
  }
  Buffer.new(*streams)
end