Method: SPCore::Gain.linear_to_db

Defined in:
lib/spcore/util/gain.rb

.linear_to_db(linear) ⇒ Object

Convert a linear value to a decibel value.

Raises:

  • (ArgumentError)


17
18
19
20
21
22
23
24
# File 'lib/spcore/util/gain.rb', line 17

def self.linear_to_db linear
  raise ArgumentError, "linear value #{linear} is less than 0.0" if linear < 0.0
  if linear == 0.0
    return -MAX_DB_ABS
  else
    return 20.0 * Math::log10(linear)
  end
end