code: def evaluateSilenceRate(self, input):
      thresh = [0, 0.15, 0.2, 0.3, 0.4, 0.5, 0.75, 0.8]
      nThresh = len(thresh)
      nFrames = len(input)
  
      # expected values:
      expected = zeros([nFrames, nThresh])
      for frame in range(nFrames):
          if len(input[frame]):
              power = instantPower(input[frame])
          for i in range(nThresh):
              if power < thresh[i]:
                  expected[frame][i] = 1
              else:
                  expected[frame][i] = 0
  
      output = []
      for frame in input:
          output.append(SilenceRate(thresholds=thresh)(frame))
      self.assertAlmostEqualMatrix(output, expected)
  
file_path: essentia/test/src/unittests/standard/test_silencerate.py
imports: from essentia_test import *
  from essentia import *
  from numpy import random
label_desc: Use image node_id 1 for calling the TestSilenceRate obj's underlying member method code with example usage: obj.evaluateSilenceRate(input) without return types