pygame之music模块

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Lingdongtianxia/article/details/81611775

                               pygame.mixer.music音频相关的pygame模块

pygame.mixer.music.load—加载一个用于播放的音乐文件
pygame.mixer.music.play—开始播放音乐流
pygame.mixer.music.rewind—重新启动音乐
pygame.mixer.music.stop—停止播放音乐
pygame.mixer.music.pause—暂停音乐播放
pygame.mixer.music.unpause—恢复暂停的音乐
pygame.mixer.music.fadeout—在淡出后停止播放音乐
pygame.mixer.music.set_volume—设置音量
pygame.mixer.music.get_volume—获取音乐音量
pygame.mixer.music.get_busy—检查音乐流是否在播放
pygame.mixer.music.set_pos—设置的位置
pygame.mixer.music.get_pos—获得音乐播放时间
pygame.mixer.music.queue—队列一个音乐文件以跟随当前
pygame.mixer.music.set_endevent—当播放停止时,音乐会发送一个事件
pygame.mixer.music.get_endevent—当播放停止时,获取一个通道发送的事件

music是pygame中控制流音频的pygame模块,音乐模块与pygame.mixer紧密相连,用于加载和播放声音的pygame.mixer模块,使用音乐模块控制在混音器中播放音乐。音乐播放和常规的声音回放之间的区别在于,音乐是流媒体播放的,而且从来没有真正加载过。混音器系统只支持一次单一的音乐流。请注意,MP3支持是有限的。在某些系统上,不支持的格式可能会破坏程序,例如Debian Linux。考虑使用OGG。

pygame.mixer.music.load() 加载一个播放音乐的文件

load(filename) -> None

load(object) -> None

这将加载一个音乐文件名/文件对象并准备播放。如果一个音乐流已经播放,它就会被停止。这并不是音乐的开始。

pygame.mixer.music.play() 开始播放音乐流

play(loops=0, start=0.0) -> None

这将播放载入的音乐流。如果音乐已经播放,它就会重新启动。

循环参数控制音乐播放的次数。播放(5)将使音乐播放一次,然后重复5次,总共是6次。如果循环是-1,那么音乐就会无限重复。

起始位置的参数控制着歌曲开始播放的地方。起始位置取决于音乐演奏的格式。MP3和OGG以时间为单位(以秒为单位)。MOD音乐是模式的序号。如果不能设置起始位置,通过一个startpos将会抛出一个NotImplementedError。

pygame.mixer.music.rewind() 重新启动音乐

rewind() -> None

将当前音乐的播放重新设置为一开始

pygame.mixer.music.stop() 停止音乐播放

stop() -> None

如果当前播放音乐,停止播放音乐。

pygame.mixer.music.pause() 暂时停止音乐播放

pause() -> None

暂时停止播放音乐流。它可以pygame.mixer.music.unpause()函数恢复。

pygame.mixer.music.unpause() 恢复暂停音乐

unpause() -> None

这将在暂停之后重新播放音乐流。

pygame.mixer.music.fadeout() 在淡出后停止播放音乐

fadeout(time) -> None

这将在指定的时间(以毫秒为单位)消失后停止播放音乐。请注意,此函数将阻塞,直到音乐淡出。

pygame.mixer.music.set_volume() 调节音乐音量

set_volume(value) -> None

设置音乐播放的音量。值参数在0.0和1.0之间。当加载新音乐时,音量就会重置。

pygame.mixer.music.get_volume() 得到音乐音量

get_volume() -> value

返回混合器的当前音量。值将在0.0和1.0之间。

pygame.mixer.music.get_busy() 检查音乐流是否在播放

get_busy() -> bool

当音乐流在积极播放时,就会返回True。当音乐空闲时,返回False

pygame.mixer.music.set_pos() 设定播放位置(在pygame 1.9.2中更新)

set_pos(pos) -> None

这将在播放播放的音乐文件中设置位置。“pos”的含义,一个浮点数(或一个可以转换为浮点数的数字),取决于音乐的格式。对于MOD文件,它是模块中的整数模式号。从声音的开始,在几秒钟内,就会得到绝对的位置。对于MP3文件,它是相对位置,在几秒内,从当前位置。对于MP3文件中的绝对定位,首先调用rewind()。其他文件格式是不支持的。更新版本的sdl混音版本比以前更有定位支持。如果某个特定格式不支持定位,则会提高一个SDLError。这将在播放播放的音乐文件中设置位置。“pos”的含义,一个浮点数(或一个可以转换为浮点数的数字),取决于音乐的格式。对于MOD文件,它是模块中的整数模式号。从声音的开始,在几秒钟内,就会得到绝对的位置。对于MP3文件,它是相对位置,在几秒内,从当前位置。对于MP3文件中的绝对定位,首先调用后退()。其他文件格式是不支持的。更新版本的sdl混音版本比以前更有定位支持。如果某个特定格式不支持定位,则会提高一个SDLError。

pygame.mixer.music.get_pos() 获得音乐播放时间

get_pos() -> time

这就得到了音乐一直在播放的毫秒数。返回的时间只代表了音乐播放的时间;它没有考虑任何起始位置偏移量。

pygame.mixer.music.queue() 按当前的格式排队一个音乐文件下一首播放

queue(filename) -> None

这将加载一个音乐文件并对其进行排队。当当前的音乐自然结束时,一个排队的音乐文件就会开始。如果当前的音乐停止或改变,排队的歌就会消失。

下面的例子将演奏巴赫的音乐六次,然后演奏莫扎特的音乐:

pygame.mixer.music.load('bach.ogg')

pygame.mixer.music.play(5)

pygame.mixer.music.queue('mozart.ogg')

pygame.mixer.music.set_endevent() 当播放停止时,音乐会发送一个事件

set_endevent() -> None

set_endevent(type) -> None

这使得pygame在播放音乐时发出信号(通过事件队列的方式)。参数确定将要排队的事件的类型。

每次音乐结束时,这个事件都会被排队,而不仅仅是第一次。为了防止事件被排队,请调用这个方法,没有参数。

pygame.mixer.music.get_endevent() 当播放停止时,获取一个通道发送的事件

get_endevent() -> type

返回每次音乐结束播放时发送的事件类型。如果没有endevent,函数将返回pygame.NOEVENT

猜你喜欢

转载自blog.csdn.net/Lingdongtianxia/article/details/81611775