class_docstr: OnlineProcessor module definition.
  
  Args:
      feature_extractor: Feature extractor module.
      normalization_module: Normalization module.
      decoding_window: Size of the decoding window (in ms).
      encoder_sub_factor: Encoder subsampling factor.
      frontend_conf: Frontend configuration.
      device: Device to pin module tensors on.
      audio_sampling_rate: Input sampling rate.
docstr: Construct an OnlineAudioProcessor.
docstr_tok: ["Construct","an","OnlineAudioProcessor","."]
code: def __init__(
      self,
      feature_extractor: torch.nn.Module,
      normalization_module: torch.nn.Module,
      decoding_window: int,
      encoder_sub_factor: int,
      frontend_conf: Dict,
      device: torch.device,
      audio_sampling_rate: int = 16000,
  ) -> None:
      """Construct an OnlineAudioProcessor."""
  
      self.n_fft = frontend_conf.get("n_fft", 512)
      self.hop_sz = frontend_conf.get("hop_length", 128)
      self.win_sz = frontend_conf.get("win_sz", self.n_fft)
  
      self.win_hop_sz = self.win_sz - self.hop_sz
      self.trim_val = (self.win_sz // -self.hop_sz) // -2
  
      self.decoding_samples = round(
          decoding_window * audio_sampling_rate / 1000
      )
      self.offset_frames = 2 * encoder_sub_factor + 3
  
      self.feature_extractor = feature_extractor
      self.normalization_module = normalization_module
  
      self.device = device
  
      self.reset_cache()
  
imports: from typing import Dict, Tuple
  import torch
label_desc: Use image node_id 1 to create a new OnlineAudioProcessor object  with example: obj = OnlineAudioProcessor(feature_extractor, normalization_module, decoding_window, encoder_sub_factor, frontend_conf, device, audio_sampling_rate)