code: def mls(root_path, meta_files=None, ignored_speakers=None):
      """http://www.openslr.org/94/"""
      items = []
      with open(
          os.path.join(root_path, meta_files), "r", encoding="utf-8"
      ) as meta:
          for line in meta:
              file, text = line.split("\t")
              text = text[:-1]
              speaker, book, *_ = file.split("_")
              wav_file = os.path.join(
                  root_path,
                  os.path.dirname(meta_files),
                  "audio",
                  speaker,
                  book,
                  file + ".wav",
              )
              # ignore speakers
              if isinstance(ignored_speakers, list):
                  if speaker in ignored_speakers:
                      continue
              items.append(
                  {
                      "text": text,
                      "audio_file": wav_file,
                      "speaker_name": "MLS_" + speaker,
                      "root_path": root_path,
                  }
              )
      return items
  
imports: import os
  import re
  import xml.etree.ElementTree
  from glob import glob
  from pathlib import Path
  from typing import List
  import pandas
  from tqdm import tqdm
label_desc: Use image node_id 22 for calling a global function with example usage: mls(root_path, meta_files, ignored_speakers) and returns: items