Python播放mp3,python播放在线音乐

  Python播放mp3,python播放在线音乐

  【前言】pygame播放音频文件这部分相对来说比较简单,主要是用到pygame.mixer模块,不过也有一些地方需要注意的,咱们直接先看看案例

  1、案例效果图

  2、案例代码从诱变剂中导入pygame。MP3导入MP3 #标识是否退出循环exitFlag=False#设置画面刷新的帧率,即1s内刷新几次FPS=30#初始化pygamepygame.init()#设置窗口标题py游戏。展示。set _ caption( py游戏音频播放教程)# 设置窗口大小surface=pygame。展示。set _ mode((1000,500),py game .可调整大小)#设置图标骗局=游戏。形象。load( E:\ AS-workspace \ pygamentst \ drawable \ icon。png’).convert _ alpha()py游戏。展示。set _ icon(icon)paused=False #获取游戏时钟时钟=py游戏。时间。clock()music 1 path=r e:\ AS-workspace \ pygamentst \ music \ music _ 1。MP3 music 2 path=r e:\ AS-workspace \ pygamentst \ music \ music _ 2。MP3 #初始化音频模块pygame.mixer.init()#加载音频文件py游戏。搅拌机。音乐。加载(音乐1路径)#排队多个音频,依次播放py游戏。搅拌机。音乐。队列(音乐2路径)#指定播放位置,相对于当前位置,移动多少秒# py游戏。搅拌机。音乐。set _ pos(5)#设置音量,0.0 ~ 1.0 py游戏。搅拌机。音乐。设置音量(0.5)#开始播放pygame.mixer.music.play(0)#加载mp3配置信息音频1=MP3(音乐一路径)#获取MP3文件文件音频文件的长度长度=音频1。信息。长度打印( len=,长度)#图片缩放为指定宽高刻度图标=pygame。转变。scale(图标,(80,80))#获取图片矩形rect=scaleIcon.get_rect()#设置图片矩形的中心点坐标(x,y)矩形中心=(100,290-矩形高度/2)#绘制到屏幕上surface.blit(scaleIcon,rect)#绘制一条线line rect=py游戏。画吧。line(surface,(255,0,0),(100,300),(length * 40 rect.width,300),10)new rect=NonedirtyList=[]while not exit flag:clock。tick(FPS)dirtylist。clear()dirtylist。py游戏中事件的附加(直线矩形)。事件。get():#点击关闭if event.type==pygame .退出:退出标志=真elif事件。type==py游戏.按键:#按下空格键if event.key==pygame .k _ SPACE:如果暂停:如果py游戏。搅拌机。get _ init():paused=False #恢复py游戏。搅拌机。音乐。un pause()else:如果py游戏。搅拌机。get _ init():paused=True #暂停pygame.mixer.music.pause() #按下经济社会委员会键elif event.key==pygame .k _ ESCAPE:如果py游戏。搅拌机。getinit():#设置音频几毫秒之后慢慢消失py游戏。搅拌机。音乐。淡出(500)#按下稀有键elif event.key==pygame .k _ r:如果pygame。搅拌机。getinit():#重新开始播放pygame.mixer.music.play(0) #按下E键elif event.key==pygame .k _ e:如果pygame。搅拌机。getinit():#释放资源退出py游戏。搅拌机。音乐。卸载()py游戏。搅拌机。退出()#擦除脏区域如果是新矩形:填充矩形=表面。填充((0,0,0),new rect)脏列表。如果py游戏,则追加(填充rect)。搅拌机。getinit():#音频退出之后就会提示没初始化# 根据音频播放来移动图片new rect=rect。动(py游戏。搅拌机。音乐。get _ pos()* 40/1000.0,0) dirtyList.append(newRect) #绘制到屏幕surface.blit(scaleIcon,newRect) #更新渲染新的内容到屏幕显示器py游戏。展示。更新(脏列表)如果_ _ name _ _== _ _ main _ _ :传递3,代码详析1)在操作音频文件之前,一定得先初始化音频模块,调用一下代码初始化:pygame.mixer.init()

  2)初始化完成之后,开始加载音频文件进来:py游戏。搅拌机。音乐。加载(音乐1路径)

  3)若是需要加载多个音频文件依次播放,可以加入队列中:pygame。搅拌机。音乐。队列(音乐2路径)

  4)可以指定音频从哪一秒开始播放:pygame.mixer.music.set_pos(2)但是我试了一下没有效果,会抛出异常:pygame.error: set _ pos不支持这个编解码器,有点奇怪,因为pygame的文档里明确写着支持mp3格式音频。

  5)设置音频音量,值为0.0 ~ 1.0:py game . mixer . music . Set _ volume(0.5)。测试发现不能调高音量,只能调低音量,有点鸡肋。

  6)开始播放音频:pygame.mixer.music.play(0),0表示不循环,-1表示无限循环,设置1表示循环一次,即总共播放两次。

  7)导入:从mutagen.mp3导入mp3。这个模块可以用来获取MP3的各种信息,比如MP3音频文件的时长。

  #加载mp3配置信息audio1=MP3(music1Path)#获取MP3音频文件的长度length=audio1.info.length 8)获取音频文件是否已经初始化:pygame.mixer.get_init()。如果调用了pygame.mixer.quit()来停止音频文件,该方法也返回未初始化。

  9)暂停音频:pygame.mixer.music.pause()

  10)恢复音频播放:pygame.mixer.music.unpause()

  1)将音频设置为500ms,然后缓慢停止播放:pygame.mixer.music.fadeout(500)

  12)重启播放:pygame.mixer.music.play()。pygame文档说可以用pygame.mixer.music.rewind()重启音乐,但是尝试一下没有效果。

  13)释放加载的音频文件资源:pygame.mixer.music.unload()

  14)退出音频播放:pygame.mixer.quit()

  文本对齐

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: