class_docstr: Abstract base class for pitch shifting transformations
class_docstr_tok: ["Abstract","base","class","for","pitch","shifting","transformations"]
code: def states(self, jam):
      mudabox = jam.sandbox.muda
      state = dict(
          tuning=librosa.estimate_tuning(
              y=mudabox._audio["y"], sr=mudabox._audio["sr"]
          )
      )
      yield state
  
imports: import librosa
  import pyrubberband
  import re
  import numpy
  import six
  from copy import deepcopy
  from ..base import BaseTransformer, _get_rng
label_desc: Use image node_id 2 for calling the AbstractPitchShift obj's underlying member method code with example usage: obj.states(jam) without return types