code: def info(
      uri: Union[BinaryIO, str, os.PathLike],
      format: Optional[str],
      buffer_size: int = 4096,
  ) -> AudioMetaData:
      if hasattr(uri, "read"):
          raise ValueError(
              "SoX backend does not support reading from file-like objects. ",
              "Please use an alternative backend that does support reading from file-like objects, e.g. FFmpeg.",
          )
      else:
          sinfo = sox_ext.get_info(uri, format)
          if sinfo:
              return AudioMetaData(*sinfo)
          else:
              raise RuntimeError(f"Failed to fetch metadata for {uri}.")
  
file_path: audio/src/torchaudio/_backend/sox.py
imports: import os
  from typing import BinaryIO, Optional, Tuple, Union
  import torch
  import torchaudio
  from .backend import Backend
  from .common import AudioMetaData
label_desc: Use image node_id 1 for calling the SoXBackend obj's underlying member method code with example usage: obj.info(uri, format, buffer_size) and returns: AudioMetaData