code: def load_wav(wav_rxfilename, start=0, end=None):
      """This function reads audio file and return data in numpy.float32 array.
      "lru_cache" holds recently loaded audio so that can be called
      many times on the same audio file.
      OPTIMIZE: controls lru_cache size for random access,
      considering memory size
      """
      if wav_rxfilename.endswith("|"):
          # input piped command
          p = subprocess.Popen(
              wav_rxfilename[:-1],
              shell=True,
              stdout=subprocess.PIPE,
          )
          data, samplerate = sf.read(
              io.BytesIO(p.stdout.read()),
              dtype="float32",
          )
          # cannot seek
          data = data[start:end]
      elif wav_rxfilename == "-":
          # stdin
          data, samplerate = sf.read(sys.stdin, dtype="float32")
          # cannot seek
          data = data[start:end]
      else:
          # normal wav file
          data, samplerate = sf.read(
              wav_rxfilename, start=start, stop=end
          )
      return data, samplerate
  
imports: from __future__ import print_function
  import io
  import os
  import subprocess
  import sys
  from functools import lru_cache
  import numpy
  import soundfile
label_desc: Use image node_id 5 for calling a global function with example usage: load_wav(wav_rxfilename, start, end) and returns: data,  samplerate