def in_the_middle(video): # Create a single-frame frame range in the middle of the video video_range = (video, 10, 5) frame_range = mosher.FrameRange(*video_range) expected = Expected(*video_range) return (frame_range, indices, expected)
def at_the_beginning(video): # Create a range of 5 frames at the beginning of the video video_range = (video, 0, 5) frame_range = mosher.FrameRange(*video_range) expected = Expected(*video_range) return (frame_range, indices, expected)
def I(self): """Get the I-frame as a FrameRange The range is 1 frame long, so only index 0 works (and its equivalents). """ if self._iframe is None: self._iframe = mosher.FrameRange(self, 0, 1) return self._iframe
def P(self): """Get P-frames as a FrameRange P-frames are indexed from 0. P[0] is the second frame of the video. """ if self._pframe is None: self._pframe = mosher.FrameRange(self, 1, self.frame_count - 1) return self._pframe