code: def ffmpeg_extract_subclip(
      inputfile, start_time, end_time, outputfile=None, logger="bar"
  ):
      """Makes a new video file playing video file between two times.
  
      Parameters
      ----------
  
      inputfile : str
        Path to the file from which the subclip will be extracted.
  
      start_time : float
        Moment of the input clip that marks the start of the produced subclip.
  
      end_time : float
        Moment of the input clip that marks the end of the produced subclip.
  
      outputfile : str, optional
        Path to the output file. Defaults to
        ``<inputfile_name>SUB<start_time>_<end_time><ext>``.
      """
      if not outputfile:
          name, ext = os.path.splitext(inputfile)
          t1, t2 = [int(1000 * t) for t in [start_time, end_time]]
          outputfile = "%sSUB%d_%d%s" % (name, t1, t2, ext)
  
      cmd = [
          FFMPEG_BINARY,
          "-y",
          "-ss",
          "%0.2f" % start_time,
          "-i",
          inputfile,
          "-t",
          "%0.2f" % (end_time - start_time),
          "-map",
          "0",
          "-vcodec",
          "copy",
          "-acodec",
          "copy",
          "-copyts",
          outputfile,
      ]
      subprocess_call(cmd, logger=logger)
  
file_path: moviepy/moviepy/video/io/ffmpeg_tools.py
imports: import os
  from moviepy.config import FFMPEG_BINARY
  from moviepy.decorators import convert_parameter_to_seconds, convert_path_to_string
  from moviepy.tools import subprocess_call
label_desc: Use image node_id 1 for calling a global function with example usage: ffmpeg_extract_subclip(inputfile, start_time, end_time, outputfile, logger) without return types