Ejemplo n.º 1
0
 def __init__(self, path):
     self.path = path
     arc_path, res_path = parsePath(path)
     core.logdebug("RW", arc_path, res_path)
     if arc_path:
         self.data = getArchiveData(arc_path, res_path)
         self.obj = SDL_RWFromConstMem(self.data, len(self.data))
     else:
         self.data = None
         self.obj = SDL_RWFromFile(res_path, "rb")
     if not self.obj:
         core.raisesdlerr()
Ejemplo n.º 2
0
	def play(self, loop=False, index=0):
		if self.playing:
			core.logdebug("animation play canceled: playing")
			return
		index = int(index)
		if index < 0 or index >= self.length:
			raise IndexError("index %s not in [0..length], %s"%(index, widget))
		self.index = index
		self.loop = bool(loop)
		self.playing = True
		self._needDraw = True
		self.lastTime = time.time()
Ejemplo n.º 3
0
Archivo: rw.py Proyecto: pyzzz/zzpysdl
	def __init__(self, path):
		self.path = path
		arc_path, res_path = parsePath(path)
		core.logdebug("RW", arc_path, res_path)
		if arc_path:
			self.data = getArchiveData(arc_path, res_path)
			self.obj = SDL_RWFromConstMem(self.data, len(self.data))
		else:
			self.data = None
			self.obj = SDL_RWFromFile(res_path, "rb")
		if not self.obj:
			core.raisesdlerr()
Ejemplo n.º 4
0
 def play(self, loop=False, index=0):
     if self.playing:
         core.logdebug("animation play canceled: playing")
         return
     index = int(index)
     if index < 0 or index >= self.length:
         raise IndexError("index %s not in [0..length], %s" %
                          (index, widget))
     self.index = index
     self.loop = bool(loop)
     self.playing = True
     self._needDraw = True
     self.lastTime = time.time()
Ejemplo n.º 5
0
def play(path, volume=100):
    #why not split load and play: smpeg need keep audio device open by itself ...
    global info, mpeg, mpeg_rw
    if playing():
        core.logdebug("movie play canceled: movie playing")
        return
    music.closeAudio()
    #stop()
    info = SMPEG_Info()
    try:
        mpeg_rw = rw.RW(path)
    except core.SDLException, e:
        core.logdebug("movie load error:", e)
        stop()
        return
Ejemplo n.º 6
0
def play(path, volume=100):
    # why not split load and play: smpeg need keep audio device open by itself ...
    global info, mpeg, mpeg_rw
    if playing():
        core.logdebug("movie play canceled: movie playing")
        return
    music.closeAudio()
    # stop()
    info = SMPEG_Info()
    try:
        mpeg_rw = rw.RW(path)
    except core.SDLException, e:
        core.logdebug("movie load error:", e)
        stop()
        return
Ejemplo n.º 7
0
 def play(self, loop):
     """loop -1: infinite, 0: once"""
     if not self.music:
         core.logdebug("play canceled: not self.music", self)
         return
     if self.playing():
         core.logdebug("play canceled: playing", self)
         return
     if movie.playing():
         core.logdebug("play canceled: movie playing", self)
         return
     openAudio()
     if Mix_PlayMusic(self.music.data, loop) < 0:
         core.logsdlerr(self)
         return
Ejemplo n.º 8
0
 def play(self, loop):
     """loop -1: infinite, 0: once"""
     if not self.chunk:  #may be None or NULL pointer
         core.logdebug("play canceled: not self.chunk", self)
         return
     if self.playing():
         core.logdebug("play canceled: playing", self)
         return
     if movie.playing():
         core.logdebug("play canceled: movie playing", self)
         return
     openAudio()
     if Mix_PlayChannel(self.channel, self.chunk.data, loop) < 0:
         core.logsdlerr(self)
         return
Ejemplo n.º 9
0
 def play(self, loop):
     """loop -1: infinite, 0: once"""
     if not self.music:
         core.logdebug("play canceled: not self.music", self)
         return
     if self.playing():
         core.logdebug("play canceled: playing", self)
         return
     if movie.playing():
         core.logdebug("play canceled: movie playing", self)
         return
     openAudio()
     if Mix_PlayMusic(self.music.data, loop) < 0:
         core.logsdlerr(self)
         return
