class_docstr: Constructs a Speech2Text feature extractor.
  
  This feature extractor inherits from [`Speech2TextFeatureExtractor`] which contains most of the main methods. Users
  should refer to this superclass for more information regarding those methods.
  
  This class extracts mel-filter bank features from raw speech using TorchAudio and applies utterance-level cepstral
  mean and variance normalization to the extracted features.
  
  Args:
      feature_size (`int`, defaults to 80):
          The feature dimension of the extracted features.
      sampling_rate (`int`, defaults to 16000):
          The sampling rate at which the audio files should be digitalized expressed in Hertz per second (Hz).
      num_mel_bins (`int`, defaults to 80):
          Number of Mel-frequency bins.
      padding_value (`float`, defaults to 0.0):
          The value that is used to fill the padding vectors.
      do_ceptral_normalize (`bool`, *optional*, defaults to `True`):
          Whether or not to apply utterance-level cepstral mean and variance normalization to extracted features.
      normalize_means (`bool`, *optional*, defaults to `True`):
          Whether or not to zero-mean normalize the extracted features.
      normalize_vars (`bool`, *optional*, defaults to `True`):
          Whether or not to unit-variance normalize the extracted features.
code: def utterance_cmvn(
      x: np.ndarray,
      input_length: int,
      normalize_means: Optional[bool] = True,
      normalize_vars: Optional[bool] = True,
      padding_value: float = 0.0,
  ) -> np.ndarray:
      # make sure we normalize float32 arrays
      if normalize_means:
          mean = x[:input_length].mean(axis=0)
          x = np.subtract(x, mean)
      if normalize_vars:
          std = x[:input_length].std(axis=0)
          x = np.divide(x, std)
  
      if input_length < x.shape[0]:
          x[input_length:] = padding_value
  
      # make sure array is in float32
      x = x.astype(np.float32)
  
      return x
  
file_path: H2O/h2o_flexgen/benchmark/third_party/transformers/src/transformers/models/speech_to_text/feature_extraction_speech_to_text.py
imports: from typing import List, Optional, Union
  import numpy
  import torch
  import torchaudio.compliance.kaldi
  from ...feature_extraction_sequence_utils import SequenceFeatureExtractor
  from ...feature_extraction_utils import BatchFeature
  from ...utils import PaddingStrategy, TensorType, logging
label_desc: Use image node_id 3 for calling the Speech2TextFeatureExtractor obj's underlying member method code with example usage: obj.utterance_cmvn(x, input_length, normalize_means, normalize_vars, padding_value) and returns: x