              # frame is landed on.
              if self._frame_pts is None:
                  self.get_frame_info()
  
              keyframe_pts, keyframe = self._previous_keyframe_info(index)
              seek_fast = keyframe_pts
              skip_frames = index - keyframe
  
              # We used to have this epsilon earlier, when we did not use
              # the slow seek. I don't think we need it anymore.
              # epsilon = -1 / self._meta["fps"] * 0.1
              iargs += ["-ss", "%.06f" % (seek_fast)]
 
</s> remove             if self._frame_pts is None:
 </s> add             if self.use_patch and self._frame_pts is None: </s> remove             frames_skipped = 0
            while skip_frames != frames_skipped:
                # Skip frames that are not the desired frame
                _ = self._read_gen.__next__()
                frames_skipped += 1
 </s> add             if self.use_patch:
                frames_skipped = 0
                while skip_frames != frames_skipped:
                    # Skip frames that are not the desired frame
                    _ = self._read_gen.__next__()
                    frames_skipped += 1
            if self.use_patch:
                keyframe_pts, keyframe = self._previous_keyframe_info(index)
                seek_fast = keyframe_pts
                skip_frames = index - keyframe
            else:
                starttime = index / self._meta["fps"]
                seek_slow = min(10, starttime)
                seek_fast = starttime - seek_slow
              # frame is landed on.
              if self._frame_pts is None:
                  self.get_frame_info()
  
            if self.use_patch:
                keyframe_pts, keyframe = self._previous_keyframe_info(index)
                seek_fast = keyframe_pts
                skip_frames = index - keyframe
            else:
                starttime = index / self._meta["fps"]
                seek_slow = min(10, starttime)
                seek_fast = starttime - seek_slow
            if self.use_patch:
                keyframe_pts, keyframe = self._previous_keyframe_info(index)
                seek_fast = keyframe_pts
                skip_frames = index - keyframe
            else:
                starttime = index / self._meta["fps"]
                seek_slow = min(10, starttime)
                seek_fast = starttime - seek_slow
            if self.use_patch:
                keyframe_pts, keyframe = self._previous_keyframe_info(index)
                seek_fast = keyframe_pts
                skip_frames = index - keyframe
            else:
                starttime = index / self._meta["fps"]
                seek_slow = min(10, starttime)
                seek_fast = starttime - seek_slow
  
              # We used to have this epsilon earlier, when we did not use
              # the slow seek. I don't think we need it anymore.
              # epsilon = -1 / self._meta["fps"] * 0.1
              iargs += ["-ss", "%.06f" % (seek_fast)]
keep keep keep keep replace replace replace keep keep keep keep keep
 Bugfix - lib.image - Make patched ffmpeg reader optional 
lib/image.py