python的mp3play庫試用


沒有見過比這個更小型的庫了,下面程序實現的功能:播放音樂,按空格鍵實現暫停和播放的切換。

#coding=utf-8
import mp3play
import pythoncom, pyHook

input = 0
pauseFlag=1
def onKeyboardEvent(event):
    global input,pauseFlag
    input = chr(event.Ascii)
    if input==' ':
        pauseFlag=-pauseFlag
    if pauseFlag<0:
        mp3.pause()
    if pauseFlag>0:
        mp3.unpause()
    # print "MessageName:", event.MessageName
    # print "Message:", event.Message
    # print "Time:", event.Time
    # print "Window:", event.Window
    # print "WindowName:", event.WindowName
    print "Ascii:", event.Ascii, chr(event.Ascii)
    # print "Key:", event.Key
    # print "KeyID:", event.KeyID
    # print "ScanCode:", event.ScanCode
    # print "Extended:", event.Extended
    # print "Injected:", event.Injected
    # print "Alt", event.Alt
    # print "Transition", event.Transition
    # print "---"
    return True

filename = 'test.mp3'
mp3 = mp3play.load(filename)
mp3.play()
print mp3.seconds()
monitor = pyHook.HookManager()
monitor.KeyDown = onKeyboardEvent
monitor.HookKeyboard()
pythoncom.PumpMessages()

需要引用的庫:pyWin32和pyHook,在sourceforge上下載。

pyHook的使用范例:python監聽鍵盤和鼠標

pythoncom.PumpMessages()比較有意思,就是讓線程死在這里,一直等待鍵盤或鼠標行為,如果debug的話會發現程序運行到這句話的時候debugger就掛掉了。所以如果需要對監聽的結果執行一些行為,就需要寫在觸發事件函數里,不然無法響應。

mp3play提供的幾個函數極其簡單,不過也夠用了,就這么幾個:

有如下功能:

1.返回歌曲的長度(時間)

2.判斷歌曲是否在播放,是否被暫停

3.暫停以及繼續(unpause)

4.音量

5.停止,停止和暫停的區別就是停止了就不能繼續了

 

注:這個庫只能在windows下面用。 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM