class_docstr: *MUSDB_HQ* :cite:`MUSDB18HQ` dataset.
  
  Args:
      root (str or Path): Root directory where the dataset's top level directory is found
      subset (str): Subset of the dataset to use. Options: [``"train"``, ``"test"``].
      sources (List[str] or None, optional): Sources extract data from.
          List can contain the following options: [``"bass"``, ``"drums"``, ``"other"``, ``"mixture"``, ``"vocals"``].
          If ``None``, dataset consists of tracks except mixture.
          (default: ``None``)
      split (str or None, optional): Whether to split training set into train and validation set.
          If ``None``, no splitting occurs. If ``train`` or ``validation``, returns respective set.
          (default: ``None``)
      download (bool, optional): Whether to download the dataset if it is not found at root path.
          (default: ``False``)
code: def _collect_songs(self):
      if self.split == "validation":
          return _VALIDATION_SET
      path = Path(self._path)
      names = []
      for root, folders, _ in os.walk(path, followlinks=True):
          root = Path(root)
          if root.name.startswith(".") or folders or root == path:
              continue
          name = str(root.relative_to(path))
          if self.split and name in _VALIDATION_SET:
              continue
          names.append(name)
      return sorted(names)
  
file_path: audio/src/torchaudio/datasets/musdb_hq.py
imports: import os
  from pathlib import Path
  from typing import List, Optional, Tuple, Union
  import torch
  import torchaudio
  from torch.utils.data import Dataset
  from torchaudio._internal import download_url_to_file
  from torchaudio.datasets.utils import _extract_zip
label_desc: Use image node_id 4 for calling the MUSDB_HQ obj's underlying member method code with example usage: obj._collect_songs() and returns: sorted, _VALIDATION_SET