En este artículo, veremos cómo podemos activar el evento de agotamiento de la fuente actual del reproductor del módulo PYGLET en python. Pyglet es una biblioteca fácil de usar pero poderosa para desarrollar aplicaciones GUI visualmente ricas como juegos, multimedia, etc. Una ventana es un objeto «pesado» que ocupa los recursos del sistema operativo. Las ventanas pueden aparecer como regiones flotantes o pueden configurarse para llenar una pantalla completa (pantalla completa). Este módulo permite que las aplicaciones especifiquen una ruta de búsqueda de recursos. Pyglet puede reproducir archivos WAV y, si está instalado FFmpeg, muchos otros formatos de audio y video. La reproducción está a cargo de la clase Player, que lee los datos sin procesar de los objetos de origen y proporciona métodos para pausar, buscar, ajustar el volumen, etc. Este evento se activa cuando la fuente actual se quedó sin datos. El comportamiento predeterminado es avanzar a la siguiente fuente en la lista de reproducción si el atributo de bucle se establece en False. Si el atributo de bucle se establece en Verdadero, la fuente actual comenzará a reproducirse nuevamente hasta que se llame a next_source() o el bucle se configure en Falso.
Podemos crear una ventana y un objeto reproductor con la ayuda de los comandos que se indican a continuación.
# creating a window window = pyglet.window.Window(width, height, title) # creating a player for media player = pyglet.media.Player()
A continuación se muestra la sintaxis del evento.
# end of source event @window.event def on_eos(): # printing some message print("Current Source ended")
A continuación se muestra la implementación.
# importing pyglet module import pyglet # width of window width = 800 # height of window height = 500 # caption i.e title of the window title = "Geeksforgeeks" # creating a window window = pyglet.window.Window(width, height, title) # creating a media player object player = pyglet.media.Player() # loading a new media media = pyglet.media.load("media.mp4") # video path vidPath ="gfg.mp4" # add this media in the queue player.queue(media) # creating a source object source = pyglet.media.StreamingSource() # load the media from the source MediaLoad = pyglet.media.load(vidPath) # add this media in the queue player.queue(MediaLoad) # play the video player.play() # on draw event @window.event def on_draw(): # clea the window window.clear() # if player source exist # and video format exist if player.source and player.source.video_format: # get the texture of video and # make surface to display on the screen player.get_texture().blit(0, 0) # key press event @window.event def on_key_press(symbol, modifier): # key "p" get press if symbol == pyglet.window.key.P: # pause the video player.pause() # printing message print("Video is paused") # key "r" get press if symbol == pyglet.window.key.R: # resume the video player.play() # printing message print("Video is resumed") # end of source event @window.event def on_eos(): # printing some message print("Current Source ended") # run the pyglet application pyglet.app.run()
Producción :
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA