class_docstr: Slice a Signal into frames.
  
  Parameters
  ----------
  frame_size : int, optional
      Size of one frame [samples].
  hop_size : float, optional
      Progress `hop_size` samples between adjacent frames.
  fps : float, optional
      Use given frames per second; if set, this computes and overwrites the
      given `hop_size` value.
  origin : int, optional
      Location of the window relative to the reference sample of a frame.
  end : int or str, optional
      End of signal handling (see :class:`FramedSignal`).
  num_frames : int, optional
      Number of frames to return.
  
  Notes
  -----
  When operating on live audio signals, `origin` must be set to 'stream' in
  order to retrieve always the last `frame_size` samples.
  
  Examples
  --------
  Processor for chopping a :class:`Signal` (or anything a :class:`Signal` can
  be instantiated from) into overlapping frames of size 2048, and a frame
  rate of 100 frames per second:
  
  >>> proc = FramedSignalProcessor(frame_size=2048, fps=100)
  >>> frames = proc('tests/data/audio/sample.wav')
  >>> frames  # doctest: +ELLIPSIS
  <madmom.audio.signal.FramedSignal object at 0x...>
  >>> frames[0]
  Signal([    0,     0, ..., -4666, -4589], dtype=int16)
  >>> frames[10]
  Signal([-6156, -5645, ...,  -253,   671], dtype=int16)
  >>> frames.hop_size
  441.0
class_docstr_tok: ["Slice","a","Signal","into","frames",".","Parameters","--","--","--","--","--","frame_size",":","int",",","optional","Size","of","one","frame","[","samples","]",".","hop_size",":","float",",","optional","Progress","`","hop_size","`","samples","between","adjacent","frames",".","fps",":","float",",","optional","Use","given","frames","per","second",";","if","set",",","this","computes","and","overwrites","the","given","`","hop_size","`","value",".","origin",":","int",",","optional","Location","of","the","window","relative","to","the","reference","sample","of","a","frame",".","end",":","int","or","str",",","optional","End","of","signal","handling","(","see",":","class",":","`","FramedSignal","`",")",".","num_frames",":","int",",","optional","Number","of","frames","to","return",".","Notes","--","--","-","When","operating","on","live","audio","signals",",","`","origin","`","must","be","set","to","'stream","'","in","order","to","retrieve","always","the","last","`","frame_size","`","samples",".","Examples","--","--","--","--","Processor","for","chopping","a",":","class",":","`","Signal","`","(","or","anything","a",":","class",":","`","Signal","`","can","be","instantiated","from",")","into","overlapping","frames","of","size","2048",",","and","a","frame","rate","of","100","frames","per","second",":",">",">",">","proc","=","FramedSignalProcessor","(","frame_size=2048",",","fps=100",")",">",">",">","frames","=","proc","(","'tests\/data\/audio\/sample.wav","'",")",">",">",">","frames","#","doctest",":","+ELLIPSIS","<","madmom.audio.signal.FramedSignal","object","at","0x","...",">",">",">",">","frames","[","0","]","Signal","(","[","0",",","0",",","...",",","-4666",",","-4589","]",",","dtype=int16",")",">",">",">","frames","[","10","]","Signal","(","[","-6156",",","-5645",",","...",",","-253",",","671","]",",","dtype=int16",")",">",">",">","frames.hop_size","441.0"]
code: def __init__(
      self,
      frame_size=FRAME_SIZE,
      hop_size=HOP_SIZE,
      fps=FPS,
      origin=ORIGIN,
      end=END_OF_SIGNAL,
      num_frames=NUM_FRAMES,
      **kwargs,
  ):
      # pylint: disable=unused-argument
      self.frame_size = frame_size
      self.hop_size = hop_size
      self.fps = fps  # do not convert here, pass it to FramedSignal
      self.origin = origin
      self.end = end
      self.num_frames = num_frames
  
imports: from __future__ import absolute_import, division, print_function
  import warnings
  import numpy
  from ..processors import BufferProcessor, Processor
  from ..utils import integer_types
label_desc: Use image node_id 1 to create a new FramedSignalProcessor object from inherited base classes: Processor with example: obj = FramedSignalProcessor(frame_size, hop_size, fps, origin, end, num_frames)