class_docstr: :param int sampling_rate: Sampling rate of input audio.
  :param tuple zone: Assign a zone for augmentation. Default value is (0.2, 0.8) which means that no any
      augmentation will be applied in first 20% and last 20% of whole audio.
  :param float coverage: Portion of augmentation. Value should be between 0 and 1. 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 int duration: Duration of augmentation (in second). Default value is None. If value is provided. `coverage`
      value will be ignored.
  :param tuple factor: Input data pitch will be increased (decreased). Augmented value will be picked
          within the range of this tuple value. Pitch will be reduced if value is between 0 and 1.
  :param str name: Name of this augmenter
  
  >>> import nlpaug.augmenter.audio as naa
  >>> aug = naa.PitchAug(sampling_rate=44010)
code: def substitute(self, data):
      pitch_level = self.get_random_factor()
      start_pos, end_pos = self.get_augment_range_by_coverage(data)
  
      if not self.stateless:
          self.start_pos, self.end_pos, self.aug_factor = (
              start_pos,
              end_pos,
              pitch_level,
          )
  
      return self.model.manipulate(
          data, start_pos, end_pos, pitch_level, self.sampling_rate
      )
  
imports: from nlpaug.augmenter.audio import AudioAugmenter
  import nlpaug.model.audio
  from nlpaug.util import Action, WarningMessage
label_desc: Use image node_id 2 for calling the PitchAug obj's underlying member method code with example usage: obj.substitute(data) and returns: self