text: class Voice(object):
      """
      Class representing voice activity inside an audio signal with a transcript.
      The transcript does not need to be 100% correct (i.e. not necessarily a substring of the real transcript)
      and can be generated by an ASR system
      """
  
      def __init__(self, audio, rate, start_frame, end_frame, transcript=None):
          self.audio = audio
          self.rate = rate
          self.start_frame = start_frame
          self.end_frame = end_frame
          self.transcript = transcript
  
  
  class Alignment(Voice):
      """
      Class representing a voice activity whose transcript has been aligned with some other text. In contrast to a Voice
      object, the aligned text must be a substring of the real transcript.
      """
  
      def __init__(self, voice, aligned_text):
          super().__init__(voice.audio, voice.rate, voice.start_frame, voice.end_frame)
          self.text = aligned_text.strip()