示例#1
0
    def stepFrame(self, framerate, frames_offset):
        """Seeks backwards or forwards the specified amount of frames.

        This clamps the playhead to the project frames.

        Args:
            frames_offsets (int): The number of frames to step. Negative number
                for stepping backwards.
        """
        try:
            position = self.getPosition()
        except PipelineError:
            self.warning(
                "Couldn't get position (you're framestepping too quickly), ignoring this request")
            return

        cur_frame = int(
            round(position * framerate.num / float(Gst.SECOND * framerate.denom), 2))
        new_frame = cur_frame + frames_offset
        new_pos = int(new_frame * Gst.SECOND * framerate.denom / framerate.num) + \
            int((Gst.SECOND * framerate.denom / framerate.num) / 2)
        Loggable.info(self, "From frame %d to %d at %f fps, seek to %s s",
                      cur_frame,
                      new_frame,
                      framerate.num / framerate.denom,
                      new_pos / float(Gst.SECOND))
        self.simple_seek(new_pos)
示例#2
0
文件: pipeline.py 项目: cfoch/pitivi
    def stepFrame(self, framerate, frames_offset):
        """Seeks backwards or forwards the specified amount of frames.

        This clamps the playhead to the project frames.

        Args:
            frames_offsets (int): The number of frames to step. Negative number
                for stepping backwards.
        """
        try:
            position = self.getPosition()
        except PipelineError:
            self.warning(
                "Couldn't get position (you're framestepping too quickly), ignoring this request")
            return

        cur_frame = int(
            round(position * framerate.num / float(Gst.SECOND * framerate.denom), 2))
        new_frame = cur_frame + frames_offset
        new_pos = int(new_frame * Gst.SECOND * framerate.denom / framerate.num) + \
            int((Gst.SECOND * framerate.denom / framerate.num) / 2)
        Loggable.info(self, "From frame %d to %d at %f fps, seek to %s s",
                      cur_frame,
                      new_frame,
                      framerate.num / framerate.denom,
                      new_pos / float(Gst.SECOND))
        self.simple_seek(new_pos)
示例#3
0
 def stepFrame(self, framerate, frames_offset):
     """
     Seek backwards or forwards a certain amount of frames (frames_offset).
     This clamps the playhead to the project frames.
     """
     cur_frame = int(round(self.getPosition() * framerate.num / float(Gst.SECOND * framerate.denom), 2))
     new_frame = cur_frame + frames_offset
     new_pos = long(new_frame * Gst.SECOND * framerate.denom / framerate.num)
     Loggable.info(self, "From frame %d to %d at %f fps, seek to %s s" % (cur_frame,
                 new_frame, framerate.num / framerate.denom,
                 new_pos / float(Gst.SECOND)))
     self.simple_seek(new_pos)
示例#4
0
文件: pipeline.py 项目: jojva/pitivi
 def stepFrame(self, framerate, frames_offset):
     """
     Seek backwards or forwards a certain amount of frames (frames_offset).
     This clamps the playhead to the project frames.
     """
     cur_frame = int(
         round(
             self.getPosition() * framerate.num /
             float(Gst.SECOND * framerate.denom), 2))
     new_frame = cur_frame + frames_offset
     new_pos = long(new_frame * Gst.SECOND * framerate.denom /
                    framerate.num)
     Loggable.info(
         self, "From frame %d to %d at %f fps, seek to %s s" %
         (cur_frame, new_frame, framerate.num / framerate.denom,
          new_pos / float(Gst.SECOND)))
     self.simple_seek(new_pos)
示例#5
0
    def stepFrame(self, framerate, frames_offset):
        """
        Seek backwards or forwards a certain amount of frames (frames_offset).
        This clamps the playhead to the project frames.
        """
        try:
            position = self.getPosition()
        except PipelineError:
            self.warning("Couldn't get position (you're framestepping too quickly), ignoring this request")
            return

        cur_frame = int(round(position * framerate.num / float(Gst.SECOND * framerate.denom), 2))
        new_frame = cur_frame + frames_offset
        new_pos = long(new_frame * Gst.SECOND * framerate.denom / framerate.num)
        Loggable.info(self, "From frame %d to %d at %f fps, seek to %s s" % (cur_frame,
                    new_frame, framerate.num / framerate.denom,
                    new_pos / float(Gst.SECOND)))
        self.simple_seek(new_pos)