def __init__(self, filename, screenRect, fullRect, absRect, zoom=(4,4), pos=None, size=None, blend=False, cropRect=None, fps=None, scale=None, allowFrameSkip=True): BaseTileDisplayObject.__init__(self, screenRect=screenRect, fullRect=fullRect, absRect=absRect, zoom=zoom, pos=pos, size=size, blend=blend, cropRect=cropRect) if IsTiledMovieChunkImageBased(filename): print "Using ImageMovieReader" r = ImageMovieReader(quiet = True) else: print "Using PyFfmpegMovieReader" if not PyFfmpegMovieReader: print "PyFfmpegMovieReader is not available, make sure pyffmpeg and pyFfmpegMoviereader are installed before playing a movie." r = PyFfmpegMovieReader(quiet=True) r.setSecondsToPauseBeforeRewind(1.0) if fps != None: r.setFps(fps) r.discoverFps = False self.scale = scale self.movieReader = r #r.setFile("/home/eolson/blah_mpeg1.mpg") self.filename = filename r.setFile(self.filename) r.loadFile() print "Setting movie size:", r.getSize() self.moviePlayer = GLMoviePlayer(origWidth=r.getSize()[0], origHeight=r.getSize()[1], textureScale=scale, dstRectScale=scale) # note textureScale unused since local code replaces moviePlayer's draw function() self.moviePlayer.setAllowFrameSkip(allowFrameSkip) # because we want to # getNextFrame if it's not on current tile's display (for draggable movies) self.size = tuple(r.getSize()) if self.scale != None: self.size = self.size[0] * self.scale[0], self.size[1]* self.scale[1] if pos: # avoid None self.moviePlayer.setPos(pos[0], pos[1]) self.moviePlayer.setPos(0,0) self.setPos(*pos) print "TileMovieOBject.__init__, SETTING pos:", self.getPos() else: print "Pos is:", pos #raise print "WARNING DEBUG setting movie pos to 0,0" self.moviePlayer.setPos(0,0) self.setPos(0,0) self.moviePlayer.setVideoSource(r) print "TileMovieOBject.__init__, pos:", self.getPos() r.start()
if len(sys.argv) > 1: r.setPath(sys.argv[1]) else: r.setPath("/home/eolson/testMovieFrames") memMapped = False if "--preload" in sys.argv: memMapped = True print "Will Preload." r.loadFile(preload=memMapped) # Setup window, etc. #windowWidth = 1000 # 320 #windowHeight = 700 # 280 windowWidth, windowHeight = r.getSize() #maxWindowWidth, maxWindowHeight = 1024, 768 #windowWidth = min(maxWindowWidth, r.getSize()[0]) #windowHeight = min(maxWindowHeight, r.getSize()[1]) app = App(windowWidth, windowHeight) renderer = glRenderer2D() app.setRenderer(renderer) app.initialize() renderer.init(windowWidth, windowHeight) glEnable(GL_TEXTURE_2D) p = GLMoviePlayer(origWidth=r.getSize()[0], origHeight=r.getSize()[1]) p.setPos(0, 0)
def __init__(self, filename, screenRect, fullRect, absRect, zoom=(4, 4), pos=None, size=None, blend=False, cropRect=None, fps=None, scale=None, allowFrameSkip=True): BaseTileDisplayObject.__init__(self, screenRect=screenRect, fullRect=fullRect, absRect=absRect, zoom=zoom, pos=pos, size=size, blend=blend, cropRect=cropRect) if IsTiledMovieChunkImageBased(filename): print "Using ImageMovieReader" r = ImageMovieReader(quiet=True) else: print "Using PyFfmpegMovieReader" if not PyFfmpegMovieReader: print "PyFfmpegMovieReader is not available, make sure pyffmpeg and pyFfmpegMoviereader are installed before playing a movie." r = PyFfmpegMovieReader(quiet=True) r.setSecondsToPauseBeforeRewind(1.0) if fps != None: r.setFps(fps) r.discoverFps = False self.scale = scale self.movieReader = r #r.setFile("/home/eolson/blah_mpeg1.mpg") self.filename = filename r.setFile(self.filename) r.loadFile() print "Setting movie size:", r.getSize() self.moviePlayer = GLMoviePlayer(origWidth=r.getSize()[0], origHeight=r.getSize()[1], textureScale=scale, dstRectScale=scale) # note textureScale unused since local code replaces moviePlayer's draw function() self.moviePlayer.setAllowFrameSkip( allowFrameSkip) # because we want to # getNextFrame if it's not on current tile's display (for draggable movies) self.size = tuple(r.getSize()) if self.scale != None: self.size = self.size[0] * self.scale[0], self.size[ 1] * self.scale[1] if pos: # avoid None self.moviePlayer.setPos(pos[0], pos[1]) self.moviePlayer.setPos(0, 0) self.setPos(*pos) print "TileMovieOBject.__init__, SETTING pos:", self.getPos() else: print "Pos is:", pos #raise print "WARNING DEBUG setting movie pos to 0,0" self.moviePlayer.setPos(0, 0) self.setPos(0, 0) self.moviePlayer.setVideoSource(r) print "TileMovieOBject.__init__, pos:", self.getPos() r.start()