class_docstr: Augmenter that change loudness on mel spectrogram by random values.
  
  :param tuple zone: Default value is (0.2, 0.8). Assign a zone for augmentation. By default, no any augmentation
       will be applied in first 20% and last 20% of whole audio.
  :param float coverage: Default value is 1 and value should be between 0 and 1. Portion of augmentation. 
      If `1` is assigned, augment operation will be applied to target audio segment. For example, the audio 
      duration is 60 seconds while zone and coverage are (0.2, 0.8) and 0.7 respectively. 42 
      seconds ((0.8-0.2)*0.7*60) audio will be augmented.
  :param tuple factor: Default value is (0.5, 2). Volume change value will be picked within the range of this 
      tuple value. Volume will be reduced if value is between 0 and 1. Otherwise, volume will be increased.
  :param str name: Name of this augmenter
code: def substitute(self, data):
      # https://arxiv.org/pdf/2001.01401.pdf
  
      loudness_level = self.get_random_factor()
      time_start, time_end = self.get_augment_range_by_coverage(data)
  
      if not self.stateless:
          self.time_start, self.time_end, self.loudness_level = (
              time_start,
              time_end,
              loudness_level,
          )
  
      return self.model.manipulate(
          data,
          loudness_level=loudness_level,
          time_start=time_start,
          time_end=time_end,
      )
  
file_path: nlpaug/nlpaug/augmenter/spectrogram/loudness.py
imports: import numpy
  from nlpaug.augmenter.spectrogram import SpectrogramAugmenter
  from nlpaug.util import Action
  import nlpaug.model.spectrogram
label_desc: Use image node_id 2 for calling the LoudnessAug obj's underlying member method code with example usage: obj.substitute(data) and returns: self