  
      def set_gif_filename(self, filename):
          """ Set the gif output filename """
          logger.debug("sample filename: '%s'", filename)
          filename = os.path.splitext(filename)[0]
          idx = len(filename)
          for char in list(filename[::-1]):
              if not char.isdigit() and char not in ("_", "-"):
                  break
              idx -= 1
 
</s> remove             retval = sum([fr[1] - fr[0] for fr in self.frame_ranges])
 </s> add             retval = sum([fr[1] - fr[0] + 1 for fr in self.frame_ranges]) </s> remove         out_filename = "{}.{}".format(os.path.splitext(filename)[0], self.config["format"])
 </s> add         filename = os.path.splitext(os.path.basename(filename))[0]
        out_filename = "{}.{}".format(filename, self.config["format"]) </s> remove     def output_filename(self, filename):
        """ Return the output filename with the correct folder and extension """
        out_filename = "{}.{}".format(os.path.splitext(filename)[0], self.config["format"])
        out_filename = os.path.join(self.output_folder, out_filename)
        logger.trace("in filename: '%s', out filename: '%s'", filename, out_filename)
        return out_filename

 </s> add  </s> remove import os
 </s> add 
        filename = os.path.splitext(os.path.basename(filename))[0]
  
      def set_gif_filename(self, filename):
          """ Set the gif output filename """
          logger.debug("sample filename: '%s'", filename)
        filename = os.path.splitext(os.path.basename(filename))[0]
          idx = len(filename)
          for char in list(filename[::-1]):
              if not char.isdigit() and char not in ("_", "-"):
                  break
              idx -= 1
keep keep keep keep replace keep keep keep keep keep
 Bugfixes [convert[: Correct output folder. Correct tqdm for skipped frames. 
plugins/convert/writer/gif.py