Ejemplo n.º 10
0
 def play(self, loop):
     """loop -1: infinite, 0: once"""
     if not self.chunk:  # may be None or NULL pointer
         core.logdebug("play canceled: not self.chunk", self)
         return
     if self.playing():
         core.logdebug("play canceled: playing", self)
         return
     if movie.playing():
         core.logdebug("play canceled: movie playing", self)
         return
     openAudio()
     if Mix_PlayChannel(self.channel, self.chunk.data, loop) < 0:
         core.logsdlerr(self)
         return
Ejemplo n.º 11
0
    def __del__(self):
        """replace Widget.__del__
		won't call SDL_FreeSurface
		master reference count -= 1
		"""
        core.logdebug("del widget without SDL_FreeSurface", self)
Ejemplo n.º 12
0
	def __del__(self):
		"""replace Widget.__del__
		won't call SDL_FreeSurface
		master reference count -= 1
		"""
		core.logdebug("del widget without SDL_FreeSurface", self)
Ejemplo n.º 13
0
	def __del__(self):
		core.logdebug("del widget", self)
		SDL_FreeSurface(self.surface)
Ejemplo n.º 14
0
Archivo: rw.py Proyecto: pyzzz/zzpysdl
	def __del__(self):
		core.logdebug("del rw", self)
		#corrupted double-linked list if set freesrc to 1 in loadXXX_RW
		#SDL_FreeRW(self.obj)
Ejemplo n.º 15
0
 def __del__(self):
     core.logdebug("del chunk", self)
     Mix_FreeChunk(self.data)
Ejemplo n.º 16
0
 def __del__(self):
     core.logdebug("del music", self)
     Mix_FreeMusic(self.data)
Ejemplo n.º 17
0
 def __del__(self):
     core.logdebug("del music", self)
     Mix_FreeMusic(self.data)
Ejemplo n.º 18
0
 def __del__(self):
     core.logdebug("del chunk", self)
     Mix_FreeChunk(self.data)
Ejemplo n.º 19
0
 def __del__(self):
     core.logdebug("del rw", self)
     #corrupted double-linked list if set freesrc to 1 in loadXXX_RW
     #SDL_FreeRW(self.obj)
Ejemplo n.º 20
0
    # why not split load and play: smpeg need keep audio device open by itself ...
    global info, mpeg, mpeg_rw
    if playing():
        core.logdebug("movie play canceled: movie playing")
        return
    music.closeAudio()
    # stop()
    info = SMPEG_Info()
    try:
        mpeg_rw = rw.RW(path)
    except core.SDLException, e:
        core.logdebug("movie load error:", e)
        stop()
        return
    mpeg = SMPEG_new_rwops(mpeg_rw.obj, byref(info), 1)
    error = SMPEG_error(mpeg)
    if error:
        core.logdebug("movie play error:", error)
        stop()
        return
    SMPEG_enableaudio(mpeg, 1)
    SMPEG_enablevideo(mpeg, 1)
    SMPEG_setvolume(mpeg, volume)
    SMPEG_setdisplay(mpeg, core.screen, None, SMPEG_DisplayCallback())
    SMPEG_move(mpeg, 0, 0)
    SMPEG_scaleXY(mpeg, core.screen.contents.w, core.screen.contents.h)
    SMPEG_play(mpeg)
    # event queue will broken if stop before play start
    time.sleep(playDelay)
    core.clearEvent()
Ejemplo n.º 21
0
    #why not split load and play: smpeg need keep audio device open by itself ...
    global info, mpeg, mpeg_rw
    if playing():
        core.logdebug("movie play canceled: movie playing")
        return
    music.closeAudio()
    #stop()
    info = SMPEG_Info()
    try:
        mpeg_rw = rw.RW(path)
    except core.SDLException, e:
        core.logdebug("movie load error:", e)
        stop()
        return
    mpeg = SMPEG_new_rwops(mpeg_rw.obj, byref(info), 1)
    error = SMPEG_error(mpeg)
    if error:
        core.logdebug("movie play error:", error)
        stop()
        return
    SMPEG_enableaudio(mpeg, 1)
    SMPEG_enablevideo(mpeg, 1)
    SMPEG_setvolume(mpeg, volume)
    SMPEG_setdisplay(mpeg, core.screen, None, SMPEG_DisplayCallback())
    SMPEG_move(mpeg, 0, 0)
    SMPEG_scaleXY(mpeg, core.screen.contents.w, core.screen.contents.h)
    SMPEG_play(mpeg)
    #event queue will broken if stop before play start
    time.sleep(playDelay)
    core.clearEvent()