code: def stft(
      x,
      window_size,
      stride,
      fft_size,
      window_type="hanning",
      center=True,
      pad_mode="reflect",
      as_istft_backward=False,
  ):
      """Computes the short-time Fourier transform
  
      Args:
          x (~nnabla.Variable): Time domain sequence of size `batch_size x sample_size`.
          window_size (int): Size of STFT analysis window.
          stride (int): Number of samples that we shift the window, also called `hop size`.
          fft_size (int): Size of the FFT, the output will have `fft_size // 2+ 1` frequency bins.
          window_type (str): Analysis window, can be either `hanning`, `hamming` or `rectangular`.
              For convenience, also `window_type=None` is supported which is equivalent to `window_type='rectangular'`.
          center (bool): If `True`, then the signal `x` is padded by half the FFT size using reflection padding.
          pad_mode (str): Padding mode, which can be `'constant'` or `'reflect'`. `'constant'` pads with `0`.
          as_istft_backward: If `True`, then forward execution behaves as backward execution of ISTFT,
              treating input `x` as output gradient of ISTFT and outputs `y_r` and `y_i` as inputs gradient of ISTFT.
              This option is only used in nn.grad operator.
  
      Returns:
          Returns real and imaginary parts of STFT result.
  
          * :obj:`~nnabla.Variable`: Real part of STFT of size `batch_size x fft_size//2 + 1 x frame_size`.
          * :obj:`~nnabla.Variable`: Imaginary part of STFT of size `batch x fft_size//2 + 1 x frame_size`.
      """
      from .function_bases import stft as stft_base
  
      if window_type is None:
          window_type = "rectangular"
      return stft_base(
          x,
          window_size,
          stride,
          fft_size,
          window_type,
          center,
          pad_mode,
          as_istft_backward,
      )
  
imports: from __future__ import absolute_import
  from .function_bases import *
  from .None import dtypes
  import nnabla
  import numpy
  from .normalization_functions import *
  from .numpy_compat_functions import *
label_desc: Use image node_id 22 for calling a global function with example usage: stft(x, window_size, stride, fft_size, window_type, center, pad_mode, as_istft_backward) and returns: stft_base