code: def extract_and_cleanup_wav_files(
      tgz_list, wav_dir, splits, remove_compressed_wavs
  ):
      """This function extracts the wav files in the AISHELL-1 dataset.
  
      Arguments
      ---------
      tgz_list: list
          list of paths to the tar.gz files.
      wav_dir: str
          path to the wav directory.
      splits: list
          list of splits.
      remove_compressed_wavs: bool
          If True, remove compressed wav files after extraction.
      """
      if len(tgz_list) > 0:
          logger.info(f"Extracting wav files in {wav_dir}...")
  
          decompress_processor = functools.partial(
              shutil.unpack_archive,
              extract_dir=wav_dir,
          )
  
          for split in splits:
              os.makedirs(os.path.join(wav_dir, split), exist_ok=True)
  
          for _ in parallel_map(
              decompress_processor, tgz_list, chunk_size=64
          ):
              pass
  
          if remove_compressed_wavs:
              for tgz in tgz_list:
                  os.remove(tgz)
  
file_path: speechbrain/recipes/AISHELL-1/Tokenizer/aishell_prepare.py
imports: import os
  import shutil
  import logging
  import glob
  import csv
  from speechbrain.dataio.dataio import read_audio_info
  from speechbrain.utils.parallel import parallel_map
  import functools
label_desc: Use image node_id 1 for calling a global function with example usage: extract_and_cleanup_wav_files(tgz_list, wav_dir, splits, remove_compressed_wavs) without return types