code: def __process_data(data_root, filelists):
      # Create manifests (based on predefined NVIDIA's split)
      for split in tqdm(filelists):
          manifest_target = data_root / f"{split}_manifest.json"
          print(f"Creating manifest for {split}.")
  
          entries = []
          for manifest_src in glob.glob(
              str(data_root / f"*_{split}.json")
          ):
              try:
                  search_res = re.search(
                      ".*\/([0-9]+)_manifest_([a-z]+)_.*.json",
                      manifest_src,
                  )
                  speaker_id = search_res.group(1)
                  audio_quality = search_res.group(2)
              except Exception:
                  print(
                      f"Failed to find speaker id or audio quality for {manifest_src}, check formatting."
                  )
                  continue
  
              with open(manifest_src, "r") as f_in:
                  for input_json_entry in f_in:
                      data = json.loads(input_json_entry)
  
                      # Make sure corresponding wavfile exists
                      wav_path = data_root / data["audio_filepath"]
                      assert (
                          wav_path.exists()
                      ), f"{wav_path} does not exist!"
  
                      entry = {
                          "audio_filepath": data["audio_filepath"],
                          "duration": data["duration"],
                          "text": data["text"],
                          "normalized_text": data["text_normalized"],
                          "speaker": int(speaker_id),
                          # Audio_quality is either clean or other.
                          # The clean set includes recordings with high sound-to-noise ratio and wide bandwidth.
                          # The books with noticeable noise or narrow bandwidth are included in the other subset.
                          # Note: some speaker_id's have both clean and other audio quality.
                          "audio_quality": audio_quality,
                      }
                      entries.append(entry)
  
          with open(manifest_target, "w") as f_out:
              for m in entries:
                  f_out.write(json.dumps(m) + "\n")
  
file_path: NeMo/scripts/dataset_processing/tts/hifitts/get_data.py
imports: import argparse
  import glob
  import json
  import re
  import tarfile
  import urllib.request
  from pathlib import Path
  from tqdm import tqdm
label_desc: Use image node_id 4 for calling a global function with example usage: __process_data(data_root, filelists) without return types