          self.normalize_method = normalize_method
  
          self._plugin_type = "align"
          self._faces_per_filename = dict()  # Tracking for recompiling face batches
          self._rollover = []  # Items that are rolled over from the previous batch in get_batch
          self._output_faces = []
          logger.debug("Initialized %s", self.__class__.__name__)
  
      # << QUEUE METHODS >>> #
      def get_batch(self, queue):
 
</s> remove         self._rollover = []  # Items that are rolled over from the previous batch in get_batch
 </s> add         self._rollover = None  # Items that are rolled over from the previous batch in get_batch </s> remove     @staticmethod
    def _get_item(queue):
 </s> add     def _get_item(self, queue): </s> remove                          retval["filename"], retval["image"].shape, len(retval["detected_faces"]))
            yield retval
 </s> add                          output.filename, output.image_shape, len(output.detected_faces))
            yield output </s> remove         if self._rollover:
 </s> add         if self._rollover is not None:
        self._rollover = None  # Items that are rolled over from the previous batch in get_batch
          self.normalize_method = normalize_method
  
          self._plugin_type = "align"
          self._faces_per_filename = dict()  # Tracking for recompiling face batches
        self._rollover = None  # Items that are rolled over from the previous batch in get_batch
          self._output_faces = []
          logger.debug("Initialized %s", self.__class__.__name__)
  
      # << QUEUE METHODS >>> #
      def get_batch(self, queue):
keep keep keep keep replace keep keep keep keep keep
 plugins.extract - Create ExtractMedia class for pipeline flow
Bugfix - Fix memory leak in extract 
plugins/extract/align/_base.py