📅  最后修改于: 2023-12-03 14:45:44.374000             🧑  作者: Mango
Pyglet是一个Python的跨平台多媒体库,专注于处理音频和视频。
在Pyglet中,可以使用pyglet.media
模块来创建和操作媒体资源。当播放资源时,可以监听媒体播放器的事件。其中一种事件是“source驱动事件”,它在播放器当前源之后被触发。
此事件便于在使用连续播放或播放列表时确定下一个要播放的源。
使用pyglet.media.Player可以创建一个播放器实例,使用该实例可以播放不同类型的媒体资源。要捕获源驱动事件,可以使用on_source_end
事件,该事件会在播放器当前源结束时被触发。
要使用on_source_end
事件,需要使用Player
类中的event_source
属性,并调用Player.push_handlers
注册事件处理程序。
import pyglet
player = pyglet.media.Player()
source = pyglet.media.load('music.mp3')
player.queue(source)
def next_source(evt):
# Load next source
pass
player.event_source.on_player_eos = next_source
player.play()
在上面的示例中,创建了一个Pyglet音乐播放器,将'music.mp3'
文件添加到播放队列中,并为播放器的on_player_eos
事件设置了一个名为next_source
的处理程序。在播放器结束播放当前源后,next_source
将被调用来加载下一个源。
Pyglet提供了强大的多媒体处理功能,并允许在播放器中监听各种事件。当需要在播放媒体资源时捕获播放器事件时,可以使用on_source_end
事件来监听播放器当前源结束播放的事件。