code: def process_utterance(
      n_src, aishell1_dir, wham_dir, freq, mode, subdirs, dir_path, row
  ):
      res = []
      # Get sources and mixture infos
      mix_id, gain_list, sources = read_sources(
          row, n_src, aishell1_dir, wham_dir
      )
      # Transform sources
      transformed_sources = transform_sources(
          sources, freq, mode, gain_list
      )
      # Write the sources and get their paths
      abs_source_path_list = write_sources(
          mix_id, transformed_sources, subdirs, dir_path, freq, n_src
      )
      # Write the noise and get its path
      abs_noise_path = write_noise(
          mix_id, transformed_sources, dir_path, freq
      )
      # Mixtures are different depending on the subdir
      for subdir in subdirs:
          if subdir == "mix_clean":
              sources_to_mix = transformed_sources[:n_src]
          elif subdir == "mix_both":
              sources_to_mix = transformed_sources
          elif subdir == "mix_single":
              sources_to_mix = [
                  transformed_sources[0],
                  transformed_sources[-1],
              ]
          else:
              continue
  
          # Mix sources
          mixture = mix(sources_to_mix)
          # Write mixture and get its path
          abs_mix_path = write_mix(
              mix_id, mixture, dir_path, subdir, freq
          )
          length = len(mixture)
          # Compute SNR
          snr_list = compute_snr_list(mixture, sources_to_mix)
          res.append(
              (
                  mix_id,
                  snr_list,
                  abs_mix_path,
                  abs_source_path_list,
                  abs_noise_path,
                  length,
                  subdir,
              )
          )
  
      return res
  
imports: import os
  import argparse
  import soundfile
  import pandas
  import numpy
  import functools
  from scipy.signal import resample_poly
  import tqdm.contrib.concurrent
  import glob
  import shutil
label_desc: Use image node_id 5 for calling a global function with example usage: process_utterance(n_src, aishell1_dir, wham_dir, freq, mode, subdirs, dir_path, row) and returns: res