code: def early_downsample(
      sr, hop_length, n_octaves, nyquist, filter_cutoff
  ):
      """Return new sampling rate and hop length after early dowansampling"""
      downsample_count = early_downsample_count(
          nyquist, filter_cutoff, hop_length, n_octaves
      )
      # print("downsample_count = ", downsample_count)
      downsample_factor = 2 ** (downsample_count)
  
      hop_length //= downsample_factor  # Getting new hop_length
      new_sr = sr / float(
          downsample_factor
      )  # Getting new sampling rate
  
      sr = new_sr
  
      return sr, hop_length, downsample_factor
  
imports: import sys
  import torch
  from torch.nn.functional import conv1d, fold
  import numpy
  from time import time
  import math
  from scipy.signal import get_window
  from scipy import signal
  from scipy.fftpack import fft
  import warnings
  from nnAudio.librosa_functions import *
label_desc: Use image node_id 22 for calling a global function with example usage: early_downsample(sr, hop_length, n_octaves, nyquist, filter_cutoff) and returns: sr,  hop_length,  downsample_factor